summaryrefslogtreecommitdiff
path: root/js/Electrical
diff options
context:
space:
mode:
authorSunil Shetye2018-06-15 00:48:55 +0530
committerSunil Shetye2018-06-15 16:22:12 +0530
commitbe9f32c23ef04b74ad1b07a09f0663015dc98993 (patch)
treea8d8b3ad7a01e93d72a791d59e78e09443bef5ae /js/Electrical
parent637774bd20563d502442fca84ee862b560b7b6dd (diff)
downloadsci2js-be9f32c23ef04b74ad1b07a09f0663015dc98993.tar.gz
sci2js-be9f32c23ef04b74ad1b07a09f0663015dc98993.tar.bz2
sci2js-be9f32c23ef04b74ad1b07a09f0663015dc98993.zip
identify the job blocks
Diffstat (limited to 'js/Electrical')
-rw-r--r--js/Electrical/CCS.js543
-rw-r--r--js/Electrical/CVS.js542
-rw-r--r--js/Electrical/Capacitor.js384
-rw-r--r--js/Electrical/ConstantVoltage.js366
-rw-r--r--js/Electrical/CurrentSensor.js231
-rw-r--r--js/Electrical/Diode.js459
-rw-r--r--js/Electrical/Ground.js220
-rw-r--r--js/Electrical/Gyrator.js664
-rw-r--r--js/Electrical/IdealTransformer.js648
-rw-r--r--js/Electrical/Inductor.js329
-rw-r--r--js/Electrical/MOTOR.js195
-rw-r--r--js/Electrical/NMOS.js590
-rw-r--r--js/Electrical/NPN.js842
-rw-r--r--js/Electrical/OpAmp.js417
-rw-r--r--js/Electrical/PMOS.js590
-rw-r--r--js/Electrical/PNP.js844
-rw-r--r--js/Electrical/PotentialSensor.js234
-rw-r--r--js/Electrical/Resistor.js390
-rw-r--r--js/Electrical/SineVoltage.js491
-rw-r--r--js/Electrical/Switch.js422
-rw-r--r--js/Electrical/VVsourceAC.js396
-rw-r--r--js/Electrical/VariableResistor.js255
-rw-r--r--js/Electrical/VoltageSensor.js231
-rw-r--r--js/Electrical/VsourceAC.js412
24 files changed, 925 insertions, 9770 deletions
diff --git a/js/Electrical/CCS.js b/js/Electrical/CCS.js
index 7f718736..f96289bf 100644
--- a/js/Electrical/CCS.js
+++ b/js/Electrical/CCS.js
@@ -1,481 +1,62 @@
-LexToken(EOL,'\n',1,10)
-LexToken(EOL,'\n',1,13)
-LexToken(EOL,'\n',1,73)
-LexToken(EOL,'\n',1,76)
-LexToken(EOL,'\n',1,148)
-LexToken(EOL,'\n',1,220)
-LexToken(EOL,'\n',1,289)
-LexToken(EOL,'\n',1,328)
-LexToken(EOL,'\n',1,331)
-LexToken(EOL,'\n',1,398)
-LexToken(EOL,'\n',1,464)
-LexToken(EOL,'\n',1,529)
-LexToken(EOL,'\n',1,577)
-LexToken(EOL,'\n',1,580)
-LexToken(EOL,'\n',1,649)
-LexToken(EOL,'\n',1,712)
-LexToken(EOL,'\n',1,794)
-LexToken(EOL,'\n',1,797)
-LexToken(EOL,'\n',1,828)
-LexToken(EOL,'\n',1,831)
-LexToken(EOL,'\n',1,832)
-LexToken(FUNCTION,'function',1,833)
-LexToken(OPENSQBRACKET,'[',1,842)
-LexToken(VAR,'x',1,843)
-LexToken(COMMA,',',1,844)
-LexToken(VAR,'y',1,845)
-LexToken(COMMA,',',1,846)
-LexToken(VAR,'typ',1,847)
-LexToken(CLOSESQBRACKET,']',1,850)
-LexToken(ASSIGNMENT,'=',1,851)
-LexToken(VAR,'CCS',1,852)
-LexToken(OPENBRACKET,'(',1,855)
-LexToken(VAR,'job',1,856)
-LexToken(COMMA,',',1,859)
-LexToken(VAR,'arg1',1,860)
-LexToken(COMMA,',',1,864)
-LexToken(VAR,'arg2',1,865)
-LexToken(CLOSEBRACKET,')',1,869)
-LexToken(EOL,'\n',1,870)
-LexToken(EOL,'\n',1,947)
-LexToken(EOL,'\n',1,998)
-LexToken(VAR,'x',1,1003)
-LexToken(ASSIGNMENT,'=',1,1004)
-LexToken(OPENSQBRACKET,'[',1,1005)
-LexToken(CLOSESQBRACKET,']',1,1006)
-LexToken(EOL,'\n',1,1007)
-LexToken(VAR,'y',1,1013)
-LexToken(ASSIGNMENT,'=',1,1014)
-LexToken(OPENSQBRACKET,'[',1,1015)
-LexToken(CLOSESQBRACKET,']',1,1016)
-LexToken(EOL,'\n',1,1017)
-LexToken(VAR,'typ',1,1023)
-LexToken(ASSIGNMENT,'=',1,1026)
-LexToken(OPENSQBRACKET,'[',1,1027)
-LexToken(CLOSESQBRACKET,']',1,1028)
-LexToken(EOL,'\n',1,1029)
-LexToken(SELECT,'select',1,1035)
-LexToken(VAR,'job',1,1042)
-LexToken(EOL,'\n',1,1045)
-LexToken(CASE,'case',1,1050)
-LexToken(DQSTRING,'"set"',1,1059)
-LexToken(THEN,'then',1,1061)
-LexToken(EOL,'\n',1,1065)
-LexToken(VAR,'x',1,1074)
-LexToken(ASSIGNMENT,'=',1,1075)
-LexToken(VAR,'arg1',1,1076)
-LexToken(EOL,'\n',1,1080)
-LexToken(VAR,'graphics',1,1090)
-LexToken(ASSIGNMENT,'=',1,1098)
-LexToken(VAR,'arg1',1,1099)
-LexToken(DOT,'.',1,1103)
-LexToken(VAR,'graphics',1,1104)
-LexToken(EOL,'\n',1,1112)
-LexToken(VAR,'exprs',1,1122)
-LexToken(ASSIGNMENT,'=',1,1127)
-LexToken(VAR,'graphics',1,1128)
-LexToken(DOT,'.',1,1136)
-LexToken(VAR,'exprs',1,1137)
-LexToken(EOL,'\n',1,1142)
-LexToken(VAR,'model',1,1151)
-LexToken(ASSIGNMENT,'=',1,1156)
-LexToken(VAR,'arg1',1,1157)
-LexToken(DOT,'.',1,1161)
-LexToken(VAR,'model',1,1162)
-LexToken(EOL,'\n',1,1167)
-LexToken(VAR,'x',1,1177)
-LexToken(ASSIGNMENT,'=',1,1178)
-LexToken(VAR,'arg1',1,1179)
-LexToken(EOL,'\n',1,1183)
-LexToken(CASE,'case',1,1188)
-LexToken(DQSTRING,'"define"',1,1200)
-LexToken(THEN,'then',1,1202)
-LexToken(EOL,'\n',1,1206)
-LexToken(VAR,'ModelName',1,1215)
-LexToken(ASSIGNMENT,'=',1,1224)
-LexToken(DQSTRING,'"CCS"',1,1229)
-LexToken(EOL,'\n',1,1230)
-LexToken(VAR,'PrametersValue',1,1239)
-LexToken(ASSIGNMENT,'=',1,1253)
-LexToken(OPENSQBRACKET,'[',1,1254)
-LexToken(CLOSESQBRACKET,']',1,1255)
-LexToken(EOL,'\n',1,1256)
-LexToken(VAR,'ParametersName',1,1265)
-LexToken(ASSIGNMENT,'=',1,1279)
-LexToken(OPENSQBRACKET,'[',1,1280)
-LexToken(CLOSESQBRACKET,']',1,1281)
-LexToken(EOL,'\n',1,1282)
-LexToken(VAR,'model',1,1291)
-LexToken(ASSIGNMENT,'=',1,1296)
-LexToken(SCICOS_MODEL,'scicos_model',1,1297)
-LexToken(OPENBRACKET,'(',1,1309)
-LexToken(CLOSEBRACKET,')',1,1310)
-LexToken(EOL,'\n',1,1311)
-LexToken(VAR,'Typein',1,1320)
-LexToken(ASSIGNMENT,'=',1,1326)
-LexToken(OPENSQBRACKET,'[',1,1327)
-LexToken(CLOSESQBRACKET,']',1,1328)
-LexToken(EOL,'\n',1,1329)
-LexToken(VAR,'Typeout',1,1339)
-LexToken(ASSIGNMENT,'=',1,1346)
-LexToken(OPENSQBRACKET,'[',1,1347)
-LexToken(CLOSESQBRACKET,']',1,1348)
-LexToken(EOL,'\n',1,1349)
-LexToken(VAR,'MI',1,1359)
-LexToken(ASSIGNMENT,'=',1,1361)
-LexToken(OPENSQBRACKET,'[',1,1362)
-LexToken(CLOSESQBRACKET,']',1,1363)
-LexToken(EOL,'\n',1,1364)
-LexToken(VAR,'MO',1,1374)
-LexToken(ASSIGNMENT,'=',1,1376)
-LexToken(OPENSQBRACKET,'[',1,1377)
-LexToken(CLOSESQBRACKET,']',1,1378)
-LexToken(EOL,'\n',1,1379)
-LexToken(VAR,'P',1,1388)
-LexToken(ASSIGNMENT,'=',1,1389)
-LexToken(OPENSQBRACKET,'[',1,1390)
-LexToken(NUMBER,'2',1,1391)
-LexToken(COMMA,',',1,1392)
-LexToken(NUMBER,'50',1,1393)
-LexToken(COMMA,',',1,1395)
-LexToken(NUMBER,'1',1,1396)
-LexToken(COMMA,',',1,1397)
-LexToken(NUMBER,'0',1,1398)
-LexToken(SEMICOLON,';',1,1399)
-LexToken(NUMBER,'70',1,1401)
-LexToken(COMMA,',',1,1403)
-LexToken(NUMBER,'98',1,1404)
-LexToken(COMMA,',',1,1406)
-LexToken(NUMBER,'2',1,1407)
-LexToken(COMMA,',',1,1408)
-LexToken(NUMBER,'0',1,1409)
-LexToken(SEMICOLON,';',1,1410)
-LexToken(NUMBER,'70',1,1411)
-LexToken(COMMA,',',1,1413)
-LexToken(NUMBER,'2',1,1414)
-LexToken(COMMA,',',1,1415)
-LexToken(ADDITION,'-',1,1416)
-LexToken(NUMBER,'2',1,1417)
-LexToken(COMMA,',',1,1418)
-LexToken(NUMBER,'0',1,1419)
-LexToken(CLOSESQBRACKET,']',1,1420)
-LexToken(EOL,'\n',1,1421)
-LexToken(EOL,'\n',1,1422)
-LexToken(VAR,'PortName',1,1431)
-LexToken(ASSIGNMENT,'=',1,1439)
-LexToken(OPENSQBRACKET,'[',1,1440)
-LexToken(DQSTRING,'"Iin"',1,1445)
-LexToken(SEMICOLON,';',1,1446)
-LexToken(DQSTRING,'"p"',1,1449)
-LexToken(SEMICOLON,';',1,1450)
-LexToken(DQSTRING,'"n"',1,1453)
-LexToken(CLOSESQBRACKET,']',1,1454)
-LexToken(EOL,'\n',1,1455)
-LexToken(EOL,'\n',1,1456)
-LexToken(FOR,'for',1,1465)
-LexToken(VAR,'i',1,1469)
-LexToken(ASSIGNMENT,'=',1,1470)
-LexToken(NUMBER,'1',1,1471)
-LexToken(COLON,':',1,1472)
-LexToken(VAR,'size',1,1473)
-LexToken(OPENBRACKET,'(',1,1477)
-LexToken(VAR,'P',1,1478)
-LexToken(COMMA,',',1,1479)
-LexToken(DQSTRING,'"r"',1,1482)
-LexToken(CLOSEBRACKET,')',1,1483)
-LexToken(EOL,'\n',1,1484)
-LexToken(IF,'if',1,1497)
-LexToken(VAR,'P',1,1500)
-LexToken(OPENBRACKET,'(',1,1501)
-LexToken(VAR,'i',1,1502)
-LexToken(COMMA,',',1,1503)
-LexToken(NUMBER,'3',1,1504)
-LexToken(CLOSEBRACKET,')',1,1505)
-LexToken(COMPARISON,'==',1,1506)
-LexToken(NUMBER,'1',1,1508)
-LexToken(THEN,'then',1,1511)
-LexToken(EOL,'\n',1,1515)
-LexToken(VAR,'Typein',1,1532)
-LexToken(ASSIGNMENT,'=',1,1538)
-LexToken(OPENSQBRACKET,'[',1,1540)
-LexToken(VAR,'Typein',1,1541)
-LexToken(SEMICOLON,';',1,1547)
-LexToken(DQSTRING,'"E"',1,1551)
-LexToken(CLOSESQBRACKET,']',1,1552)
-LexToken(EOL,'\n',1,1553)
-LexToken(VAR,'MI',1,1571)
-LexToken(ASSIGNMENT,'=',1,1573)
-LexToken(OPENSQBRACKET,'[',1,1574)
-LexToken(VAR,'MI',1,1575)
-LexToken(SEMICOLON,';',1,1577)
-LexToken(VAR,'PortName',1,1578)
-LexToken(OPENBRACKET,'(',1,1586)
-LexToken(VAR,'i',1,1587)
-LexToken(CLOSEBRACKET,')',1,1588)
-LexToken(CLOSESQBRACKET,']',1,1589)
-LexToken(EOL,'\n',1,1590)
-LexToken(END,'end',1,1604)
-LexToken(EOL,'\n',1,1607)
-LexToken(IF,'if',1,1620)
-LexToken(VAR,'P',1,1623)
-LexToken(OPENBRACKET,'(',1,1624)
-LexToken(VAR,'i',1,1625)
-LexToken(COMMA,',',1,1626)
-LexToken(NUMBER,'3',1,1627)
-LexToken(CLOSEBRACKET,')',1,1628)
-LexToken(COMPARISON,'==',1,1629)
-LexToken(NUMBER,'2',1,1631)
-LexToken(THEN,'then',1,1634)
-LexToken(EOL,'\n',1,1638)
-LexToken(VAR,'Typein',1,1655)
-LexToken(ASSIGNMENT,'=',1,1661)
-LexToken(OPENSQBRACKET,'[',1,1663)
-LexToken(VAR,'Typein',1,1664)
-LexToken(SEMICOLON,';',1,1670)
-LexToken(DQSTRING,'"I"',1,1674)
-LexToken(CLOSESQBRACKET,']',1,1675)
-LexToken(EOL,'\n',1,1676)
-LexToken(VAR,'MI',1,1694)
-LexToken(ASSIGNMENT,'=',1,1696)
-LexToken(OPENSQBRACKET,'[',1,1697)
-LexToken(VAR,'MI',1,1698)
-LexToken(SEMICOLON,';',1,1700)
-LexToken(VAR,'PortName',1,1701)
-LexToken(OPENBRACKET,'(',1,1709)
-LexToken(VAR,'i',1,1710)
-LexToken(CLOSEBRACKET,')',1,1711)
-LexToken(CLOSESQBRACKET,']',1,1712)
-LexToken(EOL,'\n',1,1713)
-LexToken(END,'end',1,1727)
-LexToken(EOL,'\n',1,1730)
-LexToken(IF,'if',1,1743)
-LexToken(VAR,'P',1,1746)
-LexToken(OPENBRACKET,'(',1,1747)
-LexToken(VAR,'i',1,1748)
-LexToken(COMMA,',',1,1749)
-LexToken(NUMBER,'3',1,1750)
-LexToken(CLOSEBRACKET,')',1,1751)
-LexToken(COMPARISON,'==',1,1752)
-LexToken(ADDITION,'-',1,1754)
-LexToken(NUMBER,'1',1,1755)
-LexToken(THEN,'then',1,1757)
-LexToken(EOL,'\n',1,1761)
-LexToken(VAR,'Typeout',1,1778)
-LexToken(ASSIGNMENT,'=',1,1785)
-LexToken(OPENSQBRACKET,'[',1,1786)
-LexToken(VAR,'Typeout',1,1787)
-LexToken(SEMICOLON,';',1,1794)
-LexToken(DQSTRING,'"E"',1,1797)
-LexToken(CLOSESQBRACKET,']',1,1798)
-LexToken(EOL,'\n',1,1799)
-LexToken(VAR,'MO',1,1817)
-LexToken(ASSIGNMENT,'=',1,1819)
-LexToken(OPENSQBRACKET,'[',1,1820)
-LexToken(VAR,'MO',1,1821)
-LexToken(SEMICOLON,';',1,1823)
-LexToken(VAR,'PortName',1,1824)
-LexToken(OPENBRACKET,'(',1,1832)
-LexToken(VAR,'i',1,1833)
-LexToken(CLOSEBRACKET,')',1,1834)
-LexToken(CLOSESQBRACKET,']',1,1835)
-LexToken(EOL,'\n',1,1836)
-LexToken(END,'end',1,1850)
-LexToken(EOL,'\n',1,1853)
-LexToken(IF,'if',1,1866)
-LexToken(VAR,'P',1,1869)
-LexToken(OPENBRACKET,'(',1,1870)
-LexToken(VAR,'i',1,1871)
-LexToken(COMMA,',',1,1872)
-LexToken(NUMBER,'3',1,1873)
-LexToken(CLOSEBRACKET,')',1,1874)
-LexToken(COMPARISON,'==',1,1875)
-LexToken(ADDITION,'-',1,1877)
-LexToken(NUMBER,'2',1,1878)
-LexToken(THEN,'then',1,1880)
-LexToken(EOL,'\n',1,1884)
-LexToken(VAR,'Typeout',1,1901)
-LexToken(ASSIGNMENT,'=',1,1908)
-LexToken(OPENSQBRACKET,'[',1,1909)
-LexToken(VAR,'Typeout',1,1910)
-LexToken(SEMICOLON,';',1,1917)
-LexToken(DQSTRING,'"I"',1,1920)
-LexToken(CLOSESQBRACKET,']',1,1921)
-LexToken(EOL,'\n',1,1922)
-LexToken(VAR,'MO',1,1940)
-LexToken(ASSIGNMENT,'=',1,1942)
-LexToken(OPENSQBRACKET,'[',1,1943)
-LexToken(VAR,'MO',1,1944)
-LexToken(SEMICOLON,';',1,1946)
-LexToken(VAR,'PortName',1,1947)
-LexToken(OPENBRACKET,'(',1,1955)
-LexToken(VAR,'i',1,1956)
-LexToken(CLOSEBRACKET,')',1,1957)
-LexToken(CLOSESQBRACKET,']',1,1958)
-LexToken(EOL,'\n',1,1959)
-LexToken(END,'end',1,1973)
-LexToken(EOL,'\n',1,1976)
-LexToken(END,'end',1,1985)
-LexToken(EOL,'\n',1,1988)
-LexToken(VAR,'model',1,1997)
-LexToken(ASSIGNMENT,'=',1,2002)
-LexToken(SCICOS_MODEL,'scicos_model',1,2003)
-LexToken(OPENBRACKET,'(',1,2015)
-LexToken(CLOSEBRACKET,')',1,2016)
-LexToken(EOL,'\n',1,2017)
-LexToken(VAR,'mo',1,2026)
-LexToken(ASSIGNMENT,'=',1,2028)
-LexToken(VAR,'modelica',1,2029)
-LexToken(OPENBRACKET,'(',1,2037)
-LexToken(CLOSEBRACKET,')',1,2038)
-LexToken(EOL,'\n',1,2039)
-LexToken(VAR,'model',1,2048)
-LexToken(DOT,'.',1,2053)
-LexToken(VAR,'sim',1,2054)
-LexToken(ASSIGNMENT,'=',1,2057)
-LexToken(VAR,'ModelName',1,2058)
-LexToken(EOL,'\n',1,2067)
-LexToken(VAR,'mo',1,2077)
-LexToken(DOT,'.',1,2079)
-LexToken(VAR,'inputs',1,2080)
-LexToken(ASSIGNMENT,'=',1,2086)
-LexToken(VAR,'MI',1,2087)
-LexToken(EOL,'\n',1,2089)
-LexToken(VAR,'mo',1,2099)
-LexToken(DOT,'.',1,2101)
-LexToken(VAR,'outputs',1,2102)
-LexToken(ASSIGNMENT,'=',1,2109)
-LexToken(VAR,'MO',1,2110)
-LexToken(EOL,'\n',1,2112)
-LexToken(VAR,'model',1,2122)
-LexToken(DOT,'.',1,2127)
-LexToken(VAR,'rpar',1,2128)
-LexToken(ASSIGNMENT,'=',1,2132)
-LexToken(VAR,'PrametersValue',1,2133)
-LexToken(EOL,'\n',1,2147)
-LexToken(VAR,'mo',1,2157)
-LexToken(DOT,'.',1,2159)
-LexToken(VAR,'parameters',1,2160)
-LexToken(ASSIGNMENT,'=',1,2170)
-LexToken(VAR,'list',1,2171)
-LexToken(OPENBRACKET,'(',1,2175)
-LexToken(VAR,'ParametersName',1,2176)
-LexToken(COMMA,',',1,2190)
-LexToken(VAR,'PrametersValue',1,2191)
-LexToken(COMMA,',',1,2205)
-LexToken(VAR,'zeros',1,2206)
-LexToken(OPENBRACKET,'(',1,2211)
-LexToken(VAR,'ParametersName',1,2212)
-LexToken(CLOSEBRACKET,')',1,2226)
-LexToken(CLOSEBRACKET,')',1,2227)
-LexToken(EOL,'\n',1,2228)
-LexToken(VAR,'exprs',1,2238)
-LexToken(ASSIGNMENT,'=',1,2243)
-LexToken(OPENSQBRACKET,'[',1,2244)
-LexToken(CLOSESQBRACKET,']',1,2245)
-LexToken(EOL,'\n',1,2246)
-LexToken(VAR,'gr_i',1,2255)
-LexToken(ASSIGNMENT,'=',1,2259)
-LexToken(OPENSQBRACKET,'[',1,2260)
-LexToken(CLOSESQBRACKET,']',1,2261)
-LexToken(EOL,'\n',1,2262)
-LexToken(VAR,'model',1,2271)
-LexToken(DOT,'.',1,2276)
-LexToken(VAR,'blocktype',1,2277)
-LexToken(ASSIGNMENT,'=',1,2286)
-LexToken(DQSTRING,'"c"',1,2289)
-LexToken(EOL,'\n',1,2290)
-LexToken(VAR,'model',1,2299)
-LexToken(DOT,'.',1,2304)
-LexToken(VAR,'dep_ut',1,2305)
-LexToken(ASSIGNMENT,'=',1,2311)
-LexToken(OPENSQBRACKET,'[',1,2312)
-LexToken(PREVAR_BOOLEAN,'%f',1,2313)
-LexToken(PREVAR_BOOLEAN,'%t',1,2316)
-LexToken(CLOSESQBRACKET,']',1,2318)
-LexToken(EOL,'\n',1,2319)
-LexToken(VAR,'mo',1,2328)
-LexToken(DOT,'.',1,2330)
-LexToken(VAR,'model',1,2331)
-LexToken(ASSIGNMENT,'=',1,2336)
-LexToken(VAR,'ModelName',1,2337)
-LexToken(EOL,'\n',1,2346)
-LexToken(VAR,'model',1,2355)
-LexToken(DOT,'.',1,2360)
-LexToken(VAR,'equations',1,2361)
-LexToken(ASSIGNMENT,'=',1,2370)
-LexToken(VAR,'mo',1,2371)
-LexToken(EOL,'\n',1,2373)
-LexToken(VAR,'model',1,2382)
-LexToken(DOT,'.',1,2387)
-LexToken(VAR,'in',1,2388)
-LexToken(ASSIGNMENT,'=',1,2390)
-LexToken(VAR,'ones',1,2391)
-LexToken(OPENBRACKET,'(',1,2395)
-LexToken(VAR,'size',1,2396)
-LexToken(OPENBRACKET,'(',1,2400)
-LexToken(VAR,'MI',1,2401)
-LexToken(COMMA,',',1,2403)
-LexToken(DQSTRING,'"*"',1,2406)
-LexToken(CLOSEBRACKET,')',1,2407)
-LexToken(COMMA,',',1,2408)
-LexToken(NUMBER,'1',1,2409)
-LexToken(CLOSEBRACKET,')',1,2410)
-LexToken(EOL,'\n',1,2411)
-LexToken(VAR,'model',1,2420)
-LexToken(DOT,'.',1,2425)
-LexToken(VAR,'out',1,2426)
-LexToken(ASSIGNMENT,'=',1,2429)
-LexToken(VAR,'ones',1,2430)
-LexToken(OPENBRACKET,'(',1,2434)
-LexToken(VAR,'size',1,2435)
-LexToken(OPENBRACKET,'(',1,2439)
-LexToken(VAR,'MO',1,2440)
-LexToken(COMMA,',',1,2442)
-LexToken(DQSTRING,'"*"',1,2445)
-LexToken(CLOSEBRACKET,')',1,2446)
-LexToken(COMMA,',',1,2447)
-LexToken(NUMBER,'1',1,2448)
-LexToken(CLOSEBRACKET,')',1,2449)
-LexToken(EOL,'\n',1,2450)
-LexToken(VAR,'x',1,2459)
-LexToken(ASSIGNMENT,'=',1,2460)
-LexToken(VAR,'standard_define',1,2461)
-LexToken(OPENBRACKET,'(',1,2476)
-LexToken(OPENSQBRACKET,'[',1,2477)
-LexToken(NUMBER,'2.1',1,2478)
-LexToken(COMMA,',',1,2481)
-LexToken(NUMBER,'3',1,2482)
-LexToken(CLOSESQBRACKET,']',1,2483)
-LexToken(COMMA,',',1,2484)
-LexToken(VAR,'model',1,2485)
-LexToken(COMMA,',',1,2490)
-LexToken(VAR,'exprs',1,2491)
-LexToken(COMMA,',',1,2496)
-LexToken(VAR,'list',1,2497)
-LexToken(OPENBRACKET,'(',1,2501)
-LexToken(VAR,'gr_i',1,2502)
-LexToken(COMMA,',',1,2506)
-LexToken(NUMBER,'0',1,2507)
-LexToken(CLOSEBRACKET,')',1,2508)
-LexToken(CLOSEBRACKET,')',1,2509)
-LexToken(EOL,'\n',1,2510)
-LexToken(VAR,'x',1,2519)
-LexToken(DOT,'.',1,2520)
-LexToken(VAR,'graphics',1,2521)
-LexToken(DOT,'.',1,2529)
-LexToken(VAR,'in_implicit',1,2530)
-LexToken(ASSIGNMENT,'=',1,2541)
-LexToken(VAR,'Typein',1,2542)
-LexToken(EOL,'\n',1,2548)
-LexToken(VAR,'x',1,2558)
-LexToken(DOT,'.',1,2559)
-LexToken(VAR,'graphics',1,2560)
-LexToken(DOT,'.',1,2568)
-LexToken(VAR,'out_implicit',1,2569)
-LexToken(ASSIGNMENT,'=',1,2581)
-LexToken(VAR,'Typeout',1,2582)
-LexToken(EOL,'\n',1,2589)
-LexToken(END,'end',1,2595)
-LexToken(EOL,'\n',1,2598)
-LexToken(ENDFUNCTION,'endfunction',1,2599)
-LexToken(EOL,'\n',1,2610)
+/* autogenerated from "macros/Electrical/CCS.sci" */
+function CCS() {
+CCS.prototype.get = function CCS() {
+}
+CCS.prototype.set = function CCS() {
+x=arg1;
+graphics=arg1.graphics;
+exprs=graphics.exprs;
+model=arg1.model;
+x=arg1;
+}
+CCS.prototype.define = function CCS() {
+ModelName="CCS";
+PrametersValue=[];
+ParametersName=[];
+model=scicos_model();
+Typein=[];
+Typeout=[];
+MI=[];
+MO=[];
+P=[2,50,1,0,70,98,2,0,70,2,-2,0];
+PortName=["Iin","p","n"];
+for(i=1;i<=size(P,"r");i+=1) {
+if (P(i,3)==1) {
+Typein=[Typein,"E"];
+MI=[MI,PortName(i)];
+}
+if (P(i,3)==2) {
+Typein=[Typein,"I"];
+MI=[MI,PortName(i)];
+}
+if (P(i,3)==-1) {
+Typeout=[Typeout,"E"];
+MO=[MO,PortName(i)];
+}
+if (P(i,3)==-2) {
+Typeout=[Typeout,"I"];
+MO=[MO,PortName(i)];
+}
+}
+model=scicos_model();
+mo=modelica();
+model.sim=ModelName;
+mo.inputs=MI;
+mo.outputs=MO;
+model.rpar=PrametersValue;
+mo.parameters=list(ParametersName,PrametersValue,zeros(ParametersName));
+exprs=[];
+gr_i=[];
+model.blocktype="c";
+model.dep_ut=[None,true];
+mo.model=ModelName;
+model.equations=mo;
+model.in=ones(size(MI,"*"),1);
+model.out=ones(size(MO,"*"),1);
+x=standard_define([2.1,3],model,exprs,list(gr_i,0));
+x.graphics.in_implicit=Typein;
+x.graphics.out_implicit=Typeout;
+}
+CCS.prototype.details = function CCS() {
+}
+}
diff --git a/js/Electrical/CVS.js b/js/Electrical/CVS.js
index a4ec3648..20c65e8e 100644
--- a/js/Electrical/CVS.js
+++ b/js/Electrical/CVS.js
@@ -1,480 +1,62 @@
-LexToken(EOL,'\n',1,10)
-LexToken(EOL,'\n',1,13)
-LexToken(EOL,'\n',1,73)
-LexToken(EOL,'\n',1,76)
-LexToken(EOL,'\n',1,148)
-LexToken(EOL,'\n',1,220)
-LexToken(EOL,'\n',1,289)
-LexToken(EOL,'\n',1,328)
-LexToken(EOL,'\n',1,331)
-LexToken(EOL,'\n',1,398)
-LexToken(EOL,'\n',1,464)
-LexToken(EOL,'\n',1,529)
-LexToken(EOL,'\n',1,577)
-LexToken(EOL,'\n',1,580)
-LexToken(EOL,'\n',1,649)
-LexToken(EOL,'\n',1,712)
-LexToken(EOL,'\n',1,794)
-LexToken(EOL,'\n',1,797)
-LexToken(EOL,'\n',1,828)
-LexToken(EOL,'\n',1,831)
-LexToken(EOL,'\n',1,832)
-LexToken(FUNCTION,'function',1,833)
-LexToken(OPENSQBRACKET,'[',1,842)
-LexToken(VAR,'x',1,843)
-LexToken(COMMA,',',1,844)
-LexToken(VAR,'y',1,845)
-LexToken(COMMA,',',1,846)
-LexToken(VAR,'typ',1,847)
-LexToken(CLOSESQBRACKET,']',1,850)
-LexToken(ASSIGNMENT,'=',1,851)
-LexToken(VAR,'CVS',1,852)
-LexToken(OPENBRACKET,'(',1,855)
-LexToken(VAR,'job',1,856)
-LexToken(COMMA,',',1,859)
-LexToken(VAR,'arg1',1,860)
-LexToken(COMMA,',',1,864)
-LexToken(VAR,'arg2',1,865)
-LexToken(CLOSEBRACKET,')',1,869)
-LexToken(EOL,'\n',1,870)
-LexToken(EOL,'\n',1,947)
-LexToken(EOL,'\n',1,998)
-LexToken(VAR,'x',1,1003)
-LexToken(ASSIGNMENT,'=',1,1004)
-LexToken(OPENSQBRACKET,'[',1,1005)
-LexToken(CLOSESQBRACKET,']',1,1006)
-LexToken(EOL,'\n',1,1007)
-LexToken(VAR,'y',1,1013)
-LexToken(ASSIGNMENT,'=',1,1014)
-LexToken(OPENSQBRACKET,'[',1,1015)
-LexToken(CLOSESQBRACKET,']',1,1016)
-LexToken(EOL,'\n',1,1017)
-LexToken(VAR,'typ',1,1023)
-LexToken(ASSIGNMENT,'=',1,1026)
-LexToken(OPENSQBRACKET,'[',1,1027)
-LexToken(CLOSESQBRACKET,']',1,1028)
-LexToken(EOL,'\n',1,1029)
-LexToken(SELECT,'select',1,1035)
-LexToken(VAR,'job',1,1042)
-LexToken(EOL,'\n',1,1045)
-LexToken(CASE,'case',1,1050)
-LexToken(DQSTRING,'"set"',1,1059)
-LexToken(THEN,'then',1,1061)
-LexToken(EOL,'\n',1,1065)
-LexToken(VAR,'x',1,1074)
-LexToken(ASSIGNMENT,'=',1,1075)
-LexToken(VAR,'arg1',1,1076)
-LexToken(EOL,'\n',1,1080)
-LexToken(VAR,'graphics',1,1090)
-LexToken(ASSIGNMENT,'=',1,1098)
-LexToken(VAR,'arg1',1,1099)
-LexToken(DOT,'.',1,1103)
-LexToken(VAR,'graphics',1,1104)
-LexToken(EOL,'\n',1,1112)
-LexToken(VAR,'exprs',1,1122)
-LexToken(ASSIGNMENT,'=',1,1127)
-LexToken(VAR,'graphics',1,1128)
-LexToken(DOT,'.',1,1136)
-LexToken(VAR,'exprs',1,1137)
-LexToken(EOL,'\n',1,1142)
-LexToken(VAR,'model',1,1151)
-LexToken(ASSIGNMENT,'=',1,1156)
-LexToken(VAR,'arg1',1,1157)
-LexToken(DOT,'.',1,1161)
-LexToken(VAR,'model',1,1162)
-LexToken(EOL,'\n',1,1167)
-LexToken(VAR,'x',1,1177)
-LexToken(ASSIGNMENT,'=',1,1178)
-LexToken(VAR,'arg1',1,1179)
-LexToken(EOL,'\n',1,1183)
-LexToken(CASE,'case',1,1188)
-LexToken(DQSTRING,'"define"',1,1200)
-LexToken(THEN,'then',1,1202)
-LexToken(EOL,'\n',1,1206)
-LexToken(VAR,'ModelName',1,1215)
-LexToken(ASSIGNMENT,'=',1,1224)
-LexToken(DQSTRING,'"CVS"',1,1229)
-LexToken(EOL,'\n',1,1230)
-LexToken(VAR,'PrametersValue',1,1239)
-LexToken(ASSIGNMENT,'=',1,1253)
-LexToken(OPENSQBRACKET,'[',1,1254)
-LexToken(CLOSESQBRACKET,']',1,1255)
-LexToken(EOL,'\n',1,1256)
-LexToken(VAR,'ParametersName',1,1265)
-LexToken(ASSIGNMENT,'=',1,1279)
-LexToken(OPENSQBRACKET,'[',1,1280)
-LexToken(CLOSESQBRACKET,']',1,1281)
-LexToken(EOL,'\n',1,1282)
-LexToken(VAR,'model',1,1291)
-LexToken(ASSIGNMENT,'=',1,1296)
-LexToken(SCICOS_MODEL,'scicos_model',1,1297)
-LexToken(OPENBRACKET,'(',1,1309)
-LexToken(CLOSEBRACKET,')',1,1310)
-LexToken(EOL,'\n',1,1311)
-LexToken(VAR,'Typein',1,1320)
-LexToken(ASSIGNMENT,'=',1,1326)
-LexToken(OPENSQBRACKET,'[',1,1327)
-LexToken(CLOSESQBRACKET,']',1,1328)
-LexToken(EOL,'\n',1,1329)
-LexToken(VAR,'Typeout',1,1339)
-LexToken(ASSIGNMENT,'=',1,1346)
-LexToken(OPENSQBRACKET,'[',1,1347)
-LexToken(CLOSESQBRACKET,']',1,1348)
-LexToken(EOL,'\n',1,1349)
-LexToken(VAR,'MI',1,1359)
-LexToken(ASSIGNMENT,'=',1,1361)
-LexToken(OPENSQBRACKET,'[',1,1362)
-LexToken(CLOSESQBRACKET,']',1,1363)
-LexToken(EOL,'\n',1,1364)
-LexToken(VAR,'MO',1,1374)
-LexToken(ASSIGNMENT,'=',1,1376)
-LexToken(OPENSQBRACKET,'[',1,1377)
-LexToken(CLOSESQBRACKET,']',1,1378)
-LexToken(EOL,'\n',1,1379)
-LexToken(VAR,'P',1,1388)
-LexToken(ASSIGNMENT,'=',1,1389)
-LexToken(OPENSQBRACKET,'[',1,1390)
-LexToken(NUMBER,'2',1,1391)
-LexToken(COMMA,',',1,1392)
-LexToken(NUMBER,'50',1,1393)
-LexToken(COMMA,',',1,1395)
-LexToken(NUMBER,'1',1,1396)
-LexToken(COMMA,',',1,1397)
-LexToken(NUMBER,'0',1,1398)
-LexToken(SEMICOLON,';',1,1399)
-LexToken(NUMBER,'70',1,1401)
-LexToken(COMMA,',',1,1403)
-LexToken(NUMBER,'98',1,1404)
-LexToken(COMMA,',',1,1406)
-LexToken(NUMBER,'2',1,1407)
-LexToken(COMMA,',',1,1408)
-LexToken(NUMBER,'0',1,1409)
-LexToken(SEMICOLON,';',1,1410)
-LexToken(NUMBER,'70',1,1411)
-LexToken(COMMA,',',1,1413)
-LexToken(NUMBER,'2',1,1414)
-LexToken(COMMA,',',1,1415)
-LexToken(ADDITION,'-',1,1416)
-LexToken(NUMBER,'2',1,1417)
-LexToken(COMMA,',',1,1418)
-LexToken(NUMBER,'0',1,1419)
-LexToken(CLOSESQBRACKET,']',1,1420)
-LexToken(EOL,'\n',1,1421)
-LexToken(EOL,'\n',1,1422)
-LexToken(VAR,'PortName',1,1431)
-LexToken(ASSIGNMENT,'=',1,1439)
-LexToken(OPENSQBRACKET,'[',1,1440)
-LexToken(DQSTRING,'"vin"',1,1445)
-LexToken(SEMICOLON,';',1,1446)
-LexToken(DQSTRING,'"p"',1,1449)
-LexToken(SEMICOLON,';',1,1450)
-LexToken(DQSTRING,'"n"',1,1453)
-LexToken(CLOSESQBRACKET,']',1,1454)
-LexToken(EOL,'\n',1,1455)
-LexToken(FOR,'for',1,1464)
-LexToken(VAR,'i',1,1468)
-LexToken(ASSIGNMENT,'=',1,1469)
-LexToken(NUMBER,'1',1,1470)
-LexToken(COLON,':',1,1471)
-LexToken(VAR,'size',1,1472)
-LexToken(OPENBRACKET,'(',1,1476)
-LexToken(VAR,'P',1,1477)
-LexToken(COMMA,',',1,1478)
-LexToken(DQSTRING,'"r"',1,1481)
-LexToken(CLOSEBRACKET,')',1,1482)
-LexToken(EOL,'\n',1,1483)
-LexToken(IF,'if',1,1496)
-LexToken(VAR,'P',1,1499)
-LexToken(OPENBRACKET,'(',1,1500)
-LexToken(VAR,'i',1,1501)
-LexToken(COMMA,',',1,1502)
-LexToken(NUMBER,'3',1,1503)
-LexToken(CLOSEBRACKET,')',1,1504)
-LexToken(COMPARISON,'==',1,1505)
-LexToken(NUMBER,'1',1,1507)
-LexToken(THEN,'then',1,1510)
-LexToken(EOL,'\n',1,1514)
-LexToken(VAR,'Typein',1,1531)
-LexToken(ASSIGNMENT,'=',1,1537)
-LexToken(OPENSQBRACKET,'[',1,1539)
-LexToken(VAR,'Typein',1,1540)
-LexToken(SEMICOLON,';',1,1546)
-LexToken(DQSTRING,'"E"',1,1550)
-LexToken(CLOSESQBRACKET,']',1,1551)
-LexToken(EOL,'\n',1,1552)
-LexToken(VAR,'MI',1,1570)
-LexToken(ASSIGNMENT,'=',1,1572)
-LexToken(OPENSQBRACKET,'[',1,1573)
-LexToken(VAR,'MI',1,1574)
-LexToken(SEMICOLON,';',1,1576)
-LexToken(VAR,'PortName',1,1577)
-LexToken(OPENBRACKET,'(',1,1585)
-LexToken(VAR,'i',1,1586)
-LexToken(CLOSEBRACKET,')',1,1587)
-LexToken(CLOSESQBRACKET,']',1,1588)
-LexToken(EOL,'\n',1,1589)
-LexToken(END,'end',1,1603)
-LexToken(EOL,'\n',1,1606)
-LexToken(IF,'if',1,1619)
-LexToken(VAR,'P',1,1622)
-LexToken(OPENBRACKET,'(',1,1623)
-LexToken(VAR,'i',1,1624)
-LexToken(COMMA,',',1,1625)
-LexToken(NUMBER,'3',1,1626)
-LexToken(CLOSEBRACKET,')',1,1627)
-LexToken(COMPARISON,'==',1,1628)
-LexToken(NUMBER,'2',1,1630)
-LexToken(THEN,'then',1,1633)
-LexToken(EOL,'\n',1,1637)
-LexToken(VAR,'Typein',1,1654)
-LexToken(ASSIGNMENT,'=',1,1660)
-LexToken(OPENSQBRACKET,'[',1,1662)
-LexToken(VAR,'Typein',1,1663)
-LexToken(SEMICOLON,';',1,1669)
-LexToken(DQSTRING,'"I"',1,1673)
-LexToken(CLOSESQBRACKET,']',1,1674)
-LexToken(EOL,'\n',1,1675)
-LexToken(VAR,'MI',1,1693)
-LexToken(ASSIGNMENT,'=',1,1695)
-LexToken(OPENSQBRACKET,'[',1,1696)
-LexToken(VAR,'MI',1,1697)
-LexToken(SEMICOLON,';',1,1699)
-LexToken(VAR,'PortName',1,1700)
-LexToken(OPENBRACKET,'(',1,1708)
-LexToken(VAR,'i',1,1709)
-LexToken(CLOSEBRACKET,')',1,1710)
-LexToken(CLOSESQBRACKET,']',1,1711)
-LexToken(EOL,'\n',1,1712)
-LexToken(END,'end',1,1726)
-LexToken(EOL,'\n',1,1729)
-LexToken(IF,'if',1,1742)
-LexToken(VAR,'P',1,1745)
-LexToken(OPENBRACKET,'(',1,1746)
-LexToken(VAR,'i',1,1747)
-LexToken(COMMA,',',1,1748)
-LexToken(NUMBER,'3',1,1749)
-LexToken(CLOSEBRACKET,')',1,1750)
-LexToken(COMPARISON,'==',1,1751)
-LexToken(ADDITION,'-',1,1753)
-LexToken(NUMBER,'1',1,1754)
-LexToken(THEN,'then',1,1756)
-LexToken(EOL,'\n',1,1760)
-LexToken(VAR,'Typeout',1,1777)
-LexToken(ASSIGNMENT,'=',1,1784)
-LexToken(OPENSQBRACKET,'[',1,1785)
-LexToken(VAR,'Typeout',1,1786)
-LexToken(SEMICOLON,';',1,1793)
-LexToken(DQSTRING,'"E"',1,1796)
-LexToken(CLOSESQBRACKET,']',1,1797)
-LexToken(EOL,'\n',1,1798)
-LexToken(VAR,'MO',1,1816)
-LexToken(ASSIGNMENT,'=',1,1818)
-LexToken(OPENSQBRACKET,'[',1,1819)
-LexToken(VAR,'MO',1,1820)
-LexToken(SEMICOLON,';',1,1822)
-LexToken(VAR,'PortName',1,1823)
-LexToken(OPENBRACKET,'(',1,1831)
-LexToken(VAR,'i',1,1832)
-LexToken(CLOSEBRACKET,')',1,1833)
-LexToken(CLOSESQBRACKET,']',1,1834)
-LexToken(EOL,'\n',1,1835)
-LexToken(END,'end',1,1849)
-LexToken(EOL,'\n',1,1852)
-LexToken(IF,'if',1,1865)
-LexToken(VAR,'P',1,1868)
-LexToken(OPENBRACKET,'(',1,1869)
-LexToken(VAR,'i',1,1870)
-LexToken(COMMA,',',1,1871)
-LexToken(NUMBER,'3',1,1872)
-LexToken(CLOSEBRACKET,')',1,1873)
-LexToken(COMPARISON,'==',1,1874)
-LexToken(ADDITION,'-',1,1876)
-LexToken(NUMBER,'2',1,1877)
-LexToken(THEN,'then',1,1879)
-LexToken(EOL,'\n',1,1883)
-LexToken(VAR,'Typeout',1,1900)
-LexToken(ASSIGNMENT,'=',1,1907)
-LexToken(OPENSQBRACKET,'[',1,1908)
-LexToken(VAR,'Typeout',1,1909)
-LexToken(SEMICOLON,';',1,1916)
-LexToken(DQSTRING,'"I"',1,1919)
-LexToken(CLOSESQBRACKET,']',1,1920)
-LexToken(EOL,'\n',1,1921)
-LexToken(VAR,'MO',1,1939)
-LexToken(ASSIGNMENT,'=',1,1941)
-LexToken(OPENSQBRACKET,'[',1,1942)
-LexToken(VAR,'MO',1,1943)
-LexToken(SEMICOLON,';',1,1945)
-LexToken(VAR,'PortName',1,1946)
-LexToken(OPENBRACKET,'(',1,1954)
-LexToken(VAR,'i',1,1955)
-LexToken(CLOSEBRACKET,')',1,1956)
-LexToken(CLOSESQBRACKET,']',1,1957)
-LexToken(EOL,'\n',1,1958)
-LexToken(END,'end',1,1972)
-LexToken(EOL,'\n',1,1975)
-LexToken(END,'end',1,1984)
-LexToken(EOL,'\n',1,1987)
-LexToken(VAR,'model',1,1996)
-LexToken(ASSIGNMENT,'=',1,2001)
-LexToken(SCICOS_MODEL,'scicos_model',1,2002)
-LexToken(OPENBRACKET,'(',1,2014)
-LexToken(CLOSEBRACKET,')',1,2015)
-LexToken(EOL,'\n',1,2016)
-LexToken(VAR,'mo',1,2025)
-LexToken(ASSIGNMENT,'=',1,2027)
-LexToken(VAR,'modelica',1,2028)
-LexToken(OPENBRACKET,'(',1,2036)
-LexToken(CLOSEBRACKET,')',1,2037)
-LexToken(EOL,'\n',1,2038)
-LexToken(VAR,'model',1,2047)
-LexToken(DOT,'.',1,2052)
-LexToken(VAR,'sim',1,2053)
-LexToken(ASSIGNMENT,'=',1,2056)
-LexToken(VAR,'ModelName',1,2057)
-LexToken(EOL,'\n',1,2066)
-LexToken(VAR,'mo',1,2076)
-LexToken(DOT,'.',1,2078)
-LexToken(VAR,'inputs',1,2079)
-LexToken(ASSIGNMENT,'=',1,2085)
-LexToken(VAR,'MI',1,2086)
-LexToken(EOL,'\n',1,2088)
-LexToken(VAR,'mo',1,2098)
-LexToken(DOT,'.',1,2100)
-LexToken(VAR,'outputs',1,2101)
-LexToken(ASSIGNMENT,'=',1,2108)
-LexToken(VAR,'MO',1,2109)
-LexToken(EOL,'\n',1,2111)
-LexToken(VAR,'model',1,2121)
-LexToken(DOT,'.',1,2126)
-LexToken(VAR,'rpar',1,2127)
-LexToken(ASSIGNMENT,'=',1,2131)
-LexToken(VAR,'PrametersValue',1,2132)
-LexToken(EOL,'\n',1,2146)
-LexToken(VAR,'mo',1,2156)
-LexToken(DOT,'.',1,2158)
-LexToken(VAR,'parameters',1,2159)
-LexToken(ASSIGNMENT,'=',1,2169)
-LexToken(VAR,'list',1,2170)
-LexToken(OPENBRACKET,'(',1,2174)
-LexToken(VAR,'ParametersName',1,2175)
-LexToken(COMMA,',',1,2189)
-LexToken(VAR,'PrametersValue',1,2190)
-LexToken(COMMA,',',1,2204)
-LexToken(VAR,'zeros',1,2205)
-LexToken(OPENBRACKET,'(',1,2210)
-LexToken(VAR,'ParametersName',1,2211)
-LexToken(CLOSEBRACKET,')',1,2225)
-LexToken(CLOSEBRACKET,')',1,2226)
-LexToken(EOL,'\n',1,2227)
-LexToken(VAR,'exprs',1,2237)
-LexToken(ASSIGNMENT,'=',1,2242)
-LexToken(OPENSQBRACKET,'[',1,2243)
-LexToken(CLOSESQBRACKET,']',1,2244)
-LexToken(EOL,'\n',1,2245)
-LexToken(VAR,'gr_i',1,2254)
-LexToken(ASSIGNMENT,'=',1,2258)
-LexToken(OPENSQBRACKET,'[',1,2259)
-LexToken(CLOSESQBRACKET,']',1,2260)
-LexToken(EOL,'\n',1,2261)
-LexToken(VAR,'model',1,2270)
-LexToken(DOT,'.',1,2275)
-LexToken(VAR,'blocktype',1,2276)
-LexToken(ASSIGNMENT,'=',1,2285)
-LexToken(DQSTRING,'"c"',1,2288)
-LexToken(EOL,'\n',1,2289)
-LexToken(VAR,'model',1,2298)
-LexToken(DOT,'.',1,2303)
-LexToken(VAR,'dep_ut',1,2304)
-LexToken(ASSIGNMENT,'=',1,2310)
-LexToken(OPENSQBRACKET,'[',1,2311)
-LexToken(PREVAR_BOOLEAN,'%f',1,2312)
-LexToken(PREVAR_BOOLEAN,'%t',1,2315)
-LexToken(CLOSESQBRACKET,']',1,2317)
-LexToken(EOL,'\n',1,2318)
-LexToken(VAR,'mo',1,2327)
-LexToken(DOT,'.',1,2329)
-LexToken(VAR,'model',1,2330)
-LexToken(ASSIGNMENT,'=',1,2335)
-LexToken(VAR,'ModelName',1,2336)
-LexToken(EOL,'\n',1,2345)
-LexToken(VAR,'model',1,2354)
-LexToken(DOT,'.',1,2359)
-LexToken(VAR,'equations',1,2360)
-LexToken(ASSIGNMENT,'=',1,2369)
-LexToken(VAR,'mo',1,2370)
-LexToken(EOL,'\n',1,2372)
-LexToken(VAR,'model',1,2381)
-LexToken(DOT,'.',1,2386)
-LexToken(VAR,'in',1,2387)
-LexToken(ASSIGNMENT,'=',1,2389)
-LexToken(VAR,'ones',1,2390)
-LexToken(OPENBRACKET,'(',1,2394)
-LexToken(VAR,'size',1,2395)
-LexToken(OPENBRACKET,'(',1,2399)
-LexToken(VAR,'MI',1,2400)
-LexToken(COMMA,',',1,2402)
-LexToken(DQSTRING,'"*"',1,2405)
-LexToken(CLOSEBRACKET,')',1,2406)
-LexToken(COMMA,',',1,2407)
-LexToken(NUMBER,'1',1,2408)
-LexToken(CLOSEBRACKET,')',1,2409)
-LexToken(EOL,'\n',1,2410)
-LexToken(VAR,'model',1,2419)
-LexToken(DOT,'.',1,2424)
-LexToken(VAR,'out',1,2425)
-LexToken(ASSIGNMENT,'=',1,2428)
-LexToken(VAR,'ones',1,2429)
-LexToken(OPENBRACKET,'(',1,2433)
-LexToken(VAR,'size',1,2434)
-LexToken(OPENBRACKET,'(',1,2438)
-LexToken(VAR,'MO',1,2439)
-LexToken(COMMA,',',1,2441)
-LexToken(DQSTRING,'"*"',1,2444)
-LexToken(CLOSEBRACKET,')',1,2445)
-LexToken(COMMA,',',1,2446)
-LexToken(NUMBER,'1',1,2447)
-LexToken(CLOSEBRACKET,')',1,2448)
-LexToken(EOL,'\n',1,2449)
-LexToken(VAR,'x',1,2458)
-LexToken(ASSIGNMENT,'=',1,2459)
-LexToken(VAR,'standard_define',1,2460)
-LexToken(OPENBRACKET,'(',1,2475)
-LexToken(OPENSQBRACKET,'[',1,2476)
-LexToken(NUMBER,'2.1',1,2477)
-LexToken(COMMA,',',1,2480)
-LexToken(NUMBER,'3',1,2481)
-LexToken(CLOSESQBRACKET,']',1,2482)
-LexToken(COMMA,',',1,2483)
-LexToken(VAR,'model',1,2484)
-LexToken(COMMA,',',1,2489)
-LexToken(VAR,'exprs',1,2490)
-LexToken(COMMA,',',1,2495)
-LexToken(VAR,'list',1,2496)
-LexToken(OPENBRACKET,'(',1,2500)
-LexToken(VAR,'gr_i',1,2501)
-LexToken(COMMA,',',1,2505)
-LexToken(NUMBER,'0',1,2506)
-LexToken(CLOSEBRACKET,')',1,2507)
-LexToken(CLOSEBRACKET,')',1,2508)
-LexToken(EOL,'\n',1,2509)
-LexToken(VAR,'x',1,2518)
-LexToken(DOT,'.',1,2519)
-LexToken(VAR,'graphics',1,2520)
-LexToken(DOT,'.',1,2528)
-LexToken(VAR,'in_implicit',1,2529)
-LexToken(ASSIGNMENT,'=',1,2540)
-LexToken(VAR,'Typein',1,2541)
-LexToken(EOL,'\n',1,2547)
-LexToken(VAR,'x',1,2557)
-LexToken(DOT,'.',1,2558)
-LexToken(VAR,'graphics',1,2559)
-LexToken(DOT,'.',1,2567)
-LexToken(VAR,'out_implicit',1,2568)
-LexToken(ASSIGNMENT,'=',1,2580)
-LexToken(VAR,'Typeout',1,2581)
-LexToken(EOL,'\n',1,2588)
-LexToken(END,'end',1,2594)
-LexToken(EOL,'\n',1,2597)
-LexToken(ENDFUNCTION,'endfunction',1,2598)
-LexToken(EOL,'\n',1,2609)
+/* autogenerated from "macros/Electrical/CVS.sci" */
+function CVS() {
+CVS.prototype.get = function CVS() {
+}
+CVS.prototype.set = function CVS() {
+x=arg1;
+graphics=arg1.graphics;
+exprs=graphics.exprs;
+model=arg1.model;
+x=arg1;
+}
+CVS.prototype.define = function CVS() {
+ModelName="CVS";
+PrametersValue=[];
+ParametersName=[];
+model=scicos_model();
+Typein=[];
+Typeout=[];
+MI=[];
+MO=[];
+P=[2,50,1,0,70,98,2,0,70,2,-2,0];
+PortName=["vin","p","n"];
+for(i=1;i<=size(P,"r");i+=1) {
+if (P(i,3)==1) {
+Typein=[Typein,"E"];
+MI=[MI,PortName(i)];
+}
+if (P(i,3)==2) {
+Typein=[Typein,"I"];
+MI=[MI,PortName(i)];
+}
+if (P(i,3)==-1) {
+Typeout=[Typeout,"E"];
+MO=[MO,PortName(i)];
+}
+if (P(i,3)==-2) {
+Typeout=[Typeout,"I"];
+MO=[MO,PortName(i)];
+}
+}
+model=scicos_model();
+mo=modelica();
+model.sim=ModelName;
+mo.inputs=MI;
+mo.outputs=MO;
+model.rpar=PrametersValue;
+mo.parameters=list(ParametersName,PrametersValue,zeros(ParametersName));
+exprs=[];
+gr_i=[];
+model.blocktype="c";
+model.dep_ut=[None,true];
+mo.model=ModelName;
+model.equations=mo;
+model.in=ones(size(MI,"*"),1);
+model.out=ones(size(MO,"*"),1);
+x=standard_define([2.1,3],model,exprs,list(gr_i,0));
+x.graphics.in_implicit=Typein;
+x.graphics.out_implicit=Typeout;
+}
+CVS.prototype.details = function CVS() {
+}
+}
diff --git a/js/Electrical/Capacitor.js b/js/Electrical/Capacitor.js
index 9f950fd9..988e0c92 100644
--- a/js/Electrical/Capacitor.js
+++ b/js/Electrical/Capacitor.js
@@ -1,381 +1,3 @@
-LexToken(EOL,'\n',1,10)
-LexToken(EOL,'\n',1,13)
-LexToken(EOL,'\n',1,73)
-LexToken(EOL,'\n',1,76)
-LexToken(EOL,'\n',1,148)
-LexToken(EOL,'\n',1,220)
-LexToken(EOL,'\n',1,289)
-LexToken(EOL,'\n',1,328)
-LexToken(EOL,'\n',1,331)
-LexToken(EOL,'\n',1,398)
-LexToken(EOL,'\n',1,464)
-LexToken(EOL,'\n',1,529)
-LexToken(EOL,'\n',1,577)
-LexToken(EOL,'\n',1,580)
-LexToken(EOL,'\n',1,649)
-LexToken(EOL,'\n',1,712)
-LexToken(EOL,'\n',1,794)
-LexToken(EOL,'\n',1,797)
-LexToken(EOL,'\n',1,828)
-LexToken(EOL,'\n',1,831)
-LexToken(EOL,'\n',1,832)
-LexToken(FUNCTION,'function',1,833)
-LexToken(OPENSQBRACKET,'[',1,842)
-LexToken(VAR,'x',1,843)
-LexToken(COMMA,',',1,844)
-LexToken(VAR,'y',1,845)
-LexToken(COMMA,',',1,846)
-LexToken(VAR,'typ',1,847)
-LexToken(CLOSESQBRACKET,']',1,850)
-LexToken(ASSIGNMENT,'=',1,851)
-LexToken(VAR,'Capacitor',1,852)
-LexToken(OPENBRACKET,'(',1,861)
-LexToken(VAR,'job',1,862)
-LexToken(COMMA,',',1,865)
-LexToken(VAR,'arg1',1,866)
-LexToken(COMMA,',',1,870)
-LexToken(VAR,'arg2',1,871)
-LexToken(CLOSEBRACKET,')',1,875)
-LexToken(EOL,'\n',1,876)
-LexToken(EOL,'\n',1,911)
-LexToken(EOL,'\n',1,964)
-LexToken(EOL,'\n',1,1041)
-LexToken(EOL,'\n',1,1092)
-LexToken(VAR,'x',1,1097)
-LexToken(ASSIGNMENT,'=',1,1098)
-LexToken(OPENSQBRACKET,'[',1,1099)
-LexToken(CLOSESQBRACKET,']',1,1100)
-LexToken(EOL,'\n',1,1101)
-LexToken(VAR,'y',1,1107)
-LexToken(ASSIGNMENT,'=',1,1108)
-LexToken(OPENSQBRACKET,'[',1,1109)
-LexToken(CLOSESQBRACKET,']',1,1110)
-LexToken(EOL,'\n',1,1111)
-LexToken(VAR,'typ',1,1117)
-LexToken(ASSIGNMENT,'=',1,1120)
-LexToken(OPENSQBRACKET,'[',1,1121)
-LexToken(CLOSESQBRACKET,']',1,1122)
-LexToken(EOL,'\n',1,1123)
-LexToken(SELECT,'select',1,1129)
-LexToken(VAR,'job',1,1136)
-LexToken(EOL,'\n',1,1139)
-LexToken(CASE,'case',1,1144)
-LexToken(DQSTRING,'"set"',1,1153)
-LexToken(THEN,'then',1,1155)
-LexToken(EOL,'\n',1,1159)
-LexToken(VAR,'x',1,1168)
-LexToken(ASSIGNMENT,'=',1,1169)
-LexToken(VAR,'arg1',1,1170)
-LexToken(EOL,'\n',1,1174)
-LexToken(VAR,'graphics',1,1184)
-LexToken(ASSIGNMENT,'=',1,1192)
-LexToken(VAR,'arg1',1,1193)
-LexToken(DOT,'.',1,1197)
-LexToken(VAR,'graphics',1,1198)
-LexToken(EOL,'\n',1,1206)
-LexToken(VAR,'exprs',1,1216)
-LexToken(ASSIGNMENT,'=',1,1221)
-LexToken(VAR,'graphics',1,1222)
-LexToken(DOT,'.',1,1230)
-LexToken(VAR,'exprs',1,1231)
-LexToken(EOL,'\n',1,1236)
-LexToken(VAR,'model',1,1245)
-LexToken(ASSIGNMENT,'=',1,1250)
-LexToken(VAR,'arg1',1,1251)
-LexToken(DOT,'.',1,1255)
-LexToken(VAR,'model',1,1256)
-LexToken(EOL,'\n',1,1261)
-LexToken(WHILE,'while',1,1271)
-LexToken(PREVAR_BOOLEAN,'%t',1,1277)
-LexToken(DO,'do',1,1280)
-LexToken(EOL,'\n',1,1282)
-LexToken(OPENSQBRACKET,'[',1,1295)
-LexToken(VAR,'ok',1,1296)
-LexToken(COMMA,',',1,1298)
-LexToken(VAR,'C',1,1299)
-LexToken(COMMA,',',1,1300)
-LexToken(VAR,'v',1,1301)
-LexToken(COMMA,',',1,1302)
-LexToken(VAR,'exprs',1,1303)
-LexToken(CLOSESQBRACKET,']',1,1308)
-LexToken(ASSIGNMENT,'=',1,1309)
-LexToken(SCICOS_GETVALUE,'scicos_getvalue',1,1310)
-LexToken(OPENBRACKET,'(',1,1325)
-LexToken(DQSTRING,'"Set Capacitor block parameter"',1,1356)
-LexToken(COMMA,',',1,1357)
-LexToken(OPENSQBRACKET,'[',1,1373)
-LexToken(DQSTRING,'"C (F)"',1,1380)
-LexToken(SEMICOLON,';',1,1381)
-LexToken(DQSTRING,'"Initial Voltage"',1,1398)
-LexToken(CLOSESQBRACKET,']',1,1399)
-LexToken(COMMA,',',1,1400)
-LexToken(VAR,'list',1,1401)
-LexToken(OPENBRACKET,'(',1,1405)
-LexToken(DQSTRING,'"vec"',1,1410)
-LexToken(COMMA,',',1,1411)
-LexToken(NUMBER,'1',1,1412)
-LexToken(COMMA,',',1,1413)
-LexToken(DQSTRING,'"vec"',1,1418)
-LexToken(COMMA,',',1,1419)
-LexToken(NUMBER,'1',1,1420)
-LexToken(CLOSEBRACKET,')',1,1421)
-LexToken(COMMA,',',1,1422)
-LexToken(VAR,'exprs',1,1423)
-LexToken(CLOSEBRACKET,')',1,1428)
-LexToken(EOL,'\n',1,1429)
-LexToken(IF,'if',1,1442)
-LexToken(NOT,'~',1,1445)
-LexToken(VAR,'ok',1,1446)
-LexToken(THEN,'then',1,1449)
-LexToken(EOL,'\n',1,1453)
-LexToken(BREAK,'break',1,1470)
-LexToken(EOL,'\n',1,1475)
-LexToken(END,'end',1,1489)
-LexToken(EOL,'\n',1,1492)
-LexToken(VAR,'model',1,1505)
-LexToken(DOT,'.',1,1510)
-LexToken(VAR,'rpar',1,1511)
-LexToken(ASSIGNMENT,'=',1,1515)
-LexToken(VAR,'C',1,1516)
-LexToken(EOL,'\n',1,1517)
-LexToken(VAR,'model',1,1530)
-LexToken(DOT,'.',1,1535)
-LexToken(VAR,'equations',1,1536)
-LexToken(DOT,'.',1,1545)
-LexToken(VAR,'parameters',1,1546)
-LexToken(OPENBRACKET,'(',1,1556)
-LexToken(NUMBER,'2',1,1557)
-LexToken(CLOSEBRACKET,')',1,1558)
-LexToken(ASSIGNMENT,'=',1,1559)
-LexToken(VAR,'list',1,1560)
-LexToken(OPENBRACKET,'(',1,1564)
-LexToken(VAR,'C',1,1565)
-LexToken(COMMA,',',1,1566)
-LexToken(VAR,'v',1,1567)
-LexToken(CLOSEBRACKET,')',1,1568)
-LexToken(EOL,'\n',1,1569)
-LexToken(VAR,'graphics',1,1582)
-LexToken(DOT,'.',1,1590)
-LexToken(VAR,'exprs',1,1591)
-LexToken(ASSIGNMENT,'=',1,1596)
-LexToken(VAR,'exprs',1,1597)
-LexToken(EOL,'\n',1,1602)
-LexToken(VAR,'x',1,1615)
-LexToken(DOT,'.',1,1616)
-LexToken(VAR,'graphics',1,1617)
-LexToken(ASSIGNMENT,'=',1,1625)
-LexToken(VAR,'graphics',1,1626)
-LexToken(EOL,'\n',1,1634)
-LexToken(VAR,'x',1,1648)
-LexToken(DOT,'.',1,1649)
-LexToken(VAR,'model',1,1650)
-LexToken(ASSIGNMENT,'=',1,1655)
-LexToken(VAR,'model',1,1656)
-LexToken(EOL,'\n',1,1661)
-LexToken(BREAK,'break',1,1674)
-LexToken(EOL,'\n',1,1679)
-LexToken(END,'end',1,1688)
-LexToken(EOL,'\n',1,1691)
-LexToken(CASE,'case',1,1696)
-LexToken(DQSTRING,'"define"',1,1708)
-LexToken(THEN,'then',1,1710)
-LexToken(EOL,'\n',1,1714)
-LexToken(VAR,'model',1,1723)
-LexToken(ASSIGNMENT,'=',1,1728)
-LexToken(SCICOS_MODEL,'scicos_model',1,1729)
-LexToken(OPENBRACKET,'(',1,1741)
-LexToken(CLOSEBRACKET,')',1,1742)
-LexToken(EOL,'\n',1,1743)
-LexToken(VAR,'C',1,1752)
-LexToken(ASSIGNMENT,'=',1,1753)
-LexToken(NUMBER,'0.01',1,1754)
-LexToken(COMMA,',',1,1758)
-LexToken(VAR,'v',1,1759)
-LexToken(ASSIGNMENT,'=',1,1760)
-LexToken(NUMBER,'0',1,1761)
-LexToken(EOL,'\n',1,1762)
-LexToken(VAR,'model',1,1771)
-LexToken(DOT,'.',1,1776)
-LexToken(VAR,'rpar',1,1777)
-LexToken(ASSIGNMENT,'=',1,1781)
-LexToken(OPENSQBRACKET,'[',1,1782)
-LexToken(VAR,'C',1,1783)
-LexToken(SEMICOLON,';',1,1784)
-LexToken(VAR,'v',1,1785)
-LexToken(CLOSESQBRACKET,']',1,1786)
-LexToken(EOL,'\n',1,1787)
-LexToken(VAR,'model',1,1796)
-LexToken(DOT,'.',1,1801)
-LexToken(VAR,'sim',1,1802)
-LexToken(ASSIGNMENT,'=',1,1805)
-LexToken(DQSTRING,'"Capacitor"',1,1816)
-LexToken(EOL,'\n',1,1817)
-LexToken(VAR,'model',1,1826)
-LexToken(DOT,'.',1,1831)
-LexToken(VAR,'blocktype',1,1832)
-LexToken(ASSIGNMENT,'=',1,1841)
-LexToken(DQSTRING,'"c"',1,1844)
-LexToken(EOL,'\n',1,1845)
-LexToken(VAR,'model',1,1854)
-LexToken(DOT,'.',1,1859)
-LexToken(VAR,'dep_ut',1,1860)
-LexToken(ASSIGNMENT,'=',1,1866)
-LexToken(OPENSQBRACKET,'[',1,1867)
-LexToken(PREVAR_BOOLEAN,'%t',1,1868)
-LexToken(PREVAR_BOOLEAN,'%f',1,1871)
-LexToken(CLOSESQBRACKET,']',1,1873)
-LexToken(EOL,'\n',1,1874)
-LexToken(VAR,'mo',1,1883)
-LexToken(ASSIGNMENT,'=',1,1885)
-LexToken(VAR,'modelica',1,1886)
-LexToken(OPENBRACKET,'(',1,1894)
-LexToken(CLOSEBRACKET,')',1,1895)
-LexToken(EOL,'\n',1,1896)
-LexToken(VAR,'mo',1,1905)
-LexToken(DOT,'.',1,1907)
-LexToken(VAR,'model',1,1908)
-LexToken(ASSIGNMENT,'=',1,1913)
-LexToken(DQSTRING,'"Capacitor"',1,1924)
-LexToken(EOL,'\n',1,1925)
-LexToken(VAR,'mo',1,1934)
-LexToken(DOT,'.',1,1936)
-LexToken(VAR,'inputs',1,1937)
-LexToken(ASSIGNMENT,'=',1,1943)
-LexToken(DQSTRING,'"p"',1,1946)
-LexToken(EOL,'\n',1,1947)
-LexToken(VAR,'mo',1,1957)
-LexToken(DOT,'.',1,1959)
-LexToken(VAR,'outputs',1,1960)
-LexToken(ASSIGNMENT,'=',1,1967)
-LexToken(DQSTRING,'"n"',1,1970)
-LexToken(EOL,'\n',1,1971)
-LexToken(VAR,'mo',1,1981)
-LexToken(DOT,'.',1,1983)
-LexToken(VAR,'parameters',1,1984)
-LexToken(ASSIGNMENT,'=',1,1994)
-LexToken(VAR,'list',1,1995)
-LexToken(OPENBRACKET,'(',1,1999)
-LexToken(OPENSQBRACKET,'[',1,2000)
-LexToken(DQSTRING,'"C"',1,2003)
-LexToken(COMMA,',',1,2004)
-LexToken(DQSTRING,'"v"',1,2007)
-LexToken(CLOSESQBRACKET,']',1,2008)
-LexToken(COMMA,',',1,2009)
-LexToken(VAR,'list',1,2010)
-LexToken(OPENBRACKET,'(',1,2014)
-LexToken(VAR,'C',1,2015)
-LexToken(COMMA,',',1,2016)
-LexToken(VAR,'v',1,2017)
-LexToken(CLOSEBRACKET,')',1,2018)
-LexToken(COMMA,',',1,2019)
-LexToken(OPENSQBRACKET,'[',1,2020)
-LexToken(NUMBER,'0',1,2021)
-LexToken(COMMA,',',1,2022)
-LexToken(NUMBER,'1',1,2023)
-LexToken(CLOSESQBRACKET,']',1,2024)
-LexToken(CLOSEBRACKET,')',1,2025)
-LexToken(EOL,'\n',1,2026)
-LexToken(VAR,'model',1,2035)
-LexToken(DOT,'.',1,2040)
-LexToken(VAR,'equations',1,2041)
-LexToken(ASSIGNMENT,'=',1,2050)
-LexToken(VAR,'mo',1,2051)
-LexToken(EOL,'\n',1,2053)
-LexToken(VAR,'model',1,2062)
-LexToken(DOT,'.',1,2067)
-LexToken(VAR,'in',1,2068)
-LexToken(ASSIGNMENT,'=',1,2070)
-LexToken(VAR,'ones',1,2071)
-LexToken(OPENBRACKET,'(',1,2075)
-LexToken(VAR,'size',1,2076)
-LexToken(OPENBRACKET,'(',1,2080)
-LexToken(VAR,'mo',1,2081)
-LexToken(DOT,'.',1,2083)
-LexToken(VAR,'inputs',1,2084)
-LexToken(COMMA,',',1,2090)
-LexToken(DQSTRING,'"*"',1,2093)
-LexToken(CLOSEBRACKET,')',1,2094)
-LexToken(COMMA,',',1,2095)
-LexToken(NUMBER,'1',1,2096)
-LexToken(CLOSEBRACKET,')',1,2097)
-LexToken(EOL,'\n',1,2098)
-LexToken(VAR,'model',1,2107)
-LexToken(DOT,'.',1,2112)
-LexToken(VAR,'out',1,2113)
-LexToken(ASSIGNMENT,'=',1,2116)
-LexToken(VAR,'ones',1,2117)
-LexToken(OPENBRACKET,'(',1,2121)
-LexToken(VAR,'size',1,2122)
-LexToken(OPENBRACKET,'(',1,2126)
-LexToken(VAR,'mo',1,2127)
-LexToken(DOT,'.',1,2129)
-LexToken(VAR,'outputs',1,2130)
-LexToken(COMMA,',',1,2137)
-LexToken(DQSTRING,'"*"',1,2140)
-LexToken(CLOSEBRACKET,')',1,2141)
-LexToken(COMMA,',',1,2142)
-LexToken(NUMBER,'1',1,2143)
-LexToken(CLOSEBRACKET,')',1,2144)
-LexToken(EOL,'\n',1,2145)
-LexToken(EOL,'\n',1,2146)
-LexToken(VAR,'exprs',1,2155)
-LexToken(ASSIGNMENT,'=',1,2160)
-LexToken(VAR,'string',1,2161)
-LexToken(OPENBRACKET,'(',1,2167)
-LexToken(OPENSQBRACKET,'[',1,2168)
-LexToken(VAR,'C',1,2169)
-LexToken(SEMICOLON,';',1,2170)
-LexToken(VAR,'v',1,2171)
-LexToken(CLOSESQBRACKET,']',1,2172)
-LexToken(CLOSEBRACKET,')',1,2173)
-LexToken(EOL,'\n',1,2174)
-LexToken(VAR,'gr_i',1,2183)
-LexToken(ASSIGNMENT,'=',1,2187)
-LexToken(OPENSQBRACKET,'[',1,2188)
-LexToken(CLOSESQBRACKET,']',1,2189)
-LexToken(EOL,'\n',1,2190)
-LexToken(VAR,'x',1,2200)
-LexToken(ASSIGNMENT,'=',1,2201)
-LexToken(VAR,'standard_define',1,2202)
-LexToken(OPENBRACKET,'(',1,2217)
-LexToken(OPENSQBRACKET,'[',1,2218)
-LexToken(NUMBER,'2',1,2219)
-LexToken(NUMBER,'1.1',1,2221)
-LexToken(CLOSESQBRACKET,']',1,2224)
-LexToken(COMMA,',',1,2225)
-LexToken(VAR,'model',1,2226)
-LexToken(COMMA,',',1,2231)
-LexToken(VAR,'exprs',1,2232)
-LexToken(COMMA,',',1,2237)
-LexToken(VAR,'list',1,2238)
-LexToken(OPENBRACKET,'(',1,2242)
-LexToken(VAR,'gr_i',1,2243)
-LexToken(COMMA,',',1,2247)
-LexToken(NUMBER,'0',1,2248)
-LexToken(CLOSEBRACKET,')',1,2249)
-LexToken(CLOSEBRACKET,')',1,2250)
-LexToken(EOL,'\n',1,2251)
-LexToken(VAR,'x',1,2260)
-LexToken(DOT,'.',1,2261)
-LexToken(VAR,'graphics',1,2262)
-LexToken(DOT,'.',1,2270)
-LexToken(VAR,'in_implicit',1,2271)
-LexToken(ASSIGNMENT,'=',1,2282)
-LexToken(OPENSQBRACKET,'[',1,2283)
-LexToken(DQSTRING,'"I"',1,2286)
-LexToken(CLOSESQBRACKET,']',1,2287)
-LexToken(EOL,'\n',1,2288)
-LexToken(VAR,'x',1,2297)
-LexToken(DOT,'.',1,2298)
-LexToken(VAR,'graphics',1,2299)
-LexToken(DOT,'.',1,2307)
-LexToken(VAR,'out_implicit',1,2308)
-LexToken(ASSIGNMENT,'=',1,2320)
-LexToken(OPENSQBRACKET,'[',1,2321)
-LexToken(DQSTRING,'"I"',1,2324)
-LexToken(CLOSESQBRACKET,']',1,2325)
-LexToken(EOL,'\n',1,2326)
-LexToken(END,'end',1,2331)
-LexToken(EOL,'\n',1,2334)
-LexToken(ENDFUNCTION,'endfunction',1,2335)
-LexToken(EOL,'\n',1,2346)
+Syntax error in input LexToken(COMMA,',',1,1758)
+/* autogenerated from "macros/Electrical/Capacitor.sci" */
+None
diff --git a/js/Electrical/ConstantVoltage.js b/js/Electrical/ConstantVoltage.js
index fc108ceb..9820e4fc 100644
--- a/js/Electrical/ConstantVoltage.js
+++ b/js/Electrical/ConstantVoltage.js
@@ -1,320 +1,46 @@
-LexToken(EOL,'\n',1,10)
-LexToken(EOL,'\n',1,13)
-LexToken(EOL,'\n',1,73)
-LexToken(EOL,'\n',1,76)
-LexToken(EOL,'\n',1,148)
-LexToken(EOL,'\n',1,220)
-LexToken(EOL,'\n',1,289)
-LexToken(EOL,'\n',1,328)
-LexToken(EOL,'\n',1,331)
-LexToken(EOL,'\n',1,398)
-LexToken(EOL,'\n',1,464)
-LexToken(EOL,'\n',1,529)
-LexToken(EOL,'\n',1,577)
-LexToken(EOL,'\n',1,580)
-LexToken(EOL,'\n',1,649)
-LexToken(EOL,'\n',1,712)
-LexToken(EOL,'\n',1,794)
-LexToken(EOL,'\n',1,797)
-LexToken(EOL,'\n',1,828)
-LexToken(EOL,'\n',1,831)
-LexToken(EOL,'\n',1,832)
-LexToken(FUNCTION,'function',1,833)
-LexToken(OPENSQBRACKET,'[',1,842)
-LexToken(VAR,'x',1,843)
-LexToken(COMMA,',',1,844)
-LexToken(VAR,'y',1,845)
-LexToken(COMMA,',',1,846)
-LexToken(VAR,'typ',1,847)
-LexToken(CLOSESQBRACKET,']',1,850)
-LexToken(ASSIGNMENT,'=',1,851)
-LexToken(VAR,'ConstantVoltage',1,852)
-LexToken(OPENBRACKET,'(',1,867)
-LexToken(VAR,'job',1,868)
-LexToken(COMMA,',',1,871)
-LexToken(VAR,'arg1',1,872)
-LexToken(COMMA,',',1,876)
-LexToken(VAR,'arg2',1,877)
-LexToken(CLOSEBRACKET,')',1,881)
-LexToken(EOL,'\n',1,882)
-LexToken(VAR,'x',1,887)
-LexToken(ASSIGNMENT,'=',1,888)
-LexToken(OPENSQBRACKET,'[',1,889)
-LexToken(CLOSESQBRACKET,']',1,890)
-LexToken(EOL,'\n',1,891)
-LexToken(VAR,'y',1,897)
-LexToken(ASSIGNMENT,'=',1,898)
-LexToken(OPENSQBRACKET,'[',1,899)
-LexToken(CLOSESQBRACKET,']',1,900)
-LexToken(EOL,'\n',1,901)
-LexToken(VAR,'typ',1,907)
-LexToken(ASSIGNMENT,'=',1,910)
-LexToken(OPENSQBRACKET,'[',1,911)
-LexToken(CLOSESQBRACKET,']',1,912)
-LexToken(EOL,'\n',1,913)
-LexToken(SELECT,'select',1,919)
-LexToken(VAR,'job',1,926)
-LexToken(EOL,'\n',1,929)
-LexToken(CASE,'case',1,934)
-LexToken(DQSTRING,'"set"',1,943)
-LexToken(THEN,'then',1,945)
-LexToken(EOL,'\n',1,949)
-LexToken(VAR,'x',1,958)
-LexToken(ASSIGNMENT,'=',1,959)
-LexToken(VAR,'arg1',1,960)
-LexToken(EOL,'\n',1,964)
-LexToken(VAR,'graphics',1,974)
-LexToken(ASSIGNMENT,'=',1,982)
-LexToken(VAR,'arg1',1,983)
-LexToken(DOT,'.',1,987)
-LexToken(VAR,'graphics',1,988)
-LexToken(EOL,'\n',1,996)
-LexToken(VAR,'exprs',1,1006)
-LexToken(ASSIGNMENT,'=',1,1011)
-LexToken(VAR,'graphics',1,1012)
-LexToken(DOT,'.',1,1020)
-LexToken(VAR,'exprs',1,1021)
-LexToken(EOL,'\n',1,1026)
-LexToken(VAR,'model',1,1035)
-LexToken(ASSIGNMENT,'=',1,1040)
-LexToken(VAR,'arg1',1,1041)
-LexToken(DOT,'.',1,1045)
-LexToken(VAR,'model',1,1046)
-LexToken(EOL,'\n',1,1051)
-LexToken(WHILE,'while',1,1061)
-LexToken(PREVAR_BOOLEAN,'%t',1,1067)
-LexToken(DO,'do',1,1070)
-LexToken(EOL,'\n',1,1072)
-LexToken(OPENSQBRACKET,'[',1,1085)
-LexToken(VAR,'ok',1,1086)
-LexToken(COMMA,',',1,1088)
-LexToken(VAR,'V',1,1089)
-LexToken(COMMA,',',1,1090)
-LexToken(VAR,'exprs',1,1091)
-LexToken(CLOSESQBRACKET,']',1,1096)
-LexToken(ASSIGNMENT,'=',1,1097)
-LexToken(SCICOS_GETVALUE,'scicos_getvalue',1,1098)
-LexToken(OPENBRACKET,'(',1,1113)
-LexToken(DQSTRING,'"Set ConstantVoltage block parameter"',1,1150)
-LexToken(COMMA,',',1,1151)
-LexToken(DQSTRING,'"V (volt)"',1,1176)
-LexToken(COMMA,',',1,1177)
-LexToken(VAR,'list',1,1178)
-LexToken(OPENBRACKET,'(',1,1182)
-LexToken(DQSTRING,'"vec"',1,1187)
-LexToken(COMMA,',',1,1188)
-LexToken(NUMBER,'1',1,1189)
-LexToken(CLOSEBRACKET,')',1,1190)
-LexToken(COMMA,',',1,1191)
-LexToken(VAR,'exprs',1,1192)
-LexToken(CLOSEBRACKET,')',1,1197)
-LexToken(EOL,'\n',1,1198)
-LexToken(IF,'if',1,1211)
-LexToken(NOT,'~',1,1214)
-LexToken(VAR,'ok',1,1215)
-LexToken(THEN,'then',1,1218)
-LexToken(EOL,'\n',1,1222)
-LexToken(BREAK,'break',1,1239)
-LexToken(EOL,'\n',1,1244)
-LexToken(END,'end',1,1258)
-LexToken(EOL,'\n',1,1261)
-LexToken(VAR,'model',1,1274)
-LexToken(DOT,'.',1,1279)
-LexToken(VAR,'rpar',1,1280)
-LexToken(ASSIGNMENT,'=',1,1284)
-LexToken(VAR,'V',1,1285)
-LexToken(EOL,'\n',1,1286)
-LexToken(VAR,'model',1,1299)
-LexToken(DOT,'.',1,1304)
-LexToken(VAR,'equations',1,1305)
-LexToken(DOT,'.',1,1314)
-LexToken(VAR,'parameters',1,1315)
-LexToken(OPENBRACKET,'(',1,1325)
-LexToken(NUMBER,'2',1,1326)
-LexToken(CLOSEBRACKET,')',1,1327)
-LexToken(ASSIGNMENT,'=',1,1328)
-LexToken(VAR,'list',1,1329)
-LexToken(OPENBRACKET,'(',1,1333)
-LexToken(VAR,'V',1,1334)
-LexToken(CLOSEBRACKET,')',1,1335)
-LexToken(EOL,'\n',1,1336)
-LexToken(VAR,'graphics',1,1349)
-LexToken(DOT,'.',1,1357)
-LexToken(VAR,'exprs',1,1358)
-LexToken(ASSIGNMENT,'=',1,1363)
-LexToken(VAR,'exprs',1,1364)
-LexToken(EOL,'\n',1,1369)
-LexToken(VAR,'x',1,1382)
-LexToken(DOT,'.',1,1383)
-LexToken(VAR,'graphics',1,1384)
-LexToken(ASSIGNMENT,'=',1,1392)
-LexToken(VAR,'graphics',1,1393)
-LexToken(EOL,'\n',1,1401)
-LexToken(VAR,'x',1,1415)
-LexToken(DOT,'.',1,1416)
-LexToken(VAR,'model',1,1417)
-LexToken(ASSIGNMENT,'=',1,1422)
-LexToken(VAR,'model',1,1423)
-LexToken(EOL,'\n',1,1428)
-LexToken(BREAK,'break',1,1441)
-LexToken(EOL,'\n',1,1446)
-LexToken(END,'end',1,1455)
-LexToken(EOL,'\n',1,1458)
-LexToken(EOL,'\n',1,1459)
-LexToken(CASE,'case',1,1464)
-LexToken(DQSTRING,'"define"',1,1476)
-LexToken(THEN,'then',1,1478)
-LexToken(EOL,'\n',1,1482)
-LexToken(VAR,'V',1,1491)
-LexToken(ASSIGNMENT,'=',1,1492)
-LexToken(NUMBER,'0.01',1,1493)
-LexToken(EOL,'\n',1,1497)
-LexToken(EOL,'\n',1,1498)
-LexToken(VAR,'model',1,1507)
-LexToken(ASSIGNMENT,'=',1,1512)
-LexToken(SCICOS_MODEL,'scicos_model',1,1513)
-LexToken(OPENBRACKET,'(',1,1525)
-LexToken(CLOSEBRACKET,')',1,1526)
-LexToken(EOL,'\n',1,1527)
-LexToken(VAR,'model',1,1536)
-LexToken(DOT,'.',1,1541)
-LexToken(VAR,'rpar',1,1542)
-LexToken(ASSIGNMENT,'=',1,1546)
-LexToken(VAR,'V',1,1547)
-LexToken(EOL,'\n',1,1548)
-LexToken(VAR,'model',1,1557)
-LexToken(DOT,'.',1,1562)
-LexToken(VAR,'in',1,1563)
-LexToken(ASSIGNMENT,'=',1,1565)
-LexToken(NUMBER,'1',1,1566)
-LexToken(SEMICOLON,';',1,1567)
-LexToken(VAR,'model',1,1568)
-LexToken(DOT,'.',1,1573)
-LexToken(VAR,'out',1,1574)
-LexToken(ASSIGNMENT,'=',1,1577)
-LexToken(NUMBER,'1',1,1578)
-LexToken(EOL,'\n',1,1579)
-LexToken(VAR,'model',1,1589)
-LexToken(DOT,'.',1,1594)
-LexToken(VAR,'sim',1,1595)
-LexToken(ASSIGNMENT,'=',1,1598)
-LexToken(DQSTRING,'"ConstantVoltage"',1,1615)
-LexToken(EOL,'\n',1,1616)
-LexToken(VAR,'model',1,1626)
-LexToken(DOT,'.',1,1631)
-LexToken(VAR,'blocktype',1,1632)
-LexToken(ASSIGNMENT,'=',1,1641)
-LexToken(DQSTRING,'"c"',1,1644)
-LexToken(EOL,'\n',1,1645)
-LexToken(VAR,'model',1,1654)
-LexToken(DOT,'.',1,1659)
-LexToken(VAR,'dep_ut',1,1660)
-LexToken(ASSIGNMENT,'=',1,1666)
-LexToken(OPENSQBRACKET,'[',1,1667)
-LexToken(PREVAR_BOOLEAN,'%f',1,1668)
-LexToken(PREVAR_BOOLEAN,'%f',1,1671)
-LexToken(CLOSESQBRACKET,']',1,1673)
-LexToken(EOL,'\n',1,1674)
-LexToken(VAR,'mo',1,1683)
-LexToken(ASSIGNMENT,'=',1,1685)
-LexToken(VAR,'modelica',1,1686)
-LexToken(OPENBRACKET,'(',1,1694)
-LexToken(CLOSEBRACKET,')',1,1695)
-LexToken(EOL,'\n',1,1696)
-LexToken(VAR,'mo',1,1705)
-LexToken(DOT,'.',1,1707)
-LexToken(VAR,'model',1,1708)
-LexToken(ASSIGNMENT,'=',1,1713)
-LexToken(DQSTRING,'"ConstantVoltage"',1,1730)
-LexToken(EOL,'\n',1,1731)
-LexToken(VAR,'mo',1,1741)
-LexToken(DOT,'.',1,1743)
-LexToken(VAR,'inputs',1,1744)
-LexToken(ASSIGNMENT,'=',1,1750)
-LexToken(DQSTRING,'"p"',1,1753)
-LexToken(EOL,'\n',1,1754)
-LexToken(VAR,'mo',1,1764)
-LexToken(DOT,'.',1,1766)
-LexToken(VAR,'outputs',1,1767)
-LexToken(ASSIGNMENT,'=',1,1774)
-LexToken(DQSTRING,'"n"',1,1777)
-LexToken(EOL,'\n',1,1778)
-LexToken(VAR,'mo',1,1788)
-LexToken(DOT,'.',1,1790)
-LexToken(VAR,'parameters',1,1791)
-LexToken(ASSIGNMENT,'=',1,1801)
-LexToken(VAR,'list',1,1802)
-LexToken(OPENBRACKET,'(',1,1806)
-LexToken(DQSTRING,'"V"',1,1809)
-LexToken(COMMA,',',1,1810)
-LexToken(VAR,'list',1,1811)
-LexToken(OPENBRACKET,'(',1,1815)
-LexToken(VAR,'V',1,1816)
-LexToken(CLOSEBRACKET,')',1,1817)
-LexToken(CLOSEBRACKET,')',1,1818)
-LexToken(EOL,'\n',1,1819)
-LexToken(VAR,'model',1,1828)
-LexToken(DOT,'.',1,1833)
-LexToken(VAR,'equations',1,1834)
-LexToken(ASSIGNMENT,'=',1,1843)
-LexToken(VAR,'mo',1,1844)
-LexToken(EOL,'\n',1,1846)
-LexToken(VAR,'exprs',1,1855)
-LexToken(ASSIGNMENT,'=',1,1860)
-LexToken(VAR,'string',1,1861)
-LexToken(OPENBRACKET,'(',1,1867)
-LexToken(VAR,'V',1,1868)
-LexToken(CLOSEBRACKET,')',1,1869)
-LexToken(EOL,'\n',1,1870)
-LexToken(EOL,'\n',1,1871)
-LexToken(VAR,'gr_i',1,1880)
-LexToken(ASSIGNMENT,'=',1,1884)
-LexToken(OPENSQBRACKET,'[',1,1885)
-LexToken(CLOSESQBRACKET,']',1,1886)
-LexToken(EOL,'\n',1,1887)
-LexToken(EOL,'\n',1,1888)
-LexToken(VAR,'x',1,1897)
-LexToken(ASSIGNMENT,'=',1,1898)
-LexToken(VAR,'standard_define',1,1899)
-LexToken(OPENBRACKET,'(',1,1914)
-LexToken(OPENSQBRACKET,'[',1,1915)
-LexToken(NUMBER,'1.5',1,1916)
-LexToken(NUMBER,'1.1',1,1920)
-LexToken(CLOSESQBRACKET,']',1,1923)
-LexToken(COMMA,',',1,1924)
-LexToken(VAR,'model',1,1925)
-LexToken(COMMA,',',1,1930)
-LexToken(VAR,'exprs',1,1931)
-LexToken(COMMA,',',1,1936)
-LexToken(VAR,'list',1,1937)
-LexToken(OPENBRACKET,'(',1,1941)
-LexToken(VAR,'gr_i',1,1942)
-LexToken(COMMA,',',1,1946)
-LexToken(NUMBER,'0',1,1947)
-LexToken(CLOSEBRACKET,')',1,1948)
-LexToken(CLOSEBRACKET,')',1,1949)
-LexToken(EOL,'\n',1,1950)
-LexToken(VAR,'x',1,1959)
-LexToken(DOT,'.',1,1960)
-LexToken(VAR,'graphics',1,1961)
-LexToken(DOT,'.',1,1969)
-LexToken(VAR,'in_implicit',1,1970)
-LexToken(ASSIGNMENT,'=',1,1981)
-LexToken(OPENSQBRACKET,'[',1,1982)
-LexToken(DQSTRING,'"I"',1,1985)
-LexToken(CLOSESQBRACKET,']',1,1986)
-LexToken(EOL,'\n',1,1987)
-LexToken(VAR,'x',1,1996)
-LexToken(DOT,'.',1,1997)
-LexToken(VAR,'graphics',1,1998)
-LexToken(DOT,'.',1,2006)
-LexToken(VAR,'out_implicit',1,2007)
-LexToken(ASSIGNMENT,'=',1,2019)
-LexToken(OPENSQBRACKET,'[',1,2020)
-LexToken(DQSTRING,'"I"',1,2023)
-LexToken(CLOSESQBRACKET,']',1,2024)
-LexToken(EOL,'\n',1,2025)
-LexToken(END,'end',1,2030)
-LexToken(EOL,'\n',1,2033)
-LexToken(ENDFUNCTION,'endfunction',1,2034)
-LexToken(EOL,'\n',1,2045)
+/* autogenerated from "macros/Electrical/ConstantVoltage.sci" */
+function ConstantVoltage() {
+ConstantVoltage.prototype.get = function ConstantVoltage() {
+}
+ConstantVoltage.prototype.set = function ConstantVoltage() {
+x=arg1;
+graphics=arg1.graphics;
+exprs=graphics.exprs;
+model=arg1.model;
+while (true) {
+[ok,V,exprs]=scicos_getvalue("Set ConstantVoltage block parameter","V (volt)",list("vec",1),exprs);
+if (!ok) {
+break
+}
+model.rpar=V;
+model.equations.parameters[2]=list(V);
+graphics.exprs=exprs;
+x.graphics=graphics;
+x.model=model;
+break
+}
+}
+ConstantVoltage.prototype.define = function ConstantVoltage() {
+V=0.01;
+model=scicos_model();
+model.rpar=V;
+model.in=1;
+model.out=1;
+model.sim="ConstantVoltage";
+model.blocktype="c";
+model.dep_ut=[None,None];
+mo=modelica();
+mo.model="ConstantVoltage";
+mo.inputs="p";
+mo.outputs="n";
+mo.parameters=list("V",list(V));
+model.equations=mo;
+exprs=string(V);
+gr_i=[];
+x=standard_define([1.5,1.1],model,exprs,list(gr_i,0));
+x.graphics.in_implicit=["I"];
+x.graphics.out_implicit=["I"];
+}
+ConstantVoltage.prototype.details = function ConstantVoltage() {
+}
+}
diff --git a/js/Electrical/CurrentSensor.js b/js/Electrical/CurrentSensor.js
index 5ab1b265..ac8063d1 100644
--- a/js/Electrical/CurrentSensor.js
+++ b/js/Electrical/CurrentSensor.js
@@ -1,203 +1,28 @@
-LexToken(EOL,'\n',1,10)
-LexToken(EOL,'\n',1,13)
-LexToken(EOL,'\n',1,73)
-LexToken(EOL,'\n',1,76)
-LexToken(EOL,'\n',1,148)
-LexToken(EOL,'\n',1,220)
-LexToken(EOL,'\n',1,289)
-LexToken(EOL,'\n',1,328)
-LexToken(EOL,'\n',1,331)
-LexToken(EOL,'\n',1,398)
-LexToken(EOL,'\n',1,464)
-LexToken(EOL,'\n',1,529)
-LexToken(EOL,'\n',1,577)
-LexToken(EOL,'\n',1,580)
-LexToken(EOL,'\n',1,649)
-LexToken(EOL,'\n',1,712)
-LexToken(EOL,'\n',1,794)
-LexToken(EOL,'\n',1,797)
-LexToken(EOL,'\n',1,828)
-LexToken(EOL,'\n',1,831)
-LexToken(EOL,'\n',1,832)
-LexToken(FUNCTION,'function',1,833)
-LexToken(OPENSQBRACKET,'[',1,842)
-LexToken(VAR,'x',1,843)
-LexToken(COMMA,',',1,844)
-LexToken(VAR,'y',1,845)
-LexToken(COMMA,',',1,846)
-LexToken(VAR,'typ',1,847)
-LexToken(CLOSESQBRACKET,']',1,850)
-LexToken(ASSIGNMENT,'=',1,851)
-LexToken(VAR,'CurrentSensor',1,852)
-LexToken(OPENBRACKET,'(',1,865)
-LexToken(VAR,'job',1,866)
-LexToken(COMMA,',',1,869)
-LexToken(VAR,'arg1',1,870)
-LexToken(COMMA,',',1,874)
-LexToken(VAR,'arg2',1,875)
-LexToken(CLOSEBRACKET,')',1,879)
-LexToken(EOL,'\n',1,880)
-LexToken(VAR,'x',1,885)
-LexToken(ASSIGNMENT,'=',1,886)
-LexToken(OPENSQBRACKET,'[',1,887)
-LexToken(CLOSESQBRACKET,']',1,888)
-LexToken(EOL,'\n',1,889)
-LexToken(VAR,'y',1,895)
-LexToken(ASSIGNMENT,'=',1,896)
-LexToken(OPENSQBRACKET,'[',1,897)
-LexToken(CLOSESQBRACKET,']',1,898)
-LexToken(EOL,'\n',1,899)
-LexToken(VAR,'typ',1,905)
-LexToken(ASSIGNMENT,'=',1,908)
-LexToken(OPENSQBRACKET,'[',1,909)
-LexToken(CLOSESQBRACKET,']',1,910)
-LexToken(EOL,'\n',1,911)
-LexToken(SELECT,'select',1,917)
-LexToken(VAR,'job',1,924)
-LexToken(EOL,'\n',1,927)
-LexToken(CASE,'case',1,932)
-LexToken(DQSTRING,'"set"',1,941)
-LexToken(THEN,'then',1,943)
-LexToken(EOL,'\n',1,947)
-LexToken(VAR,'x',1,956)
-LexToken(ASSIGNMENT,'=',1,957)
-LexToken(VAR,'arg1',1,958)
-LexToken(EOL,'\n',1,962)
-LexToken(CASE,'case',1,968)
-LexToken(DQSTRING,'"define"',1,980)
-LexToken(THEN,'then',1,982)
-LexToken(EOL,'\n',1,986)
-LexToken(VAR,'model',1,995)
-LexToken(ASSIGNMENT,'=',1,1000)
-LexToken(SCICOS_MODEL,'scicos_model',1,1001)
-LexToken(OPENBRACKET,'(',1,1013)
-LexToken(CLOSEBRACKET,')',1,1014)
-LexToken(EOL,'\n',1,1015)
-LexToken(VAR,'model',1,1024)
-LexToken(DOT,'.',1,1029)
-LexToken(VAR,'in',1,1030)
-LexToken(ASSIGNMENT,'=',1,1032)
-LexToken(NUMBER,'1',1,1033)
-LexToken(EOL,'\n',1,1034)
-LexToken(VAR,'model',1,1044)
-LexToken(DOT,'.',1,1049)
-LexToken(VAR,'out',1,1050)
-LexToken(ASSIGNMENT,'=',1,1053)
-LexToken(OPENSQBRACKET,'[',1,1054)
-LexToken(NUMBER,'1',1,1055)
-LexToken(SEMICOLON,';',1,1056)
-LexToken(NUMBER,'1',1,1058)
-LexToken(CLOSESQBRACKET,']',1,1059)
-LexToken(EOL,'\n',1,1060)
-LexToken(VAR,'model',1,1070)
-LexToken(DOT,'.',1,1075)
-LexToken(VAR,'sim',1,1076)
-LexToken(ASSIGNMENT,'=',1,1079)
-LexToken(DQSTRING,'"CurrentSensor"',1,1094)
-LexToken(EOL,'\n',1,1095)
-LexToken(VAR,'model',1,1104)
-LexToken(DOT,'.',1,1109)
-LexToken(VAR,'blocktype',1,1110)
-LexToken(ASSIGNMENT,'=',1,1119)
-LexToken(DQSTRING,'"c"',1,1122)
-LexToken(EOL,'\n',1,1123)
-LexToken(VAR,'model',1,1132)
-LexToken(DOT,'.',1,1137)
-LexToken(VAR,'dep_ut',1,1138)
-LexToken(ASSIGNMENT,'=',1,1144)
-LexToken(OPENSQBRACKET,'[',1,1145)
-LexToken(PREVAR_BOOLEAN,'%t',1,1146)
-LexToken(PREVAR_BOOLEAN,'%f',1,1149)
-LexToken(CLOSESQBRACKET,']',1,1151)
-LexToken(EOL,'\n',1,1152)
-LexToken(VAR,'mo',1,1161)
-LexToken(ASSIGNMENT,'=',1,1163)
-LexToken(VAR,'modelica',1,1164)
-LexToken(OPENBRACKET,'(',1,1172)
-LexToken(CLOSEBRACKET,')',1,1173)
-LexToken(EOL,'\n',1,1174)
-LexToken(VAR,'mo',1,1183)
-LexToken(DOT,'.',1,1185)
-LexToken(VAR,'model',1,1186)
-LexToken(ASSIGNMENT,'=',1,1191)
-LexToken(DQSTRING,'"CurrentSensor"',1,1206)
-LexToken(EOL,'\n',1,1207)
-LexToken(VAR,'mo',1,1216)
-LexToken(DOT,'.',1,1218)
-LexToken(VAR,'inputs',1,1219)
-LexToken(ASSIGNMENT,'=',1,1225)
-LexToken(DQSTRING,'"p"',1,1228)
-LexToken(EOL,'\n',1,1229)
-LexToken(VAR,'mo',1,1239)
-LexToken(DOT,'.',1,1241)
-LexToken(VAR,'outputs',1,1242)
-LexToken(ASSIGNMENT,'=',1,1249)
-LexToken(OPENSQBRACKET,'[',1,1250)
-LexToken(DQSTRING,'"n"',1,1253)
-LexToken(SEMICOLON,';',1,1254)
-LexToken(DQSTRING,'"i"',1,1257)
-LexToken(CLOSESQBRACKET,']',1,1258)
-LexToken(EOL,'\n',1,1259)
-LexToken(VAR,'model',1,1268)
-LexToken(DOT,'.',1,1273)
-LexToken(VAR,'equations',1,1274)
-LexToken(ASSIGNMENT,'=',1,1283)
-LexToken(VAR,'mo',1,1284)
-LexToken(EOL,'\n',1,1286)
-LexToken(VAR,'exprs',1,1295)
-LexToken(ASSIGNMENT,'=',1,1300)
-LexToken(OPENSQBRACKET,'[',1,1301)
-LexToken(CLOSESQBRACKET,']',1,1302)
-LexToken(EOL,'\n',1,1303)
-LexToken(VAR,'gr_i',1,1312)
-LexToken(ASSIGNMENT,'=',1,1316)
-LexToken(OPENSQBRACKET,'[',1,1317)
-LexToken(CLOSESQBRACKET,']',1,1318)
-LexToken(EOL,'\n',1,1319)
-LexToken(VAR,'x',1,1328)
-LexToken(ASSIGNMENT,'=',1,1329)
-LexToken(VAR,'standard_define',1,1330)
-LexToken(OPENBRACKET,'(',1,1345)
-LexToken(OPENSQBRACKET,'[',1,1346)
-LexToken(NUMBER,'2',1,1347)
-LexToken(NUMBER,'2',1,1349)
-LexToken(CLOSESQBRACKET,']',1,1350)
-LexToken(COMMA,',',1,1351)
-LexToken(VAR,'model',1,1352)
-LexToken(COMMA,',',1,1357)
-LexToken(VAR,'exprs',1,1358)
-LexToken(COMMA,',',1,1363)
-LexToken(VAR,'list',1,1364)
-LexToken(OPENBRACKET,'(',1,1368)
-LexToken(VAR,'gr_i',1,1369)
-LexToken(COMMA,',',1,1373)
-LexToken(NUMBER,'0',1,1374)
-LexToken(CLOSEBRACKET,')',1,1375)
-LexToken(CLOSEBRACKET,')',1,1376)
-LexToken(EOL,'\n',1,1377)
-LexToken(VAR,'x',1,1386)
-LexToken(DOT,'.',1,1387)
-LexToken(VAR,'graphics',1,1388)
-LexToken(DOT,'.',1,1396)
-LexToken(VAR,'in_implicit',1,1397)
-LexToken(ASSIGNMENT,'=',1,1408)
-LexToken(OPENSQBRACKET,'[',1,1409)
-LexToken(DQSTRING,'"I"',1,1412)
-LexToken(CLOSESQBRACKET,']',1,1413)
-LexToken(EOL,'\n',1,1414)
-LexToken(VAR,'x',1,1423)
-LexToken(DOT,'.',1,1424)
-LexToken(VAR,'graphics',1,1425)
-LexToken(DOT,'.',1,1433)
-LexToken(VAR,'out_implicit',1,1434)
-LexToken(ASSIGNMENT,'=',1,1446)
-LexToken(OPENSQBRACKET,'[',1,1447)
-LexToken(DQSTRING,'"I"',1,1450)
-LexToken(SEMICOLON,';',1,1451)
-LexToken(DQSTRING,'"E"',1,1454)
-LexToken(CLOSESQBRACKET,']',1,1455)
-LexToken(EOL,'\n',1,1456)
-LexToken(END,'end',1,1461)
-LexToken(EOL,'\n',1,1464)
-LexToken(ENDFUNCTION,'endfunction',1,1465)
-LexToken(EOL,'\n',1,1476)
+/* autogenerated from "macros/Electrical/CurrentSensor.sci" */
+function CurrentSensor() {
+CurrentSensor.prototype.get = function CurrentSensor() {
+}
+CurrentSensor.prototype.set = function CurrentSensor() {
+x=arg1;
+}
+CurrentSensor.prototype.define = function CurrentSensor() {
+model=scicos_model();
+model.in=1;
+model.out=[1,1];
+model.sim="CurrentSensor";
+model.blocktype="c";
+model.dep_ut=[true,None];
+mo=modelica();
+mo.model="CurrentSensor";
+mo.inputs="p";
+mo.outputs=["n","i"];
+model.equations=mo;
+exprs=[];
+gr_i=[];
+x=standard_define([2,2],model,exprs,list(gr_i,0));
+x.graphics.in_implicit=["I"];
+x.graphics.out_implicit=["I","E"];
+}
+CurrentSensor.prototype.details = function CurrentSensor() {
+}
+}
diff --git a/js/Electrical/Diode.js b/js/Electrical/Diode.js
index b4f5aa86..56672e8d 100644
--- a/js/Electrical/Diode.js
+++ b/js/Electrical/Diode.js
@@ -1,410 +1,49 @@
-LexToken(EOL,'\n',1,10)
-LexToken(EOL,'\n',1,13)
-LexToken(EOL,'\n',1,73)
-LexToken(EOL,'\n',1,76)
-LexToken(EOL,'\n',1,148)
-LexToken(EOL,'\n',1,220)
-LexToken(EOL,'\n',1,289)
-LexToken(EOL,'\n',1,328)
-LexToken(EOL,'\n',1,331)
-LexToken(EOL,'\n',1,398)
-LexToken(EOL,'\n',1,464)
-LexToken(EOL,'\n',1,529)
-LexToken(EOL,'\n',1,577)
-LexToken(EOL,'\n',1,580)
-LexToken(EOL,'\n',1,649)
-LexToken(EOL,'\n',1,712)
-LexToken(EOL,'\n',1,794)
-LexToken(EOL,'\n',1,797)
-LexToken(EOL,'\n',1,828)
-LexToken(EOL,'\n',1,831)
-LexToken(EOL,'\n',1,832)
-LexToken(FUNCTION,'function',1,833)
-LexToken(OPENSQBRACKET,'[',1,842)
-LexToken(VAR,'x',1,843)
-LexToken(COMMA,',',1,844)
-LexToken(VAR,'y',1,845)
-LexToken(COMMA,',',1,846)
-LexToken(VAR,'typ',1,847)
-LexToken(CLOSESQBRACKET,']',1,850)
-LexToken(ASSIGNMENT,'=',1,851)
-LexToken(VAR,'Diode',1,852)
-LexToken(OPENBRACKET,'(',1,857)
-LexToken(VAR,'job',1,858)
-LexToken(COMMA,',',1,861)
-LexToken(VAR,'arg1',1,862)
-LexToken(COMMA,',',1,866)
-LexToken(VAR,'arg2',1,867)
-LexToken(CLOSEBRACKET,')',1,871)
-LexToken(EOL,'\n',1,872)
-LexToken(VAR,'x',1,877)
-LexToken(ASSIGNMENT,'=',1,878)
-LexToken(OPENSQBRACKET,'[',1,879)
-LexToken(CLOSESQBRACKET,']',1,880)
-LexToken(EOL,'\n',1,881)
-LexToken(VAR,'y',1,887)
-LexToken(ASSIGNMENT,'=',1,888)
-LexToken(OPENSQBRACKET,'[',1,889)
-LexToken(CLOSESQBRACKET,']',1,890)
-LexToken(EOL,'\n',1,891)
-LexToken(VAR,'typ',1,897)
-LexToken(ASSIGNMENT,'=',1,900)
-LexToken(OPENSQBRACKET,'[',1,901)
-LexToken(CLOSESQBRACKET,']',1,902)
-LexToken(EOL,'\n',1,903)
-LexToken(SELECT,'select',1,909)
-LexToken(VAR,'job',1,916)
-LexToken(EOL,'\n',1,919)
-LexToken(CASE,'case',1,924)
-LexToken(DQSTRING,'"set"',1,933)
-LexToken(THEN,'then',1,935)
-LexToken(EOL,'\n',1,939)
-LexToken(VAR,'x',1,948)
-LexToken(ASSIGNMENT,'=',1,949)
-LexToken(VAR,'arg1',1,950)
-LexToken(EOL,'\n',1,954)
-LexToken(VAR,'graphics',1,964)
-LexToken(ASSIGNMENT,'=',1,972)
-LexToken(VAR,'arg1',1,973)
-LexToken(DOT,'.',1,977)
-LexToken(VAR,'graphics',1,978)
-LexToken(EOL,'\n',1,986)
-LexToken(VAR,'exprs',1,996)
-LexToken(ASSIGNMENT,'=',1,1001)
-LexToken(VAR,'graphics',1,1002)
-LexToken(DOT,'.',1,1010)
-LexToken(VAR,'exprs',1,1011)
-LexToken(EOL,'\n',1,1016)
-LexToken(VAR,'model',1,1025)
-LexToken(ASSIGNMENT,'=',1,1030)
-LexToken(VAR,'arg1',1,1031)
-LexToken(DOT,'.',1,1035)
-LexToken(VAR,'model',1,1036)
-LexToken(EOL,'\n',1,1041)
-LexToken(WHILE,'while',1,1051)
-LexToken(PREVAR_BOOLEAN,'%t',1,1057)
-LexToken(DO,'do',1,1060)
-LexToken(EOL,'\n',1,1062)
-LexToken(OPENSQBRACKET,'[',1,1075)
-LexToken(VAR,'ok',1,1076)
-LexToken(COMMA,',',1,1078)
-LexToken(VAR,'Ids',1,1079)
-LexToken(COMMA,',',1,1082)
-LexToken(VAR,'Vt',1,1083)
-LexToken(COMMA,',',1,1085)
-LexToken(VAR,'Maxexp',1,1086)
-LexToken(COMMA,',',1,1092)
-LexToken(VAR,'R',1,1093)
-LexToken(COMMA,',',1,1094)
-LexToken(VAR,'exprs',1,1095)
-LexToken(CLOSESQBRACKET,']',1,1100)
-LexToken(ASSIGNMENT,'=',1,1101)
-LexToken(SCICOS_GETVALUE,'scicos_getvalue',1,1102)
-LexToken(OPENBRACKET,'(',1,1117)
-LexToken(DQSTRING,'"Set Diode block parameter"',1,1144)
-LexToken(COMMA,',',1,1145)
-LexToken(OPENSQBRACKET,'[',1,1161)
-LexToken(DQSTRING,'"Saturation cuurent (A)"',1,1185)
-LexToken(SEMICOLON,';',1,1186)
-LexToken(DQSTRING,'"Voltage equivalent to temperature (Volt)"',1,1243)
-LexToken(SEMICOLON,';',1,1244)
-LexToken(DQSTRING,'"Max exponent for linear continuation"',1,1297)
-LexToken(SEMICOLON,';',1,1298)
-LexToken(DQSTRING,'"R (ohm)"',1,1322)
-LexToken(CLOSESQBRACKET,']',1,1323)
-LexToken(COMMA,',',1,1324)
-LexToken(VAR,'list',1,1326)
-LexToken(OPENBRACKET,'(',1,1330)
-LexToken(DQSTRING,'"vec"',1,1335)
-LexToken(COMMA,',',1,1336)
-LexToken(NUMBER,'1',1,1337)
-LexToken(COMMA,',',1,1338)
-LexToken(DQSTRING,'"vec"',1,1343)
-LexToken(COMMA,',',1,1344)
-LexToken(NUMBER,'1',1,1345)
-LexToken(COMMA,',',1,1346)
-LexToken(DQSTRING,'"vec"',1,1351)
-LexToken(COMMA,',',1,1352)
-LexToken(NUMBER,'1',1,1353)
-LexToken(COMMA,',',1,1354)
-LexToken(DQSTRING,'"vec"',1,1359)
-LexToken(COMMA,',',1,1360)
-LexToken(NUMBER,'1',1,1361)
-LexToken(CLOSEBRACKET,')',1,1362)
-LexToken(COMMA,',',1,1363)
-LexToken(VAR,'exprs',1,1364)
-LexToken(CLOSEBRACKET,')',1,1369)
-LexToken(EOL,'\n',1,1370)
-LexToken(IF,'if',1,1383)
-LexToken(NOT,'~',1,1386)
-LexToken(VAR,'ok',1,1387)
-LexToken(THEN,'then',1,1390)
-LexToken(EOL,'\n',1,1394)
-LexToken(BREAK,'break',1,1411)
-LexToken(EOL,'\n',1,1416)
-LexToken(END,'end',1,1430)
-LexToken(EOL,'\n',1,1433)
-LexToken(VAR,'model',1,1446)
-LexToken(DOT,'.',1,1451)
-LexToken(VAR,'rpar',1,1452)
-LexToken(ASSIGNMENT,'=',1,1456)
-LexToken(OPENSQBRACKET,'[',1,1457)
-LexToken(VAR,'Ids',1,1458)
-LexToken(SEMICOLON,';',1,1461)
-LexToken(VAR,'Vt',1,1462)
-LexToken(SEMICOLON,';',1,1464)
-LexToken(VAR,'Maxexp',1,1465)
-LexToken(SEMICOLON,';',1,1471)
-LexToken(VAR,'R',1,1472)
-LexToken(CLOSESQBRACKET,']',1,1473)
-LexToken(EOL,'\n',1,1474)
-LexToken(VAR,'model',1,1487)
-LexToken(DOT,'.',1,1492)
-LexToken(VAR,'equations',1,1493)
-LexToken(DOT,'.',1,1502)
-LexToken(VAR,'parameters',1,1503)
-LexToken(ASSIGNMENT,'=',1,1513)
-LexToken(VAR,'list',1,1514)
-LexToken(OPENBRACKET,'(',1,1518)
-LexToken(OPENSQBRACKET,'[',1,1519)
-LexToken(DQSTRING,'"Ids"',1,1524)
-LexToken(COMMA,',',1,1525)
-LexToken(DQSTRING,'"Vt"',1,1529)
-LexToken(COMMA,',',1,1530)
-LexToken(DQSTRING,'"Maxexp"',1,1538)
-LexToken(COMMA,',',1,1539)
-LexToken(DQSTRING,'"R"',1,1542)
-LexToken(CLOSESQBRACKET,']',1,1543)
-LexToken(COMMA,',',1,1544)
-LexToken(VAR,'list',1,1545)
-LexToken(OPENBRACKET,'(',1,1549)
-LexToken(VAR,'Ids',1,1550)
-LexToken(COMMA,',',1,1553)
-LexToken(VAR,'Vt',1,1554)
-LexToken(COMMA,',',1,1556)
-LexToken(VAR,'Maxexp',1,1557)
-LexToken(COMMA,',',1,1563)
-LexToken(VAR,'R',1,1564)
-LexToken(CLOSEBRACKET,')',1,1565)
-LexToken(CLOSEBRACKET,')',1,1566)
-LexToken(EOL,'\n',1,1567)
-LexToken(VAR,'graphics',1,1580)
-LexToken(DOT,'.',1,1588)
-LexToken(VAR,'exprs',1,1589)
-LexToken(ASSIGNMENT,'=',1,1594)
-LexToken(VAR,'exprs',1,1595)
-LexToken(EOL,'\n',1,1600)
-LexToken(VAR,'x',1,1613)
-LexToken(DOT,'.',1,1614)
-LexToken(VAR,'graphics',1,1615)
-LexToken(ASSIGNMENT,'=',1,1623)
-LexToken(VAR,'graphics',1,1624)
-LexToken(EOL,'\n',1,1632)
-LexToken(VAR,'x',1,1646)
-LexToken(DOT,'.',1,1647)
-LexToken(VAR,'model',1,1648)
-LexToken(ASSIGNMENT,'=',1,1653)
-LexToken(VAR,'model',1,1654)
-LexToken(EOL,'\n',1,1659)
-LexToken(BREAK,'break',1,1672)
-LexToken(EOL,'\n',1,1677)
-LexToken(END,'end',1,1686)
-LexToken(EOL,'\n',1,1689)
-LexToken(CASE,'case',1,1694)
-LexToken(DQSTRING,'"define"',1,1706)
-LexToken(THEN,'then',1,1708)
-LexToken(EOL,'\n',1,1712)
-LexToken(VAR,'Ids',1,1721)
-LexToken(ASSIGNMENT,'=',1,1724)
-LexToken(NUMBER,'1.e-6',1,1725)
-LexToken(EOL,'\n',1,1730)
-LexToken(VAR,'Vt',1,1740)
-LexToken(ASSIGNMENT,'=',1,1742)
-LexToken(NUMBER,'0.04',1,1743)
-LexToken(EOL,'\n',1,1747)
-LexToken(VAR,'Maxexp',1,1757)
-LexToken(ASSIGNMENT,'=',1,1763)
-LexToken(NUMBER,'15',1,1764)
-LexToken(EOL,'\n',1,1766)
-LexToken(VAR,'R',1,1776)
-LexToken(ASSIGNMENT,'=',1,1777)
-LexToken(NUMBER,'1.e8',1,1778)
-LexToken(EOL,'\n',1,1782)
-LexToken(VAR,'model',1,1792)
-LexToken(ASSIGNMENT,'=',1,1797)
-LexToken(SCICOS_MODEL,'scicos_model',1,1798)
-LexToken(OPENBRACKET,'(',1,1810)
-LexToken(CLOSEBRACKET,')',1,1811)
-LexToken(EOL,'\n',1,1812)
-LexToken(VAR,'model',1,1821)
-LexToken(DOT,'.',1,1826)
-LexToken(VAR,'rpar',1,1827)
-LexToken(ASSIGNMENT,'=',1,1831)
-LexToken(OPENSQBRACKET,'[',1,1832)
-LexToken(VAR,'Ids',1,1833)
-LexToken(SEMICOLON,';',1,1836)
-LexToken(VAR,'Vt',1,1837)
-LexToken(SEMICOLON,';',1,1839)
-LexToken(VAR,'Maxexp',1,1840)
-LexToken(SEMICOLON,';',1,1846)
-LexToken(VAR,'R',1,1847)
-LexToken(CLOSESQBRACKET,']',1,1848)
-LexToken(EOL,'\n',1,1849)
-LexToken(EOL,'\n',1,1850)
-LexToken(VAR,'model',1,1859)
-LexToken(DOT,'.',1,1864)
-LexToken(VAR,'in',1,1865)
-LexToken(ASSIGNMENT,'=',1,1867)
-LexToken(NUMBER,'1',1,1868)
-LexToken(EOL,'\n',1,1869)
-LexToken(VAR,'model',1,1879)
-LexToken(DOT,'.',1,1884)
-LexToken(VAR,'out',1,1885)
-LexToken(ASSIGNMENT,'=',1,1888)
-LexToken(NUMBER,'1',1,1889)
-LexToken(EOL,'\n',1,1890)
-LexToken(VAR,'model',1,1900)
-LexToken(DOT,'.',1,1905)
-LexToken(VAR,'sim',1,1906)
-LexToken(ASSIGNMENT,'=',1,1909)
-LexToken(DQSTRING,'"Diode"',1,1916)
-LexToken(EOL,'\n',1,1917)
-LexToken(VAR,'model',1,1927)
-LexToken(DOT,'.',1,1932)
-LexToken(VAR,'blocktype',1,1933)
-LexToken(ASSIGNMENT,'=',1,1942)
-LexToken(DQSTRING,'"c"',1,1945)
-LexToken(EOL,'\n',1,1946)
-LexToken(VAR,'model',1,1955)
-LexToken(DOT,'.',1,1960)
-LexToken(VAR,'dep_ut',1,1961)
-LexToken(ASSIGNMENT,'=',1,1967)
-LexToken(OPENSQBRACKET,'[',1,1968)
-LexToken(PREVAR_BOOLEAN,'%t',1,1969)
-LexToken(PREVAR_BOOLEAN,'%f',1,1972)
-LexToken(CLOSESQBRACKET,']',1,1974)
-LexToken(EOL,'\n',1,1975)
-LexToken(VAR,'mo',1,1984)
-LexToken(ASSIGNMENT,'=',1,1986)
-LexToken(VAR,'modelica',1,1987)
-LexToken(OPENBRACKET,'(',1,1995)
-LexToken(CLOSEBRACKET,')',1,1996)
-LexToken(EOL,'\n',1,1997)
-LexToken(VAR,'mo',1,2006)
-LexToken(DOT,'.',1,2008)
-LexToken(VAR,'model',1,2009)
-LexToken(ASSIGNMENT,'=',1,2014)
-LexToken(DQSTRING,'"Diode"',1,2021)
-LexToken(EOL,'\n',1,2022)
-LexToken(VAR,'mo',1,2032)
-LexToken(DOT,'.',1,2034)
-LexToken(VAR,'inputs',1,2035)
-LexToken(ASSIGNMENT,'=',1,2041)
-LexToken(DQSTRING,'"p"',1,2044)
-LexToken(EOL,'\n',1,2045)
-LexToken(VAR,'mo',1,2055)
-LexToken(DOT,'.',1,2057)
-LexToken(VAR,'outputs',1,2058)
-LexToken(ASSIGNMENT,'=',1,2065)
-LexToken(DQSTRING,'"n"',1,2068)
-LexToken(EOL,'\n',1,2069)
-LexToken(VAR,'mo',1,2079)
-LexToken(DOT,'.',1,2081)
-LexToken(VAR,'parameters',1,2082)
-LexToken(ASSIGNMENT,'=',1,2092)
-LexToken(VAR,'list',1,2093)
-LexToken(OPENBRACKET,'(',1,2097)
-LexToken(OPENSQBRACKET,'[',1,2098)
-LexToken(DQSTRING,'"Ids"',1,2103)
-LexToken(COMMA,',',1,2104)
-LexToken(DQSTRING,'"Vt"',1,2108)
-LexToken(COMMA,',',1,2109)
-LexToken(DQSTRING,'"Maxexp"',1,2117)
-LexToken(COMMA,',',1,2118)
-LexToken(DQSTRING,'"R"',1,2121)
-LexToken(CLOSESQBRACKET,']',1,2122)
-LexToken(COMMA,',',1,2123)
-LexToken(VAR,'list',1,2124)
-LexToken(OPENBRACKET,'(',1,2128)
-LexToken(VAR,'Ids',1,2129)
-LexToken(COMMA,',',1,2132)
-LexToken(VAR,'Vt',1,2133)
-LexToken(COMMA,',',1,2135)
-LexToken(VAR,'Maxexp',1,2136)
-LexToken(COMMA,',',1,2142)
-LexToken(VAR,'R',1,2143)
-LexToken(CLOSEBRACKET,')',1,2144)
-LexToken(CLOSEBRACKET,')',1,2145)
-LexToken(EOL,'\n',1,2146)
-LexToken(EOL,'\n',1,2147)
-LexToken(VAR,'model',1,2156)
-LexToken(DOT,'.',1,2161)
-LexToken(VAR,'equations',1,2162)
-LexToken(ASSIGNMENT,'=',1,2171)
-LexToken(VAR,'mo',1,2172)
-LexToken(EOL,'\n',1,2174)
-LexToken(VAR,'exprs',1,2183)
-LexToken(ASSIGNMENT,'=',1,2188)
-LexToken(VAR,'string',1,2189)
-LexToken(OPENBRACKET,'(',1,2195)
-LexToken(OPENSQBRACKET,'[',1,2196)
-LexToken(VAR,'Ids',1,2197)
-LexToken(SEMICOLON,';',1,2200)
-LexToken(VAR,'Vt',1,2201)
-LexToken(SEMICOLON,';',1,2203)
-LexToken(VAR,'Maxexp',1,2204)
-LexToken(SEMICOLON,';',1,2210)
-LexToken(VAR,'R',1,2211)
-LexToken(CLOSESQBRACKET,']',1,2212)
-LexToken(CLOSEBRACKET,')',1,2213)
-LexToken(EOL,'\n',1,2214)
-LexToken(VAR,'gr_i',1,2223)
-LexToken(ASSIGNMENT,'=',1,2227)
-LexToken(OPENSQBRACKET,'[',1,2228)
-LexToken(CLOSESQBRACKET,']',1,2229)
-LexToken(EOL,'\n',1,2230)
-LexToken(VAR,'x',1,2239)
-LexToken(ASSIGNMENT,'=',1,2240)
-LexToken(VAR,'standard_define',1,2241)
-LexToken(OPENBRACKET,'(',1,2256)
-LexToken(OPENSQBRACKET,'[',1,2257)
-LexToken(NUMBER,'2',1,2258)
-LexToken(NUMBER,'1',1,2260)
-LexToken(CLOSESQBRACKET,']',1,2261)
-LexToken(COMMA,',',1,2262)
-LexToken(VAR,'model',1,2263)
-LexToken(COMMA,',',1,2268)
-LexToken(VAR,'exprs',1,2269)
-LexToken(COMMA,',',1,2274)
-LexToken(VAR,'list',1,2275)
-LexToken(OPENBRACKET,'(',1,2279)
-LexToken(VAR,'gr_i',1,2280)
-LexToken(COMMA,',',1,2284)
-LexToken(NUMBER,'0',1,2285)
-LexToken(CLOSEBRACKET,')',1,2286)
-LexToken(CLOSEBRACKET,')',1,2287)
-LexToken(EOL,'\n',1,2288)
-LexToken(VAR,'x',1,2297)
-LexToken(DOT,'.',1,2298)
-LexToken(VAR,'graphics',1,2299)
-LexToken(DOT,'.',1,2307)
-LexToken(VAR,'in_implicit',1,2308)
-LexToken(ASSIGNMENT,'=',1,2319)
-LexToken(OPENSQBRACKET,'[',1,2320)
-LexToken(DQSTRING,'"I"',1,2323)
-LexToken(CLOSESQBRACKET,']',1,2324)
-LexToken(EOL,'\n',1,2325)
-LexToken(VAR,'x',1,2334)
-LexToken(DOT,'.',1,2335)
-LexToken(VAR,'graphics',1,2336)
-LexToken(DOT,'.',1,2344)
-LexToken(VAR,'out_implicit',1,2345)
-LexToken(ASSIGNMENT,'=',1,2357)
-LexToken(OPENSQBRACKET,'[',1,2358)
-LexToken(DQSTRING,'"I"',1,2361)
-LexToken(CLOSESQBRACKET,']',1,2362)
-LexToken(EOL,'\n',1,2363)
-LexToken(END,'end',1,2368)
-LexToken(EOL,'\n',1,2371)
-LexToken(ENDFUNCTION,'endfunction',1,2372)
-LexToken(EOL,'\n',1,2383)
+/* autogenerated from "macros/Electrical/Diode.sci" */
+function Diode() {
+Diode.prototype.get = function Diode() {
+}
+Diode.prototype.set = function Diode() {
+x=arg1;
+graphics=arg1.graphics;
+exprs=graphics.exprs;
+model=arg1.model;
+while (true) {
+[ok,Ids,Vt,Maxexp,R,exprs]=scicos_getvalue("Set Diode block parameter",["Saturation cuurent (A)","Voltage equivalent to temperature (Volt)","Max exponent for linear continuation","R (ohm)"],list("vec",1,"vec",1,"vec",1,"vec",1),exprs);
+if (!ok) {
+break
+}
+model.rpar=[Ids,Vt,Maxexp,R];
+model.equations.parameters=list(["Ids","Vt","Maxexp","R"],list(Ids,Vt,Maxexp,R));
+graphics.exprs=exprs;
+x.graphics=graphics;
+x.model=model;
+break
+}
+}
+Diode.prototype.define = function Diode() {
+Ids=1.e-6;
+Vt=0.04;
+Maxexp=15;
+R=1.e8;
+model=scicos_model();
+model.rpar=[Ids,Vt,Maxexp,R];
+model.in=1;
+model.out=1;
+model.sim="Diode";
+model.blocktype="c";
+model.dep_ut=[true,None];
+mo=modelica();
+mo.model="Diode";
+mo.inputs="p";
+mo.outputs="n";
+mo.parameters=list(["Ids","Vt","Maxexp","R"],list(Ids,Vt,Maxexp,R));
+model.equations=mo;
+exprs=string([Ids,Vt,Maxexp,R]);
+gr_i=[];
+x=standard_define([2,1],model,exprs,list(gr_i,0));
+x.graphics.in_implicit=["I"];
+x.graphics.out_implicit=["I"];
+}
+Diode.prototype.details = function Diode() {
+}
+}
diff --git a/js/Electrical/Ground.js b/js/Electrical/Ground.js
index 2698af53..e8f0c338 100644
--- a/js/Electrical/Ground.js
+++ b/js/Electrical/Ground.js
@@ -1,193 +1,27 @@
-LexToken(EOL,'\n',1,10)
-LexToken(EOL,'\n',1,13)
-LexToken(EOL,'\n',1,73)
-LexToken(EOL,'\n',1,76)
-LexToken(EOL,'\n',1,148)
-LexToken(EOL,'\n',1,220)
-LexToken(EOL,'\n',1,289)
-LexToken(EOL,'\n',1,328)
-LexToken(EOL,'\n',1,331)
-LexToken(EOL,'\n',1,398)
-LexToken(EOL,'\n',1,464)
-LexToken(EOL,'\n',1,529)
-LexToken(EOL,'\n',1,577)
-LexToken(EOL,'\n',1,580)
-LexToken(EOL,'\n',1,649)
-LexToken(EOL,'\n',1,712)
-LexToken(EOL,'\n',1,794)
-LexToken(EOL,'\n',1,797)
-LexToken(EOL,'\n',1,828)
-LexToken(EOL,'\n',1,831)
-LexToken(EOL,'\n',1,832)
-LexToken(FUNCTION,'function',1,833)
-LexToken(OPENSQBRACKET,'[',1,842)
-LexToken(VAR,'x',1,843)
-LexToken(COMMA,',',1,844)
-LexToken(VAR,'y',1,845)
-LexToken(COMMA,',',1,846)
-LexToken(VAR,'typ',1,847)
-LexToken(CLOSESQBRACKET,']',1,850)
-LexToken(ASSIGNMENT,'=',1,851)
-LexToken(VAR,'Ground',1,852)
-LexToken(OPENBRACKET,'(',1,858)
-LexToken(VAR,'job',1,859)
-LexToken(COMMA,',',1,862)
-LexToken(VAR,'arg1',1,863)
-LexToken(COMMA,',',1,867)
-LexToken(VAR,'arg2',1,868)
-LexToken(CLOSEBRACKET,')',1,872)
-LexToken(EOL,'\n',1,873)
-LexToken(EOL,'\n',1,908)
-LexToken(EOL,'\n',1,961)
-LexToken(EOL,'\n',1,1038)
-LexToken(EOL,'\n',1,1089)
-LexToken(VAR,'x',1,1094)
-LexToken(ASSIGNMENT,'=',1,1095)
-LexToken(OPENSQBRACKET,'[',1,1096)
-LexToken(CLOSESQBRACKET,']',1,1097)
-LexToken(EOL,'\n',1,1098)
-LexToken(VAR,'y',1,1104)
-LexToken(ASSIGNMENT,'=',1,1105)
-LexToken(OPENSQBRACKET,'[',1,1106)
-LexToken(CLOSESQBRACKET,']',1,1107)
-LexToken(EOL,'\n',1,1108)
-LexToken(VAR,'typ',1,1114)
-LexToken(ASSIGNMENT,'=',1,1117)
-LexToken(OPENSQBRACKET,'[',1,1118)
-LexToken(CLOSESQBRACKET,']',1,1119)
-LexToken(EOL,'\n',1,1120)
-LexToken(SELECT,'select',1,1126)
-LexToken(VAR,'job',1,1133)
-LexToken(EOL,'\n',1,1136)
-LexToken(CASE,'case',1,1141)
-LexToken(DQSTRING,'"set"',1,1150)
-LexToken(THEN,'then',1,1152)
-LexToken(EOL,'\n',1,1156)
-LexToken(VAR,'x',1,1165)
-LexToken(ASSIGNMENT,'=',1,1166)
-LexToken(VAR,'arg1',1,1167)
-LexToken(EOL,'\n',1,1171)
-LexToken(CASE,'case',1,1177)
-LexToken(DQSTRING,'"define"',1,1189)
-LexToken(THEN,'then',1,1191)
-LexToken(EOL,'\n',1,1195)
-LexToken(VAR,'model',1,1204)
-LexToken(ASSIGNMENT,'=',1,1209)
-LexToken(SCICOS_MODEL,'scicos_model',1,1210)
-LexToken(OPENBRACKET,'(',1,1222)
-LexToken(CLOSEBRACKET,')',1,1223)
-LexToken(EOL,'\n',1,1224)
-LexToken(VAR,'model',1,1233)
-LexToken(DOT,'.',1,1238)
-LexToken(VAR,'in',1,1239)
-LexToken(ASSIGNMENT,'=',1,1241)
-LexToken(OPENSQBRACKET,'[',1,1242)
-LexToken(NUMBER,'1',1,1243)
-LexToken(CLOSESQBRACKET,']',1,1244)
-LexToken(EOL,'\n',1,1245)
-LexToken(VAR,'model',1,1255)
-LexToken(DOT,'.',1,1260)
-LexToken(VAR,'out',1,1261)
-LexToken(ASSIGNMENT,'=',1,1264)
-LexToken(OPENSQBRACKET,'[',1,1265)
-LexToken(CLOSESQBRACKET,']',1,1266)
-LexToken(EOL,'\n',1,1267)
-LexToken(VAR,'model',1,1277)
-LexToken(DOT,'.',1,1282)
-LexToken(VAR,'sim',1,1283)
-LexToken(ASSIGNMENT,'=',1,1286)
-LexToken(DQSTRING,'"Ground"',1,1294)
-LexToken(EOL,'\n',1,1295)
-LexToken(VAR,'model',1,1304)
-LexToken(DOT,'.',1,1309)
-LexToken(VAR,'blocktype',1,1310)
-LexToken(ASSIGNMENT,'=',1,1319)
-LexToken(DQSTRING,'"c"',1,1322)
-LexToken(EOL,'\n',1,1323)
-LexToken(VAR,'model',1,1332)
-LexToken(DOT,'.',1,1337)
-LexToken(VAR,'dep_ut',1,1338)
-LexToken(ASSIGNMENT,'=',1,1344)
-LexToken(OPENSQBRACKET,'[',1,1345)
-LexToken(PREVAR_BOOLEAN,'%t',1,1346)
-LexToken(PREVAR_BOOLEAN,'%f',1,1349)
-LexToken(CLOSESQBRACKET,']',1,1351)
-LexToken(EOL,'\n',1,1352)
-LexToken(VAR,'mo',1,1361)
-LexToken(ASSIGNMENT,'=',1,1363)
-LexToken(VAR,'modelica',1,1364)
-LexToken(OPENBRACKET,'(',1,1372)
-LexToken(CLOSEBRACKET,')',1,1373)
-LexToken(EOL,'\n',1,1374)
-LexToken(VAR,'mo',1,1383)
-LexToken(DOT,'.',1,1385)
-LexToken(VAR,'model',1,1386)
-LexToken(ASSIGNMENT,'=',1,1391)
-LexToken(DQSTRING,'"Ground"',1,1399)
-LexToken(EOL,'\n',1,1400)
-LexToken(VAR,'mo',1,1409)
-LexToken(DOT,'.',1,1411)
-LexToken(VAR,'inputs',1,1412)
-LexToken(ASSIGNMENT,'=',1,1418)
-LexToken(DQSTRING,'"p"',1,1421)
-LexToken(EOL,'\n',1,1422)
-LexToken(VAR,'model',1,1432)
-LexToken(DOT,'.',1,1437)
-LexToken(VAR,'equations',1,1438)
-LexToken(ASSIGNMENT,'=',1,1447)
-LexToken(VAR,'mo',1,1448)
-LexToken(EOL,'\n',1,1450)
-LexToken(VAR,'exprs',1,1459)
-LexToken(ASSIGNMENT,'=',1,1464)
-LexToken(DQSTRING,'""',1,1466)
-LexToken(EOL,'\n',1,1467)
-LexToken(VAR,'gr_i',1,1476)
-LexToken(ASSIGNMENT,'=',1,1480)
-LexToken(OPENSQBRACKET,'[',1,1481)
-LexToken(CLOSESQBRACKET,']',1,1482)
-LexToken(EOL,'\n',1,1483)
-LexToken(VAR,'x',1,1492)
-LexToken(ASSIGNMENT,'=',1,1493)
-LexToken(VAR,'standard_define',1,1494)
-LexToken(OPENBRACKET,'(',1,1509)
-LexToken(OPENSQBRACKET,'[',1,1510)
-LexToken(NUMBER,'1',1,1511)
-LexToken(NUMBER,'1',1,1513)
-LexToken(CLOSESQBRACKET,']',1,1514)
-LexToken(COMMA,',',1,1515)
-LexToken(VAR,'model',1,1516)
-LexToken(COMMA,',',1,1521)
-LexToken(VAR,'exprs',1,1522)
-LexToken(COMMA,',',1,1527)
-LexToken(VAR,'list',1,1528)
-LexToken(OPENBRACKET,'(',1,1532)
-LexToken(VAR,'gr_i',1,1533)
-LexToken(COMMA,',',1,1537)
-LexToken(NUMBER,'0',1,1538)
-LexToken(CLOSEBRACKET,')',1,1539)
-LexToken(CLOSEBRACKET,')',1,1540)
-LexToken(EOL,'\n',1,1541)
-LexToken(VAR,'x',1,1550)
-LexToken(DOT,'.',1,1551)
-LexToken(VAR,'graphics',1,1552)
-LexToken(DOT,'.',1,1560)
-LexToken(VAR,'in_implicit',1,1561)
-LexToken(ASSIGNMENT,'=',1,1572)
-LexToken(OPENSQBRACKET,'[',1,1573)
-LexToken(DQSTRING,'"I"',1,1576)
-LexToken(CLOSESQBRACKET,']',1,1577)
-LexToken(EOL,'\n',1,1578)
-LexToken(VAR,'x',1,1587)
-LexToken(DOT,'.',1,1588)
-LexToken(VAR,'graphics',1,1589)
-LexToken(DOT,'.',1,1597)
-LexToken(VAR,'out_implicit',1,1598)
-LexToken(ASSIGNMENT,'=',1,1610)
-LexToken(OPENSQBRACKET,'[',1,1611)
-LexToken(DQSTRING,'"I"',1,1614)
-LexToken(CLOSESQBRACKET,']',1,1615)
-LexToken(EOL,'\n',1,1616)
-LexToken(END,'end',1,1621)
-LexToken(EOL,'\n',1,1624)
-LexToken(ENDFUNCTION,'endfunction',1,1625)
-LexToken(EOL,'\n',1,1636)
+/* autogenerated from "macros/Electrical/Ground.sci" */
+function Ground() {
+Ground.prototype.get = function Ground() {
+}
+Ground.prototype.set = function Ground() {
+x=arg1;
+}
+Ground.prototype.define = function Ground() {
+model=scicos_model();
+model.in=[1];
+model.out=[];
+model.sim="Ground";
+model.blocktype="c";
+model.dep_ut=[true,None];
+mo=modelica();
+mo.model="Ground";
+mo.inputs="p";
+model.equations=mo;
+exprs="";
+gr_i=[];
+x=standard_define([1,1],model,exprs,list(gr_i,0));
+x.graphics.in_implicit=["I"];
+x.graphics.out_implicit=["I"];
+}
+Ground.prototype.details = function Ground() {
+}
+}
diff --git a/js/Electrical/Gyrator.js b/js/Electrical/Gyrator.js
index bb6a4596..908e755c 100644
--- a/js/Electrical/Gyrator.js
+++ b/js/Electrical/Gyrator.js
@@ -1,592 +1,72 @@
-LexToken(EOL,'\n',1,10)
-LexToken(EOL,'\n',1,13)
-LexToken(EOL,'\n',1,73)
-LexToken(EOL,'\n',1,76)
-LexToken(EOL,'\n',1,148)
-LexToken(EOL,'\n',1,220)
-LexToken(EOL,'\n',1,289)
-LexToken(EOL,'\n',1,328)
-LexToken(EOL,'\n',1,331)
-LexToken(EOL,'\n',1,398)
-LexToken(EOL,'\n',1,464)
-LexToken(EOL,'\n',1,529)
-LexToken(EOL,'\n',1,577)
-LexToken(EOL,'\n',1,580)
-LexToken(EOL,'\n',1,649)
-LexToken(EOL,'\n',1,712)
-LexToken(EOL,'\n',1,794)
-LexToken(EOL,'\n',1,797)
-LexToken(EOL,'\n',1,828)
-LexToken(EOL,'\n',1,831)
-LexToken(EOL,'\n',1,832)
-LexToken(FUNCTION,'function',1,833)
-LexToken(OPENSQBRACKET,'[',1,842)
-LexToken(VAR,'x',1,843)
-LexToken(COMMA,',',1,844)
-LexToken(VAR,'y',1,845)
-LexToken(COMMA,',',1,846)
-LexToken(VAR,'typ',1,847)
-LexToken(CLOSESQBRACKET,']',1,850)
-LexToken(ASSIGNMENT,'=',1,851)
-LexToken(VAR,'Gyrator',1,852)
-LexToken(OPENBRACKET,'(',1,859)
-LexToken(VAR,'job',1,860)
-LexToken(COMMA,',',1,863)
-LexToken(VAR,'arg1',1,864)
-LexToken(COMMA,',',1,868)
-LexToken(VAR,'arg2',1,869)
-LexToken(CLOSEBRACKET,')',1,873)
-LexToken(EOL,'\n',1,874)
-LexToken(EOL,'\n',1,955)
-LexToken(EOL,'\n',1,1006)
-LexToken(VAR,'x',1,1011)
-LexToken(ASSIGNMENT,'=',1,1012)
-LexToken(OPENSQBRACKET,'[',1,1013)
-LexToken(CLOSESQBRACKET,']',1,1014)
-LexToken(EOL,'\n',1,1015)
-LexToken(VAR,'y',1,1021)
-LexToken(ASSIGNMENT,'=',1,1022)
-LexToken(OPENSQBRACKET,'[',1,1023)
-LexToken(CLOSESQBRACKET,']',1,1024)
-LexToken(EOL,'\n',1,1025)
-LexToken(VAR,'typ',1,1031)
-LexToken(ASSIGNMENT,'=',1,1034)
-LexToken(OPENSQBRACKET,'[',1,1035)
-LexToken(CLOSESQBRACKET,']',1,1036)
-LexToken(EOL,'\n',1,1037)
-LexToken(SELECT,'select',1,1043)
-LexToken(VAR,'job',1,1050)
-LexToken(EOL,'\n',1,1053)
-LexToken(CASE,'case',1,1058)
-LexToken(DQSTRING,'"set"',1,1067)
-LexToken(THEN,'then',1,1069)
-LexToken(EOL,'\n',1,1073)
-LexToken(VAR,'x',1,1082)
-LexToken(ASSIGNMENT,'=',1,1083)
-LexToken(VAR,'arg1',1,1084)
-LexToken(EOL,'\n',1,1088)
-LexToken(VAR,'graphics',1,1098)
-LexToken(ASSIGNMENT,'=',1,1106)
-LexToken(VAR,'arg1',1,1107)
-LexToken(DOT,'.',1,1111)
-LexToken(VAR,'graphics',1,1112)
-LexToken(EOL,'\n',1,1120)
-LexToken(VAR,'exprs',1,1130)
-LexToken(ASSIGNMENT,'=',1,1135)
-LexToken(VAR,'graphics',1,1136)
-LexToken(DOT,'.',1,1144)
-LexToken(VAR,'exprs',1,1145)
-LexToken(EOL,'\n',1,1150)
-LexToken(VAR,'model',1,1159)
-LexToken(ASSIGNMENT,'=',1,1164)
-LexToken(VAR,'arg1',1,1165)
-LexToken(DOT,'.',1,1169)
-LexToken(VAR,'model',1,1170)
-LexToken(EOL,'\n',1,1175)
-LexToken(VAR,'x',1,1185)
-LexToken(ASSIGNMENT,'=',1,1186)
-LexToken(VAR,'arg1',1,1187)
-LexToken(EOL,'\n',1,1191)
-LexToken(VAR,'exprs',1,1200)
-LexToken(ASSIGNMENT,'=',1,1205)
-LexToken(VAR,'x',1,1206)
-LexToken(DOT,'.',1,1207)
-LexToken(VAR,'graphics',1,1208)
-LexToken(DOT,'.',1,1216)
-LexToken(VAR,'exprs',1,1217)
-LexToken(EOL,'\n',1,1222)
-LexToken(WHILE,'while',1,1231)
-LexToken(PREVAR_BOOLEAN,'%t',1,1237)
-LexToken(DO,'do',1,1240)
-LexToken(EOL,'\n',1,1242)
-LexToken(OPENSQBRACKET,'[',1,1255)
-LexToken(VAR,'ok',1,1256)
-LexToken(COMMA,',',1,1258)
-LexToken(VAR,'G1',1,1259)
-LexToken(COMMA,',',1,1261)
-LexToken(VAR,'G2',1,1262)
-LexToken(COMMA,',',1,1264)
-LexToken(VAR,'exprs',1,1265)
-LexToken(CLOSESQBRACKET,']',1,1270)
-LexToken(ASSIGNMENT,'=',1,1271)
-LexToken(SCICOS_GETVALUE,'scicos_getvalue',1,1272)
-LexToken(OPENBRACKET,'(',1,1287)
-LexToken(OPENSQBRACKET,'[',1,1288)
-LexToken(DQSTRING,'"Set Gyrator block parameters:"',1,1319)
-LexToken(SEMICOLON,';',1,1320)
-LexToken(DQSTRING,'""',1,1322)
-LexToken(SEMICOLON,';',1,1323)
-LexToken(DQSTRING,'"G1: Gyration conductance"',1,1349)
-LexToken(SEMICOLON,';',1,1350)
-LexToken(DQSTRING,'"G2: Gyration conductance"',1,1376)
-LexToken(CLOSESQBRACKET,']',1,1377)
-LexToken(COMMA,',',1,1378)
-LexToken(OPENSQBRACKET,'[',1,1379)
-LexToken(DQSTRING,'"G1"',1,1383)
-LexToken(SEMICOLON,';',1,1384)
-LexToken(DQSTRING,'"G2"',1,1388)
-LexToken(CLOSESQBRACKET,']',1,1389)
-LexToken(COMMA,',',1,1390)
-LexToken(VAR,'list',1,1391)
-LexToken(OPENBRACKET,'(',1,1395)
-LexToken(DQSTRING,'"vec"',1,1400)
-LexToken(COMMA,',',1,1401)
-LexToken(NUMBER,'1',1,1402)
-LexToken(COMMA,',',1,1403)
-LexToken(DQSTRING,'"vec"',1,1408)
-LexToken(COMMA,',',1,1409)
-LexToken(NUMBER,'1',1,1410)
-LexToken(CLOSEBRACKET,')',1,1411)
-LexToken(COMMA,',',1,1412)
-LexToken(VAR,'exprs',1,1413)
-LexToken(CLOSEBRACKET,')',1,1418)
-LexToken(EOL,'\n',1,1419)
-LexToken(IF,'if',1,1432)
-LexToken(NOT,'~',1,1435)
-LexToken(VAR,'ok',1,1436)
-LexToken(THEN,'then',1,1439)
-LexToken(EOL,'\n',1,1443)
-LexToken(BREAK,'break',1,1460)
-LexToken(EOL,'\n',1,1465)
-LexToken(END,'end',1,1479)
-LexToken(EOL,'\n',1,1482)
-LexToken(VAR,'x',1,1495)
-LexToken(DOT,'.',1,1496)
-LexToken(VAR,'model',1,1497)
-LexToken(DOT,'.',1,1502)
-LexToken(VAR,'equations',1,1503)
-LexToken(DOT,'.',1,1512)
-LexToken(VAR,'parameters',1,1513)
-LexToken(OPENBRACKET,'(',1,1523)
-LexToken(NUMBER,'2',1,1524)
-LexToken(CLOSEBRACKET,')',1,1525)
-LexToken(ASSIGNMENT,'=',1,1526)
-LexToken(VAR,'list',1,1527)
-LexToken(OPENBRACKET,'(',1,1531)
-LexToken(VAR,'G1',1,1532)
-LexToken(COMMA,',',1,1534)
-LexToken(VAR,'G2',1,1535)
-LexToken(CLOSEBRACKET,')',1,1537)
-LexToken(EOL,'\n',1,1538)
-LexToken(VAR,'x',1,1551)
-LexToken(DOT,'.',1,1552)
-LexToken(VAR,'graphics',1,1553)
-LexToken(DOT,'.',1,1561)
-LexToken(VAR,'exprs',1,1562)
-LexToken(ASSIGNMENT,'=',1,1567)
-LexToken(VAR,'exprs',1,1568)
-LexToken(EOL,'\n',1,1573)
-LexToken(BREAK,'break',1,1586)
-LexToken(EOL,'\n',1,1591)
-LexToken(END,'end',1,1600)
-LexToken(EOL,'\n',1,1603)
-LexToken(CASE,'case',1,1608)
-LexToken(DQSTRING,'"define"',1,1620)
-LexToken(THEN,'then',1,1622)
-LexToken(EOL,'\n',1,1626)
-LexToken(VAR,'ModelName',1,1635)
-LexToken(ASSIGNMENT,'=',1,1644)
-LexToken(DQSTRING,'"Gyrator"',1,1653)
-LexToken(EOL,'\n',1,1654)
-LexToken(VAR,'PrametersValue',1,1663)
-LexToken(ASSIGNMENT,'=',1,1677)
-LexToken(OPENSQBRACKET,'[',1,1678)
-LexToken(NUMBER,'1',1,1679)
-LexToken(SEMICOLON,';',1,1680)
-LexToken(NUMBER,'1',1,1681)
-LexToken(CLOSESQBRACKET,']',1,1682)
-LexToken(EOL,'\n',1,1683)
-LexToken(VAR,'ParametersName',1,1692)
-LexToken(ASSIGNMENT,'=',1,1706)
-LexToken(OPENSQBRACKET,'[',1,1707)
-LexToken(DQSTRING,'"G1"',1,1711)
-LexToken(SEMICOLON,';',1,1712)
-LexToken(DQSTRING,'"G2"',1,1716)
-LexToken(CLOSESQBRACKET,']',1,1717)
-LexToken(EOL,'\n',1,1718)
-LexToken(VAR,'model',1,1727)
-LexToken(ASSIGNMENT,'=',1,1732)
-LexToken(SCICOS_MODEL,'scicos_model',1,1733)
-LexToken(OPENBRACKET,'(',1,1745)
-LexToken(CLOSEBRACKET,')',1,1746)
-LexToken(EOL,'\n',1,1747)
-LexToken(VAR,'Typein',1,1756)
-LexToken(ASSIGNMENT,'=',1,1762)
-LexToken(OPENSQBRACKET,'[',1,1763)
-LexToken(CLOSESQBRACKET,']',1,1764)
-LexToken(EOL,'\n',1,1765)
-LexToken(VAR,'Typeout',1,1775)
-LexToken(ASSIGNMENT,'=',1,1782)
-LexToken(OPENSQBRACKET,'[',1,1783)
-LexToken(CLOSESQBRACKET,']',1,1784)
-LexToken(EOL,'\n',1,1785)
-LexToken(VAR,'MI',1,1795)
-LexToken(ASSIGNMENT,'=',1,1797)
-LexToken(OPENSQBRACKET,'[',1,1798)
-LexToken(CLOSESQBRACKET,']',1,1799)
-LexToken(EOL,'\n',1,1800)
-LexToken(VAR,'MO',1,1810)
-LexToken(ASSIGNMENT,'=',1,1812)
-LexToken(OPENSQBRACKET,'[',1,1813)
-LexToken(CLOSESQBRACKET,']',1,1814)
-LexToken(EOL,'\n',1,1815)
-LexToken(VAR,'P',1,1824)
-LexToken(ASSIGNMENT,'=',1,1825)
-LexToken(OPENSQBRACKET,'[',1,1826)
-LexToken(NUMBER,'2.5',1,1827)
-LexToken(COMMA,',',1,1830)
-LexToken(NUMBER,'90',1,1831)
-LexToken(COMMA,',',1,1833)
-LexToken(NUMBER,'2',1,1834)
-LexToken(COMMA,',',1,1835)
-LexToken(NUMBER,'0',1,1836)
-LexToken(SEMICOLON,';',1,1837)
-LexToken(NUMBER,'2.5',1,1838)
-LexToken(COMMA,',',1,1841)
-LexToken(NUMBER,'10',1,1842)
-LexToken(COMMA,',',1,1844)
-LexToken(NUMBER,'2',1,1845)
-LexToken(COMMA,',',1,1846)
-LexToken(NUMBER,'0',1,1847)
-LexToken(SEMICOLON,';',1,1848)
-LexToken(NUMBER,'97.5',1,1849)
-LexToken(COMMA,',',1,1853)
-LexToken(NUMBER,'90',1,1854)
-LexToken(COMMA,',',1,1856)
-LexToken(ADDITION,'-',1,1857)
-LexToken(NUMBER,'2',1,1858)
-LexToken(COMMA,',',1,1859)
-LexToken(NUMBER,'0',1,1860)
-LexToken(SEMICOLON,';',1,1861)
-LexToken(NUMBER,'97.5',1,1862)
-LexToken(COMMA,',',1,1866)
-LexToken(NUMBER,'10',1,1867)
-LexToken(COMMA,',',1,1869)
-LexToken(ADDITION,'-',1,1870)
-LexToken(NUMBER,'2',1,1871)
-LexToken(COMMA,',',1,1872)
-LexToken(NUMBER,'0',1,1873)
-LexToken(CLOSESQBRACKET,']',1,1874)
-LexToken(EOL,'\n',1,1875)
-LexToken(VAR,'PortName',1,1884)
-LexToken(ASSIGNMENT,'=',1,1892)
-LexToken(OPENSQBRACKET,'[',1,1893)
-LexToken(DQSTRING,'"p1"',1,1897)
-LexToken(SEMICOLON,';',1,1898)
-LexToken(DQSTRING,'"n1"',1,1902)
-LexToken(SEMICOLON,';',1,1903)
-LexToken(DQSTRING,'"p2"',1,1907)
-LexToken(SEMICOLON,';',1,1908)
-LexToken(DQSTRING,'"n2"',1,1912)
-LexToken(CLOSESQBRACKET,']',1,1913)
-LexToken(EOL,'\n',1,1914)
-LexToken(FOR,'for',1,1923)
-LexToken(VAR,'i',1,1927)
-LexToken(ASSIGNMENT,'=',1,1928)
-LexToken(NUMBER,'1',1,1929)
-LexToken(COLON,':',1,1930)
-LexToken(VAR,'size',1,1931)
-LexToken(OPENBRACKET,'(',1,1935)
-LexToken(VAR,'P',1,1936)
-LexToken(COMMA,',',1,1937)
-LexToken(DQSTRING,'"r"',1,1940)
-LexToken(CLOSEBRACKET,')',1,1941)
-LexToken(EOL,'\n',1,1942)
-LexToken(IF,'if',1,1955)
-LexToken(VAR,'P',1,1958)
-LexToken(OPENBRACKET,'(',1,1959)
-LexToken(VAR,'i',1,1960)
-LexToken(COMMA,',',1,1961)
-LexToken(NUMBER,'3',1,1962)
-LexToken(CLOSEBRACKET,')',1,1963)
-LexToken(COMPARISON,'==',1,1964)
-LexToken(NUMBER,'1',1,1966)
-LexToken(THEN,'then',1,1969)
-LexToken(EOL,'\n',1,1973)
-LexToken(VAR,'Typein',1,1990)
-LexToken(ASSIGNMENT,'=',1,1996)
-LexToken(OPENSQBRACKET,'[',1,1998)
-LexToken(VAR,'Typein',1,1999)
-LexToken(SEMICOLON,';',1,2005)
-LexToken(DQSTRING,'"E"',1,2009)
-LexToken(CLOSESQBRACKET,']',1,2010)
-LexToken(EOL,'\n',1,2011)
-LexToken(VAR,'MI',1,2029)
-LexToken(ASSIGNMENT,'=',1,2031)
-LexToken(OPENSQBRACKET,'[',1,2032)
-LexToken(VAR,'MI',1,2033)
-LexToken(SEMICOLON,';',1,2035)
-LexToken(VAR,'PortName',1,2036)
-LexToken(OPENBRACKET,'(',1,2044)
-LexToken(VAR,'i',1,2045)
-LexToken(CLOSEBRACKET,')',1,2046)
-LexToken(CLOSESQBRACKET,']',1,2047)
-LexToken(EOL,'\n',1,2048)
-LexToken(END,'end',1,2062)
-LexToken(EOL,'\n',1,2065)
-LexToken(IF,'if',1,2078)
-LexToken(VAR,'P',1,2081)
-LexToken(OPENBRACKET,'(',1,2082)
-LexToken(VAR,'i',1,2083)
-LexToken(COMMA,',',1,2084)
-LexToken(NUMBER,'3',1,2085)
-LexToken(CLOSEBRACKET,')',1,2086)
-LexToken(COMPARISON,'==',1,2087)
-LexToken(NUMBER,'2',1,2089)
-LexToken(THEN,'then',1,2092)
-LexToken(EOL,'\n',1,2096)
-LexToken(VAR,'Typein',1,2113)
-LexToken(ASSIGNMENT,'=',1,2119)
-LexToken(OPENSQBRACKET,'[',1,2121)
-LexToken(VAR,'Typein',1,2122)
-LexToken(SEMICOLON,';',1,2128)
-LexToken(DQSTRING,'"I"',1,2132)
-LexToken(CLOSESQBRACKET,']',1,2133)
-LexToken(EOL,'\n',1,2134)
-LexToken(VAR,'MI',1,2152)
-LexToken(ASSIGNMENT,'=',1,2154)
-LexToken(OPENSQBRACKET,'[',1,2155)
-LexToken(VAR,'MI',1,2156)
-LexToken(SEMICOLON,';',1,2158)
-LexToken(VAR,'PortName',1,2159)
-LexToken(OPENBRACKET,'(',1,2167)
-LexToken(VAR,'i',1,2168)
-LexToken(CLOSEBRACKET,')',1,2169)
-LexToken(CLOSESQBRACKET,']',1,2170)
-LexToken(EOL,'\n',1,2171)
-LexToken(END,'end',1,2185)
-LexToken(EOL,'\n',1,2188)
-LexToken(IF,'if',1,2201)
-LexToken(VAR,'P',1,2204)
-LexToken(OPENBRACKET,'(',1,2205)
-LexToken(VAR,'i',1,2206)
-LexToken(COMMA,',',1,2207)
-LexToken(NUMBER,'3',1,2208)
-LexToken(CLOSEBRACKET,')',1,2209)
-LexToken(COMPARISON,'==',1,2210)
-LexToken(ADDITION,'-',1,2212)
-LexToken(NUMBER,'1',1,2213)
-LexToken(THEN,'then',1,2215)
-LexToken(EOL,'\n',1,2219)
-LexToken(VAR,'Typeout',1,2236)
-LexToken(ASSIGNMENT,'=',1,2243)
-LexToken(OPENSQBRACKET,'[',1,2244)
-LexToken(VAR,'Typeout',1,2245)
-LexToken(SEMICOLON,';',1,2252)
-LexToken(DQSTRING,'"E"',1,2255)
-LexToken(CLOSESQBRACKET,']',1,2256)
-LexToken(EOL,'\n',1,2257)
-LexToken(VAR,'MO',1,2275)
-LexToken(ASSIGNMENT,'=',1,2277)
-LexToken(OPENSQBRACKET,'[',1,2278)
-LexToken(VAR,'MO',1,2279)
-LexToken(SEMICOLON,';',1,2281)
-LexToken(VAR,'PortName',1,2282)
-LexToken(OPENBRACKET,'(',1,2290)
-LexToken(VAR,'i',1,2291)
-LexToken(CLOSEBRACKET,')',1,2292)
-LexToken(CLOSESQBRACKET,']',1,2293)
-LexToken(EOL,'\n',1,2294)
-LexToken(END,'end',1,2308)
-LexToken(EOL,'\n',1,2311)
-LexToken(IF,'if',1,2324)
-LexToken(VAR,'P',1,2327)
-LexToken(OPENBRACKET,'(',1,2328)
-LexToken(VAR,'i',1,2329)
-LexToken(COMMA,',',1,2330)
-LexToken(NUMBER,'3',1,2331)
-LexToken(CLOSEBRACKET,')',1,2332)
-LexToken(COMPARISON,'==',1,2333)
-LexToken(ADDITION,'-',1,2335)
-LexToken(NUMBER,'2',1,2336)
-LexToken(THEN,'then',1,2338)
-LexToken(EOL,'\n',1,2342)
-LexToken(VAR,'Typeout',1,2359)
-LexToken(ASSIGNMENT,'=',1,2366)
-LexToken(OPENSQBRACKET,'[',1,2367)
-LexToken(VAR,'Typeout',1,2368)
-LexToken(SEMICOLON,';',1,2375)
-LexToken(DQSTRING,'"I"',1,2378)
-LexToken(CLOSESQBRACKET,']',1,2379)
-LexToken(EOL,'\n',1,2380)
-LexToken(VAR,'MO',1,2398)
-LexToken(ASSIGNMENT,'=',1,2400)
-LexToken(OPENSQBRACKET,'[',1,2401)
-LexToken(VAR,'MO',1,2402)
-LexToken(SEMICOLON,';',1,2404)
-LexToken(VAR,'PortName',1,2405)
-LexToken(OPENBRACKET,'(',1,2413)
-LexToken(VAR,'i',1,2414)
-LexToken(CLOSEBRACKET,')',1,2415)
-LexToken(CLOSESQBRACKET,']',1,2416)
-LexToken(EOL,'\n',1,2417)
-LexToken(END,'end',1,2431)
-LexToken(EOL,'\n',1,2434)
-LexToken(END,'end',1,2443)
-LexToken(EOL,'\n',1,2446)
-LexToken(VAR,'model',1,2455)
-LexToken(ASSIGNMENT,'=',1,2460)
-LexToken(SCICOS_MODEL,'scicos_model',1,2461)
-LexToken(OPENBRACKET,'(',1,2473)
-LexToken(CLOSEBRACKET,')',1,2474)
-LexToken(EOL,'\n',1,2475)
-LexToken(VAR,'mo',1,2484)
-LexToken(ASSIGNMENT,'=',1,2486)
-LexToken(VAR,'modelica',1,2487)
-LexToken(OPENBRACKET,'(',1,2495)
-LexToken(CLOSEBRACKET,')',1,2496)
-LexToken(EOL,'\n',1,2497)
-LexToken(VAR,'model',1,2506)
-LexToken(DOT,'.',1,2511)
-LexToken(VAR,'sim',1,2512)
-LexToken(ASSIGNMENT,'=',1,2515)
-LexToken(VAR,'ModelName',1,2516)
-LexToken(EOL,'\n',1,2525)
-LexToken(VAR,'mo',1,2535)
-LexToken(DOT,'.',1,2537)
-LexToken(VAR,'inputs',1,2538)
-LexToken(ASSIGNMENT,'=',1,2544)
-LexToken(VAR,'MI',1,2545)
-LexToken(EOL,'\n',1,2547)
-LexToken(VAR,'mo',1,2557)
-LexToken(DOT,'.',1,2559)
-LexToken(VAR,'outputs',1,2560)
-LexToken(ASSIGNMENT,'=',1,2567)
-LexToken(VAR,'MO',1,2568)
-LexToken(EOL,'\n',1,2570)
-LexToken(VAR,'model',1,2580)
-LexToken(DOT,'.',1,2585)
-LexToken(VAR,'rpar',1,2586)
-LexToken(ASSIGNMENT,'=',1,2590)
-LexToken(VAR,'PrametersValue',1,2591)
-LexToken(EOL,'\n',1,2605)
-LexToken(VAR,'mo',1,2615)
-LexToken(DOT,'.',1,2617)
-LexToken(VAR,'parameters',1,2618)
-LexToken(ASSIGNMENT,'=',1,2628)
-LexToken(VAR,'list',1,2629)
-LexToken(OPENBRACKET,'(',1,2633)
-LexToken(VAR,'ParametersName',1,2634)
-LexToken(COMMA,',',1,2648)
-LexToken(VAR,'PrametersValue',1,2649)
-LexToken(COMMA,',',1,2663)
-LexToken(VAR,'zeros',1,2664)
-LexToken(OPENBRACKET,'(',1,2669)
-LexToken(VAR,'ParametersName',1,2670)
-LexToken(CLOSEBRACKET,')',1,2684)
-LexToken(CLOSEBRACKET,')',1,2685)
-LexToken(EOL,'\n',1,2686)
-LexToken(VAR,'exprs',1,2696)
-LexToken(ASSIGNMENT,'=',1,2701)
-LexToken(OPENSQBRACKET,'[',1,2702)
-LexToken(DQSTRING,'"1"',1,2705)
-LexToken(SEMICOLON,';',1,2706)
-LexToken(DQSTRING,'"1"',1,2709)
-LexToken(CLOSESQBRACKET,']',1,2710)
-LexToken(EOL,'\n',1,2711)
-LexToken(VAR,'gr_i',1,2720)
-LexToken(ASSIGNMENT,'=',1,2724)
-LexToken(OPENSQBRACKET,'[',1,2725)
-LexToken(CLOSESQBRACKET,']',1,2726)
-LexToken(EOL,'\n',1,2727)
-LexToken(VAR,'model',1,2736)
-LexToken(DOT,'.',1,2741)
-LexToken(VAR,'blocktype',1,2742)
-LexToken(ASSIGNMENT,'=',1,2751)
-LexToken(DQSTRING,'"c"',1,2754)
-LexToken(EOL,'\n',1,2755)
-LexToken(VAR,'model',1,2764)
-LexToken(DOT,'.',1,2769)
-LexToken(VAR,'dep_ut',1,2770)
-LexToken(ASSIGNMENT,'=',1,2776)
-LexToken(OPENSQBRACKET,'[',1,2777)
-LexToken(PREVAR_BOOLEAN,'%f',1,2778)
-LexToken(PREVAR_BOOLEAN,'%t',1,2781)
-LexToken(CLOSESQBRACKET,']',1,2783)
-LexToken(EOL,'\n',1,2784)
-LexToken(VAR,'mo',1,2793)
-LexToken(DOT,'.',1,2795)
-LexToken(VAR,'model',1,2796)
-LexToken(ASSIGNMENT,'=',1,2801)
-LexToken(VAR,'ModelName',1,2802)
-LexToken(EOL,'\n',1,2811)
-LexToken(VAR,'model',1,2820)
-LexToken(DOT,'.',1,2825)
-LexToken(VAR,'equations',1,2826)
-LexToken(ASSIGNMENT,'=',1,2835)
-LexToken(VAR,'mo',1,2836)
-LexToken(EOL,'\n',1,2838)
-LexToken(VAR,'model',1,2847)
-LexToken(DOT,'.',1,2852)
-LexToken(VAR,'in',1,2853)
-LexToken(ASSIGNMENT,'=',1,2855)
-LexToken(VAR,'ones',1,2856)
-LexToken(OPENBRACKET,'(',1,2860)
-LexToken(VAR,'size',1,2861)
-LexToken(OPENBRACKET,'(',1,2865)
-LexToken(VAR,'MI',1,2866)
-LexToken(COMMA,',',1,2868)
-LexToken(DQSTRING,'"*"',1,2871)
-LexToken(CLOSEBRACKET,')',1,2872)
-LexToken(COMMA,',',1,2873)
-LexToken(NUMBER,'1',1,2874)
-LexToken(CLOSEBRACKET,')',1,2875)
-LexToken(EOL,'\n',1,2876)
-LexToken(VAR,'model',1,2885)
-LexToken(DOT,'.',1,2890)
-LexToken(VAR,'out',1,2891)
-LexToken(ASSIGNMENT,'=',1,2894)
-LexToken(VAR,'ones',1,2895)
-LexToken(OPENBRACKET,'(',1,2899)
-LexToken(VAR,'size',1,2900)
-LexToken(OPENBRACKET,'(',1,2904)
-LexToken(VAR,'MO',1,2905)
-LexToken(COMMA,',',1,2907)
-LexToken(DQSTRING,'"*"',1,2910)
-LexToken(CLOSEBRACKET,')',1,2911)
-LexToken(COMMA,',',1,2912)
-LexToken(NUMBER,'1',1,2913)
-LexToken(CLOSEBRACKET,')',1,2914)
-LexToken(EOL,'\n',1,2915)
-LexToken(VAR,'x',1,2924)
-LexToken(ASSIGNMENT,'=',1,2925)
-LexToken(VAR,'standard_define',1,2926)
-LexToken(OPENBRACKET,'(',1,2941)
-LexToken(OPENSQBRACKET,'[',1,2942)
-LexToken(NUMBER,'2',1,2943)
-LexToken(COMMA,',',1,2944)
-LexToken(NUMBER,'2',1,2945)
-LexToken(CLOSESQBRACKET,']',1,2946)
-LexToken(COMMA,',',1,2947)
-LexToken(VAR,'model',1,2948)
-LexToken(COMMA,',',1,2953)
-LexToken(VAR,'exprs',1,2954)
-LexToken(COMMA,',',1,2959)
-LexToken(VAR,'list',1,2960)
-LexToken(OPENBRACKET,'(',1,2964)
-LexToken(VAR,'gr_i',1,2965)
-LexToken(COMMA,',',1,2969)
-LexToken(NUMBER,'0',1,2970)
-LexToken(CLOSEBRACKET,')',1,2971)
-LexToken(CLOSEBRACKET,')',1,2972)
-LexToken(EOL,'\n',1,2973)
-LexToken(VAR,'x',1,2982)
-LexToken(DOT,'.',1,2983)
-LexToken(VAR,'graphics',1,2984)
-LexToken(DOT,'.',1,2992)
-LexToken(VAR,'in_implicit',1,2993)
-LexToken(ASSIGNMENT,'=',1,3004)
-LexToken(VAR,'Typein',1,3005)
-LexToken(EOL,'\n',1,3011)
-LexToken(VAR,'x',1,3021)
-LexToken(DOT,'.',1,3022)
-LexToken(VAR,'graphics',1,3023)
-LexToken(DOT,'.',1,3031)
-LexToken(VAR,'out_implicit',1,3032)
-LexToken(ASSIGNMENT,'=',1,3044)
-LexToken(VAR,'Typeout',1,3045)
-LexToken(EOL,'\n',1,3052)
-LexToken(END,'end',1,3058)
-LexToken(EOL,'\n',1,3061)
-LexToken(ENDFUNCTION,'endfunction',1,3062)
-LexToken(EOL,'\n',1,3073)
+/* autogenerated from "macros/Electrical/Gyrator.sci" */
+function Gyrator() {
+Gyrator.prototype.get = function Gyrator() {
+}
+Gyrator.prototype.set = function Gyrator() {
+x=arg1;
+graphics=arg1.graphics;
+exprs=graphics.exprs;
+model=arg1.model;
+x=arg1;
+exprs=x.graphics.exprs;
+while (true) {
+[ok,G1,G2,exprs]=scicos_getvalue(["Set Gyrator block parameters:","","G1: Gyration conductance","G2: Gyration conductance"],["G1","G2"],list("vec",1,"vec",1),exprs);
+if (!ok) {
+break
+}
+x.model.equations.parameters[2]=list(G1,G2);
+x.graphics.exprs=exprs;
+break
+}
+}
+Gyrator.prototype.define = function Gyrator() {
+ModelName="Gyrator";
+PrametersValue=[1,1];
+ParametersName=["G1","G2"];
+model=scicos_model();
+Typein=[];
+Typeout=[];
+MI=[];
+MO=[];
+P=[2.5,90,2,0,2.5,10,2,0,97.5,90,-2,0,97.5,10,-2,0];
+PortName=["p1","n1","p2","n2"];
+for(i=1;i<=size(P,"r");i+=1) {
+if (P(i,3)==1) {
+Typein=[Typein,"E"];
+MI=[MI,PortName(i)];
+}
+if (P(i,3)==2) {
+Typein=[Typein,"I"];
+MI=[MI,PortName(i)];
+}
+if (P(i,3)==-1) {
+Typeout=[Typeout,"E"];
+MO=[MO,PortName(i)];
+}
+if (P(i,3)==-2) {
+Typeout=[Typeout,"I"];
+MO=[MO,PortName(i)];
+}
+}
+model=scicos_model();
+mo=modelica();
+model.sim=ModelName;
+mo.inputs=MI;
+mo.outputs=MO;
+model.rpar=PrametersValue;
+mo.parameters=list(ParametersName,PrametersValue,zeros(ParametersName));
+exprs=["1","1"];
+gr_i=[];
+model.blocktype="c";
+model.dep_ut=[None,true];
+mo.model=ModelName;
+model.equations=mo;
+model.in=ones(size(MI,"*"),1);
+model.out=ones(size(MO,"*"),1);
+x=standard_define([2,2],model,exprs,list(gr_i,0));
+x.graphics.in_implicit=Typein;
+x.graphics.out_implicit=Typeout;
+}
+Gyrator.prototype.details = function Gyrator() {
+}
+}
diff --git a/js/Electrical/IdealTransformer.js b/js/Electrical/IdealTransformer.js
index 004ac7cd..cfaec540 100644
--- a/js/Electrical/IdealTransformer.js
+++ b/js/Electrical/IdealTransformer.js
@@ -1,576 +1,72 @@
-LexToken(EOL,'\n',1,10)
-LexToken(EOL,'\n',1,13)
-LexToken(EOL,'\n',1,73)
-LexToken(EOL,'\n',1,76)
-LexToken(EOL,'\n',1,148)
-LexToken(EOL,'\n',1,220)
-LexToken(EOL,'\n',1,289)
-LexToken(EOL,'\n',1,328)
-LexToken(EOL,'\n',1,331)
-LexToken(EOL,'\n',1,398)
-LexToken(EOL,'\n',1,464)
-LexToken(EOL,'\n',1,529)
-LexToken(EOL,'\n',1,577)
-LexToken(EOL,'\n',1,580)
-LexToken(EOL,'\n',1,649)
-LexToken(EOL,'\n',1,712)
-LexToken(EOL,'\n',1,794)
-LexToken(EOL,'\n',1,797)
-LexToken(EOL,'\n',1,828)
-LexToken(EOL,'\n',1,831)
-LexToken(EOL,'\n',1,832)
-LexToken(FUNCTION,'function',1,833)
-LexToken(OPENSQBRACKET,'[',1,842)
-LexToken(VAR,'x',1,843)
-LexToken(COMMA,',',1,844)
-LexToken(VAR,'y',1,845)
-LexToken(COMMA,',',1,846)
-LexToken(VAR,'typ',1,847)
-LexToken(CLOSESQBRACKET,']',1,850)
-LexToken(ASSIGNMENT,'=',1,851)
-LexToken(VAR,'IdealTransformer',1,852)
-LexToken(OPENBRACKET,'(',1,868)
-LexToken(VAR,'job',1,869)
-LexToken(COMMA,',',1,872)
-LexToken(VAR,'arg1',1,873)
-LexToken(COMMA,',',1,877)
-LexToken(VAR,'arg2',1,878)
-LexToken(CLOSEBRACKET,')',1,882)
-LexToken(EOL,'\n',1,883)
-LexToken(EOL,'\n',1,968)
-LexToken(EOL,'\n',1,1019)
-LexToken(VAR,'x',1,1024)
-LexToken(ASSIGNMENT,'=',1,1025)
-LexToken(OPENSQBRACKET,'[',1,1026)
-LexToken(CLOSESQBRACKET,']',1,1027)
-LexToken(EOL,'\n',1,1028)
-LexToken(VAR,'y',1,1034)
-LexToken(ASSIGNMENT,'=',1,1035)
-LexToken(OPENSQBRACKET,'[',1,1036)
-LexToken(CLOSESQBRACKET,']',1,1037)
-LexToken(EOL,'\n',1,1038)
-LexToken(VAR,'typ',1,1044)
-LexToken(ASSIGNMENT,'=',1,1047)
-LexToken(OPENSQBRACKET,'[',1,1048)
-LexToken(CLOSESQBRACKET,']',1,1049)
-LexToken(EOL,'\n',1,1050)
-LexToken(SELECT,'select',1,1056)
-LexToken(VAR,'job',1,1063)
-LexToken(EOL,'\n',1,1066)
-LexToken(CASE,'case',1,1071)
-LexToken(DQSTRING,'"set"',1,1080)
-LexToken(THEN,'then',1,1082)
-LexToken(EOL,'\n',1,1086)
-LexToken(VAR,'x',1,1095)
-LexToken(ASSIGNMENT,'=',1,1096)
-LexToken(VAR,'arg1',1,1097)
-LexToken(EOL,'\n',1,1101)
-LexToken(VAR,'graphics',1,1111)
-LexToken(ASSIGNMENT,'=',1,1119)
-LexToken(VAR,'arg1',1,1120)
-LexToken(DOT,'.',1,1124)
-LexToken(VAR,'graphics',1,1125)
-LexToken(EOL,'\n',1,1133)
-LexToken(VAR,'exprs',1,1143)
-LexToken(ASSIGNMENT,'=',1,1148)
-LexToken(VAR,'graphics',1,1149)
-LexToken(DOT,'.',1,1157)
-LexToken(VAR,'exprs',1,1158)
-LexToken(EOL,'\n',1,1163)
-LexToken(VAR,'model',1,1172)
-LexToken(ASSIGNMENT,'=',1,1177)
-LexToken(VAR,'arg1',1,1178)
-LexToken(DOT,'.',1,1182)
-LexToken(VAR,'model',1,1183)
-LexToken(EOL,'\n',1,1188)
-LexToken(VAR,'x',1,1198)
-LexToken(ASSIGNMENT,'=',1,1199)
-LexToken(VAR,'arg1',1,1200)
-LexToken(EOL,'\n',1,1204)
-LexToken(VAR,'exprs',1,1213)
-LexToken(ASSIGNMENT,'=',1,1218)
-LexToken(VAR,'x',1,1219)
-LexToken(DOT,'.',1,1220)
-LexToken(VAR,'graphics',1,1221)
-LexToken(DOT,'.',1,1229)
-LexToken(VAR,'exprs',1,1230)
-LexToken(EOL,'\n',1,1235)
-LexToken(WHILE,'while',1,1244)
-LexToken(PREVAR_BOOLEAN,'%t',1,1250)
-LexToken(DO,'do',1,1253)
-LexToken(EOL,'\n',1,1255)
-LexToken(OPENSQBRACKET,'[',1,1268)
-LexToken(VAR,'ok',1,1269)
-LexToken(COMMA,',',1,1271)
-LexToken(VAR,'N',1,1272)
-LexToken(COMMA,',',1,1273)
-LexToken(VAR,'exprs',1,1274)
-LexToken(CLOSESQBRACKET,']',1,1279)
-LexToken(ASSIGNMENT,'=',1,1280)
-LexToken(SCICOS_GETVALUE,'scicos_getvalue',1,1281)
-LexToken(OPENBRACKET,'(',1,1296)
-LexToken(OPENSQBRACKET,'[',1,1297)
-LexToken(DQSTRING,'"Set Transformer block parameters:"',1,1332)
-LexToken(SEMICOLON,';',1,1333)
-LexToken(DQSTRING,'""',1,1335)
-LexToken(SEMICOLON,';',1,1336)
-LexToken(DQSTRING,'"N:"',1,1340)
-LexToken(ADDITION,'+',1,1341)
-LexToken(DQSTRING,'" Turn ratio (N1/N2)"',1,1378)
-LexToken(CLOSESQBRACKET,']',1,1379)
-LexToken(COMMA,',',1,1380)
-LexToken(OPENSQBRACKET,'[',1,1381)
-LexToken(DQSTRING,'"N"',1,1384)
-LexToken(CLOSESQBRACKET,']',1,1385)
-LexToken(COMMA,',',1,1386)
-LexToken(VAR,'list',1,1387)
-LexToken(OPENBRACKET,'(',1,1391)
-LexToken(DQSTRING,'"vec"',1,1396)
-LexToken(COMMA,',',1,1397)
-LexToken(NUMBER,'1',1,1398)
-LexToken(CLOSEBRACKET,')',1,1399)
-LexToken(COMMA,',',1,1400)
-LexToken(VAR,'exprs',1,1401)
-LexToken(CLOSEBRACKET,')',1,1406)
-LexToken(EOL,'\n',1,1407)
-LexToken(IF,'if',1,1420)
-LexToken(NOT,'~',1,1423)
-LexToken(VAR,'ok',1,1424)
-LexToken(THEN,'then',1,1427)
-LexToken(EOL,'\n',1,1431)
-LexToken(BREAK,'break',1,1448)
-LexToken(EOL,'\n',1,1453)
-LexToken(END,'end',1,1467)
-LexToken(EOL,'\n',1,1470)
-LexToken(VAR,'x',1,1483)
-LexToken(DOT,'.',1,1484)
-LexToken(VAR,'model',1,1485)
-LexToken(DOT,'.',1,1490)
-LexToken(VAR,'equations',1,1491)
-LexToken(DOT,'.',1,1500)
-LexToken(VAR,'parameters',1,1501)
-LexToken(OPENBRACKET,'(',1,1511)
-LexToken(NUMBER,'2',1,1512)
-LexToken(CLOSEBRACKET,')',1,1513)
-LexToken(ASSIGNMENT,'=',1,1514)
-LexToken(VAR,'list',1,1515)
-LexToken(OPENBRACKET,'(',1,1519)
-LexToken(VAR,'N',1,1520)
-LexToken(CLOSEBRACKET,')',1,1521)
-LexToken(EOL,'\n',1,1522)
-LexToken(VAR,'x',1,1535)
-LexToken(DOT,'.',1,1536)
-LexToken(VAR,'graphics',1,1537)
-LexToken(DOT,'.',1,1545)
-LexToken(VAR,'exprs',1,1546)
-LexToken(ASSIGNMENT,'=',1,1551)
-LexToken(VAR,'exprs',1,1552)
-LexToken(EOL,'\n',1,1557)
-LexToken(BREAK,'break',1,1570)
-LexToken(EOL,'\n',1,1575)
-LexToken(END,'end',1,1584)
-LexToken(EOL,'\n',1,1587)
-LexToken(CASE,'case',1,1592)
-LexToken(DQSTRING,'"define"',1,1604)
-LexToken(THEN,'then',1,1606)
-LexToken(EOL,'\n',1,1610)
-LexToken(VAR,'ModelName',1,1619)
-LexToken(ASSIGNMENT,'=',1,1628)
-LexToken(DQSTRING,'"IdealTransformer"',1,1646)
-LexToken(EOL,'\n',1,1647)
-LexToken(VAR,'PrametersValue',1,1656)
-LexToken(ASSIGNMENT,'=',1,1670)
-LexToken(OPENSQBRACKET,'[',1,1671)
-LexToken(NUMBER,'1',1,1672)
-LexToken(CLOSESQBRACKET,']',1,1673)
-LexToken(EOL,'\n',1,1674)
-LexToken(VAR,'ParametersName',1,1683)
-LexToken(ASSIGNMENT,'=',1,1697)
-LexToken(OPENSQBRACKET,'[',1,1698)
-LexToken(DQSTRING,'"N"',1,1701)
-LexToken(CLOSESQBRACKET,']',1,1702)
-LexToken(EOL,'\n',1,1703)
-LexToken(VAR,'model',1,1712)
-LexToken(ASSIGNMENT,'=',1,1717)
-LexToken(SCICOS_MODEL,'scicos_model',1,1718)
-LexToken(OPENBRACKET,'(',1,1730)
-LexToken(CLOSEBRACKET,')',1,1731)
-LexToken(EOL,'\n',1,1732)
-LexToken(VAR,'Typein',1,1741)
-LexToken(ASSIGNMENT,'=',1,1747)
-LexToken(OPENSQBRACKET,'[',1,1748)
-LexToken(CLOSESQBRACKET,']',1,1749)
-LexToken(EOL,'\n',1,1750)
-LexToken(VAR,'Typeout',1,1760)
-LexToken(ASSIGNMENT,'=',1,1767)
-LexToken(OPENSQBRACKET,'[',1,1768)
-LexToken(CLOSESQBRACKET,']',1,1769)
-LexToken(EOL,'\n',1,1770)
-LexToken(VAR,'MI',1,1780)
-LexToken(ASSIGNMENT,'=',1,1782)
-LexToken(OPENSQBRACKET,'[',1,1783)
-LexToken(CLOSESQBRACKET,']',1,1784)
-LexToken(EOL,'\n',1,1785)
-LexToken(VAR,'MO',1,1795)
-LexToken(ASSIGNMENT,'=',1,1797)
-LexToken(OPENSQBRACKET,'[',1,1798)
-LexToken(CLOSESQBRACKET,']',1,1799)
-LexToken(EOL,'\n',1,1800)
-LexToken(VAR,'P',1,1809)
-LexToken(ASSIGNMENT,'=',1,1810)
-LexToken(OPENSQBRACKET,'[',1,1811)
-LexToken(NUMBER,'2.5',1,1812)
-LexToken(COMMA,',',1,1815)
-LexToken(NUMBER,'90',1,1816)
-LexToken(COMMA,',',1,1818)
-LexToken(NUMBER,'2',1,1819)
-LexToken(COMMA,',',1,1820)
-LexToken(NUMBER,'0',1,1821)
-LexToken(SEMICOLON,';',1,1822)
-LexToken(NUMBER,'2.5',1,1823)
-LexToken(COMMA,',',1,1826)
-LexToken(NUMBER,'10',1,1827)
-LexToken(COMMA,',',1,1829)
-LexToken(NUMBER,'2',1,1830)
-LexToken(COMMA,',',1,1831)
-LexToken(NUMBER,'0',1,1832)
-LexToken(SEMICOLON,';',1,1833)
-LexToken(NUMBER,'97.5',1,1834)
-LexToken(COMMA,',',1,1838)
-LexToken(NUMBER,'90',1,1839)
-LexToken(COMMA,',',1,1841)
-LexToken(ADDITION,'-',1,1842)
-LexToken(NUMBER,'2',1,1843)
-LexToken(COMMA,',',1,1844)
-LexToken(NUMBER,'0',1,1845)
-LexToken(SEMICOLON,';',1,1846)
-LexToken(NUMBER,'97.5',1,1847)
-LexToken(COMMA,',',1,1851)
-LexToken(NUMBER,'10',1,1852)
-LexToken(COMMA,',',1,1854)
-LexToken(ADDITION,'-',1,1855)
-LexToken(NUMBER,'2',1,1856)
-LexToken(COMMA,',',1,1857)
-LexToken(NUMBER,'0',1,1858)
-LexToken(CLOSESQBRACKET,']',1,1859)
-LexToken(EOL,'\n',1,1860)
-LexToken(VAR,'PortName',1,1869)
-LexToken(ASSIGNMENT,'=',1,1877)
-LexToken(OPENSQBRACKET,'[',1,1878)
-LexToken(DQSTRING,'"p1"',1,1882)
-LexToken(SEMICOLON,';',1,1883)
-LexToken(DQSTRING,'"n1"',1,1887)
-LexToken(SEMICOLON,';',1,1888)
-LexToken(DQSTRING,'"p2"',1,1892)
-LexToken(SEMICOLON,';',1,1893)
-LexToken(DQSTRING,'"n2"',1,1897)
-LexToken(CLOSESQBRACKET,']',1,1898)
-LexToken(EOL,'\n',1,1899)
-LexToken(FOR,'for',1,1908)
-LexToken(VAR,'i',1,1912)
-LexToken(ASSIGNMENT,'=',1,1913)
-LexToken(NUMBER,'1',1,1914)
-LexToken(COLON,':',1,1915)
-LexToken(VAR,'size',1,1916)
-LexToken(OPENBRACKET,'(',1,1920)
-LexToken(VAR,'P',1,1921)
-LexToken(COMMA,',',1,1922)
-LexToken(DQSTRING,'"r"',1,1925)
-LexToken(CLOSEBRACKET,')',1,1926)
-LexToken(EOL,'\n',1,1927)
-LexToken(IF,'if',1,1940)
-LexToken(VAR,'P',1,1943)
-LexToken(OPENBRACKET,'(',1,1944)
-LexToken(VAR,'i',1,1945)
-LexToken(COMMA,',',1,1946)
-LexToken(NUMBER,'3',1,1947)
-LexToken(CLOSEBRACKET,')',1,1948)
-LexToken(COMPARISON,'==',1,1949)
-LexToken(NUMBER,'1',1,1951)
-LexToken(THEN,'then',1,1954)
-LexToken(EOL,'\n',1,1958)
-LexToken(VAR,'Typein',1,1975)
-LexToken(ASSIGNMENT,'=',1,1981)
-LexToken(OPENSQBRACKET,'[',1,1983)
-LexToken(VAR,'Typein',1,1984)
-LexToken(SEMICOLON,';',1,1990)
-LexToken(DQSTRING,'"E"',1,1994)
-LexToken(CLOSESQBRACKET,']',1,1995)
-LexToken(EOL,'\n',1,1996)
-LexToken(VAR,'MI',1,2014)
-LexToken(ASSIGNMENT,'=',1,2016)
-LexToken(OPENSQBRACKET,'[',1,2017)
-LexToken(VAR,'MI',1,2018)
-LexToken(SEMICOLON,';',1,2020)
-LexToken(VAR,'PortName',1,2021)
-LexToken(OPENBRACKET,'(',1,2029)
-LexToken(VAR,'i',1,2030)
-LexToken(CLOSEBRACKET,')',1,2031)
-LexToken(CLOSESQBRACKET,']',1,2032)
-LexToken(EOL,'\n',1,2033)
-LexToken(END,'end',1,2047)
-LexToken(EOL,'\n',1,2050)
-LexToken(IF,'if',1,2063)
-LexToken(VAR,'P',1,2066)
-LexToken(OPENBRACKET,'(',1,2067)
-LexToken(VAR,'i',1,2068)
-LexToken(COMMA,',',1,2069)
-LexToken(NUMBER,'3',1,2070)
-LexToken(CLOSEBRACKET,')',1,2071)
-LexToken(COMPARISON,'==',1,2072)
-LexToken(NUMBER,'2',1,2074)
-LexToken(THEN,'then',1,2077)
-LexToken(EOL,'\n',1,2081)
-LexToken(VAR,'Typein',1,2098)
-LexToken(ASSIGNMENT,'=',1,2104)
-LexToken(OPENSQBRACKET,'[',1,2106)
-LexToken(VAR,'Typein',1,2107)
-LexToken(SEMICOLON,';',1,2113)
-LexToken(DQSTRING,'"I"',1,2117)
-LexToken(CLOSESQBRACKET,']',1,2118)
-LexToken(EOL,'\n',1,2119)
-LexToken(VAR,'MI',1,2137)
-LexToken(ASSIGNMENT,'=',1,2139)
-LexToken(OPENSQBRACKET,'[',1,2140)
-LexToken(VAR,'MI',1,2141)
-LexToken(SEMICOLON,';',1,2143)
-LexToken(VAR,'PortName',1,2144)
-LexToken(OPENBRACKET,'(',1,2152)
-LexToken(VAR,'i',1,2153)
-LexToken(CLOSEBRACKET,')',1,2154)
-LexToken(CLOSESQBRACKET,']',1,2155)
-LexToken(EOL,'\n',1,2156)
-LexToken(END,'end',1,2170)
-LexToken(EOL,'\n',1,2173)
-LexToken(IF,'if',1,2186)
-LexToken(VAR,'P',1,2189)
-LexToken(OPENBRACKET,'(',1,2190)
-LexToken(VAR,'i',1,2191)
-LexToken(COMMA,',',1,2192)
-LexToken(NUMBER,'3',1,2193)
-LexToken(CLOSEBRACKET,')',1,2194)
-LexToken(COMPARISON,'==',1,2195)
-LexToken(ADDITION,'-',1,2197)
-LexToken(NUMBER,'1',1,2198)
-LexToken(THEN,'then',1,2200)
-LexToken(EOL,'\n',1,2204)
-LexToken(VAR,'Typeout',1,2221)
-LexToken(ASSIGNMENT,'=',1,2228)
-LexToken(OPENSQBRACKET,'[',1,2229)
-LexToken(VAR,'Typeout',1,2230)
-LexToken(SEMICOLON,';',1,2237)
-LexToken(DQSTRING,'"E"',1,2240)
-LexToken(CLOSESQBRACKET,']',1,2241)
-LexToken(EOL,'\n',1,2242)
-LexToken(VAR,'MO',1,2260)
-LexToken(ASSIGNMENT,'=',1,2262)
-LexToken(OPENSQBRACKET,'[',1,2263)
-LexToken(VAR,'MO',1,2264)
-LexToken(SEMICOLON,';',1,2266)
-LexToken(VAR,'PortName',1,2267)
-LexToken(OPENBRACKET,'(',1,2275)
-LexToken(VAR,'i',1,2276)
-LexToken(CLOSEBRACKET,')',1,2277)
-LexToken(CLOSESQBRACKET,']',1,2278)
-LexToken(EOL,'\n',1,2279)
-LexToken(END,'end',1,2293)
-LexToken(EOL,'\n',1,2296)
-LexToken(IF,'if',1,2309)
-LexToken(VAR,'P',1,2312)
-LexToken(OPENBRACKET,'(',1,2313)
-LexToken(VAR,'i',1,2314)
-LexToken(COMMA,',',1,2315)
-LexToken(NUMBER,'3',1,2316)
-LexToken(CLOSEBRACKET,')',1,2317)
-LexToken(COMPARISON,'==',1,2318)
-LexToken(ADDITION,'-',1,2320)
-LexToken(NUMBER,'2',1,2321)
-LexToken(THEN,'then',1,2323)
-LexToken(EOL,'\n',1,2327)
-LexToken(VAR,'Typeout',1,2344)
-LexToken(ASSIGNMENT,'=',1,2351)
-LexToken(OPENSQBRACKET,'[',1,2352)
-LexToken(VAR,'Typeout',1,2353)
-LexToken(SEMICOLON,';',1,2360)
-LexToken(DQSTRING,'"I"',1,2363)
-LexToken(CLOSESQBRACKET,']',1,2364)
-LexToken(EOL,'\n',1,2365)
-LexToken(VAR,'MO',1,2383)
-LexToken(ASSIGNMENT,'=',1,2385)
-LexToken(OPENSQBRACKET,'[',1,2386)
-LexToken(VAR,'MO',1,2387)
-LexToken(SEMICOLON,';',1,2389)
-LexToken(VAR,'PortName',1,2390)
-LexToken(OPENBRACKET,'(',1,2398)
-LexToken(VAR,'i',1,2399)
-LexToken(CLOSEBRACKET,')',1,2400)
-LexToken(CLOSESQBRACKET,']',1,2401)
-LexToken(EOL,'\n',1,2402)
-LexToken(END,'end',1,2416)
-LexToken(EOL,'\n',1,2419)
-LexToken(END,'end',1,2428)
-LexToken(EOL,'\n',1,2431)
-LexToken(VAR,'model',1,2440)
-LexToken(ASSIGNMENT,'=',1,2445)
-LexToken(SCICOS_MODEL,'scicos_model',1,2446)
-LexToken(OPENBRACKET,'(',1,2458)
-LexToken(CLOSEBRACKET,')',1,2459)
-LexToken(EOL,'\n',1,2460)
-LexToken(VAR,'mo',1,2469)
-LexToken(ASSIGNMENT,'=',1,2471)
-LexToken(VAR,'modelica',1,2472)
-LexToken(OPENBRACKET,'(',1,2480)
-LexToken(CLOSEBRACKET,')',1,2481)
-LexToken(EOL,'\n',1,2482)
-LexToken(VAR,'model',1,2491)
-LexToken(DOT,'.',1,2496)
-LexToken(VAR,'sim',1,2497)
-LexToken(ASSIGNMENT,'=',1,2500)
-LexToken(VAR,'ModelName',1,2501)
-LexToken(EOL,'\n',1,2510)
-LexToken(VAR,'mo',1,2520)
-LexToken(DOT,'.',1,2522)
-LexToken(VAR,'inputs',1,2523)
-LexToken(ASSIGNMENT,'=',1,2529)
-LexToken(VAR,'MI',1,2530)
-LexToken(EOL,'\n',1,2532)
-LexToken(VAR,'mo',1,2542)
-LexToken(DOT,'.',1,2544)
-LexToken(VAR,'outputs',1,2545)
-LexToken(ASSIGNMENT,'=',1,2552)
-LexToken(VAR,'MO',1,2553)
-LexToken(EOL,'\n',1,2555)
-LexToken(VAR,'model',1,2565)
-LexToken(DOT,'.',1,2570)
-LexToken(VAR,'rpar',1,2571)
-LexToken(ASSIGNMENT,'=',1,2575)
-LexToken(VAR,'PrametersValue',1,2576)
-LexToken(EOL,'\n',1,2590)
-LexToken(VAR,'mo',1,2600)
-LexToken(DOT,'.',1,2602)
-LexToken(VAR,'parameters',1,2603)
-LexToken(ASSIGNMENT,'=',1,2613)
-LexToken(VAR,'list',1,2614)
-LexToken(OPENBRACKET,'(',1,2618)
-LexToken(VAR,'ParametersName',1,2619)
-LexToken(COMMA,',',1,2633)
-LexToken(VAR,'PrametersValue',1,2634)
-LexToken(COMMA,',',1,2648)
-LexToken(VAR,'zeros',1,2649)
-LexToken(OPENBRACKET,'(',1,2654)
-LexToken(VAR,'ParametersName',1,2655)
-LexToken(CLOSEBRACKET,')',1,2669)
-LexToken(CLOSEBRACKET,')',1,2670)
-LexToken(EOL,'\n',1,2671)
-LexToken(VAR,'exprs',1,2681)
-LexToken(ASSIGNMENT,'=',1,2686)
-LexToken(OPENSQBRACKET,'[',1,2687)
-LexToken(DQSTRING,'"1"',1,2690)
-LexToken(CLOSESQBRACKET,']',1,2691)
-LexToken(EOL,'\n',1,2692)
-LexToken(VAR,'gr_i',1,2701)
-LexToken(ASSIGNMENT,'=',1,2705)
-LexToken(OPENSQBRACKET,'[',1,2706)
-LexToken(CLOSESQBRACKET,']',1,2707)
-LexToken(EOL,'\n',1,2708)
-LexToken(VAR,'model',1,2717)
-LexToken(DOT,'.',1,2722)
-LexToken(VAR,'blocktype',1,2723)
-LexToken(ASSIGNMENT,'=',1,2732)
-LexToken(DQSTRING,'"c"',1,2735)
-LexToken(EOL,'\n',1,2736)
-LexToken(VAR,'model',1,2745)
-LexToken(DOT,'.',1,2750)
-LexToken(VAR,'dep_ut',1,2751)
-LexToken(ASSIGNMENT,'=',1,2757)
-LexToken(OPENSQBRACKET,'[',1,2758)
-LexToken(PREVAR_BOOLEAN,'%f',1,2759)
-LexToken(PREVAR_BOOLEAN,'%t',1,2762)
-LexToken(CLOSESQBRACKET,']',1,2764)
-LexToken(EOL,'\n',1,2765)
-LexToken(VAR,'mo',1,2774)
-LexToken(DOT,'.',1,2776)
-LexToken(VAR,'model',1,2777)
-LexToken(ASSIGNMENT,'=',1,2782)
-LexToken(VAR,'ModelName',1,2783)
-LexToken(EOL,'\n',1,2792)
-LexToken(VAR,'model',1,2801)
-LexToken(DOT,'.',1,2806)
-LexToken(VAR,'equations',1,2807)
-LexToken(ASSIGNMENT,'=',1,2816)
-LexToken(VAR,'mo',1,2817)
-LexToken(EOL,'\n',1,2819)
-LexToken(VAR,'model',1,2828)
-LexToken(DOT,'.',1,2833)
-LexToken(VAR,'in',1,2834)
-LexToken(ASSIGNMENT,'=',1,2836)
-LexToken(VAR,'ones',1,2837)
-LexToken(OPENBRACKET,'(',1,2841)
-LexToken(VAR,'size',1,2842)
-LexToken(OPENBRACKET,'(',1,2846)
-LexToken(VAR,'MI',1,2847)
-LexToken(COMMA,',',1,2849)
-LexToken(DQSTRING,'"*"',1,2852)
-LexToken(CLOSEBRACKET,')',1,2853)
-LexToken(COMMA,',',1,2854)
-LexToken(NUMBER,'1',1,2855)
-LexToken(CLOSEBRACKET,')',1,2856)
-LexToken(EOL,'\n',1,2857)
-LexToken(VAR,'model',1,2866)
-LexToken(DOT,'.',1,2871)
-LexToken(VAR,'out',1,2872)
-LexToken(ASSIGNMENT,'=',1,2875)
-LexToken(VAR,'ones',1,2876)
-LexToken(OPENBRACKET,'(',1,2880)
-LexToken(VAR,'size',1,2881)
-LexToken(OPENBRACKET,'(',1,2885)
-LexToken(VAR,'MO',1,2886)
-LexToken(COMMA,',',1,2888)
-LexToken(DQSTRING,'"*"',1,2891)
-LexToken(CLOSEBRACKET,')',1,2892)
-LexToken(COMMA,',',1,2893)
-LexToken(NUMBER,'1',1,2894)
-LexToken(CLOSEBRACKET,')',1,2895)
-LexToken(EOL,'\n',1,2896)
-LexToken(VAR,'x',1,2905)
-LexToken(ASSIGNMENT,'=',1,2906)
-LexToken(VAR,'standard_define',1,2907)
-LexToken(OPENBRACKET,'(',1,2922)
-LexToken(OPENSQBRACKET,'[',1,2923)
-LexToken(NUMBER,'2',1,2924)
-LexToken(COMMA,',',1,2925)
-LexToken(NUMBER,'2',1,2926)
-LexToken(CLOSESQBRACKET,']',1,2927)
-LexToken(COMMA,',',1,2928)
-LexToken(VAR,'model',1,2929)
-LexToken(COMMA,',',1,2934)
-LexToken(VAR,'exprs',1,2935)
-LexToken(COMMA,',',1,2940)
-LexToken(VAR,'list',1,2941)
-LexToken(OPENBRACKET,'(',1,2945)
-LexToken(VAR,'gr_i',1,2946)
-LexToken(COMMA,',',1,2950)
-LexToken(NUMBER,'0',1,2951)
-LexToken(CLOSEBRACKET,')',1,2952)
-LexToken(CLOSEBRACKET,')',1,2953)
-LexToken(EOL,'\n',1,2954)
-LexToken(VAR,'x',1,2963)
-LexToken(DOT,'.',1,2964)
-LexToken(VAR,'graphics',1,2965)
-LexToken(DOT,'.',1,2973)
-LexToken(VAR,'in_implicit',1,2974)
-LexToken(ASSIGNMENT,'=',1,2985)
-LexToken(VAR,'Typein',1,2986)
-LexToken(EOL,'\n',1,2992)
-LexToken(VAR,'x',1,3002)
-LexToken(DOT,'.',1,3003)
-LexToken(VAR,'graphics',1,3004)
-LexToken(DOT,'.',1,3012)
-LexToken(VAR,'out_implicit',1,3013)
-LexToken(ASSIGNMENT,'=',1,3025)
-LexToken(VAR,'Typeout',1,3026)
-LexToken(EOL,'\n',1,3033)
-LexToken(END,'end',1,3039)
-LexToken(EOL,'\n',1,3042)
-LexToken(ENDFUNCTION,'endfunction',1,3043)
-LexToken(EOL,'\n',1,3054)
+/* autogenerated from "macros/Electrical/IdealTransformer.sci" */
+function IdealTransformer() {
+IdealTransformer.prototype.get = function IdealTransformer() {
+}
+IdealTransformer.prototype.set = function IdealTransformer() {
+x=arg1;
+graphics=arg1.graphics;
+exprs=graphics.exprs;
+model=arg1.model;
+x=arg1;
+exprs=x.graphics.exprs;
+while (true) {
+[ok,N,exprs]=scicos_getvalue(["Set Transformer block parameters:","","N:"+" Turn ratio (N1/N2)"],["N"],list("vec",1),exprs);
+if (!ok) {
+break
+}
+x.model.equations.parameters[2]=list(N);
+x.graphics.exprs=exprs;
+break
+}
+}
+IdealTransformer.prototype.define = function IdealTransformer() {
+ModelName="IdealTransformer";
+PrametersValue=[1];
+ParametersName=["N"];
+model=scicos_model();
+Typein=[];
+Typeout=[];
+MI=[];
+MO=[];
+P=[2.5,90,2,0,2.5,10,2,0,97.5,90,-2,0,97.5,10,-2,0];
+PortName=["p1","n1","p2","n2"];
+for(i=1;i<=size(P,"r");i+=1) {
+if (P(i,3)==1) {
+Typein=[Typein,"E"];
+MI=[MI,PortName(i)];
+}
+if (P(i,3)==2) {
+Typein=[Typein,"I"];
+MI=[MI,PortName(i)];
+}
+if (P(i,3)==-1) {
+Typeout=[Typeout,"E"];
+MO=[MO,PortName(i)];
+}
+if (P(i,3)==-2) {
+Typeout=[Typeout,"I"];
+MO=[MO,PortName(i)];
+}
+}
+model=scicos_model();
+mo=modelica();
+model.sim=ModelName;
+mo.inputs=MI;
+mo.outputs=MO;
+model.rpar=PrametersValue;
+mo.parameters=list(ParametersName,PrametersValue,zeros(ParametersName));
+exprs=["1"];
+gr_i=[];
+model.blocktype="c";
+model.dep_ut=[None,true];
+mo.model=ModelName;
+model.equations=mo;
+model.in=ones(size(MI,"*"),1);
+model.out=ones(size(MO,"*"),1);
+x=standard_define([2,2],model,exprs,list(gr_i,0));
+x.graphics.in_implicit=Typein;
+x.graphics.out_implicit=Typeout;
+}
+IdealTransformer.prototype.details = function IdealTransformer() {
+}
+}
diff --git a/js/Electrical/Inductor.js b/js/Electrical/Inductor.js
index 5e6d755d..4a696abd 100644
--- a/js/Electrical/Inductor.js
+++ b/js/Electrical/Inductor.js
@@ -1,326 +1,3 @@
-LexToken(EOL,'\n',1,10)
-LexToken(EOL,'\n',1,13)
-LexToken(EOL,'\n',1,73)
-LexToken(EOL,'\n',1,76)
-LexToken(EOL,'\n',1,148)
-LexToken(EOL,'\n',1,220)
-LexToken(EOL,'\n',1,289)
-LexToken(EOL,'\n',1,328)
-LexToken(EOL,'\n',1,331)
-LexToken(EOL,'\n',1,398)
-LexToken(EOL,'\n',1,464)
-LexToken(EOL,'\n',1,529)
-LexToken(EOL,'\n',1,577)
-LexToken(EOL,'\n',1,580)
-LexToken(EOL,'\n',1,649)
-LexToken(EOL,'\n',1,712)
-LexToken(EOL,'\n',1,794)
-LexToken(EOL,'\n',1,797)
-LexToken(EOL,'\n',1,828)
-LexToken(EOL,'\n',1,831)
-LexToken(EOL,'\n',1,832)
-LexToken(FUNCTION,'function',1,833)
-LexToken(OPENSQBRACKET,'[',1,842)
-LexToken(VAR,'x',1,843)
-LexToken(COMMA,',',1,844)
-LexToken(VAR,'y',1,845)
-LexToken(COMMA,',',1,846)
-LexToken(VAR,'typ',1,847)
-LexToken(CLOSESQBRACKET,']',1,850)
-LexToken(ASSIGNMENT,'=',1,851)
-LexToken(VAR,'Inductor',1,852)
-LexToken(OPENBRACKET,'(',1,860)
-LexToken(VAR,'job',1,861)
-LexToken(COMMA,',',1,864)
-LexToken(VAR,'arg1',1,865)
-LexToken(COMMA,',',1,869)
-LexToken(VAR,'arg2',1,870)
-LexToken(CLOSEBRACKET,')',1,874)
-LexToken(EOL,'\n',1,875)
-LexToken(EOL,'\n',1,898)
-LexToken(VAR,'x',1,903)
-LexToken(ASSIGNMENT,'=',1,904)
-LexToken(OPENSQBRACKET,'[',1,905)
-LexToken(CLOSESQBRACKET,']',1,906)
-LexToken(EOL,'\n',1,907)
-LexToken(VAR,'y',1,913)
-LexToken(ASSIGNMENT,'=',1,914)
-LexToken(OPENSQBRACKET,'[',1,915)
-LexToken(CLOSESQBRACKET,']',1,916)
-LexToken(EOL,'\n',1,917)
-LexToken(VAR,'typ',1,923)
-LexToken(ASSIGNMENT,'=',1,926)
-LexToken(OPENSQBRACKET,'[',1,927)
-LexToken(CLOSESQBRACKET,']',1,928)
-LexToken(EOL,'\n',1,929)
-LexToken(SELECT,'select',1,935)
-LexToken(VAR,'job',1,942)
-LexToken(EOL,'\n',1,945)
-LexToken(CASE,'case',1,950)
-LexToken(DQSTRING,'"set"',1,959)
-LexToken(THEN,'then',1,961)
-LexToken(EOL,'\n',1,965)
-LexToken(VAR,'x',1,974)
-LexToken(ASSIGNMENT,'=',1,975)
-LexToken(VAR,'arg1',1,976)
-LexToken(EOL,'\n',1,980)
-LexToken(VAR,'graphics',1,990)
-LexToken(ASSIGNMENT,'=',1,998)
-LexToken(VAR,'arg1',1,999)
-LexToken(DOT,'.',1,1003)
-LexToken(VAR,'graphics',1,1004)
-LexToken(EOL,'\n',1,1012)
-LexToken(VAR,'exprs',1,1022)
-LexToken(ASSIGNMENT,'=',1,1027)
-LexToken(VAR,'graphics',1,1028)
-LexToken(DOT,'.',1,1036)
-LexToken(VAR,'exprs',1,1037)
-LexToken(EOL,'\n',1,1042)
-LexToken(VAR,'model',1,1051)
-LexToken(ASSIGNMENT,'=',1,1056)
-LexToken(VAR,'arg1',1,1057)
-LexToken(DOT,'.',1,1061)
-LexToken(VAR,'model',1,1062)
-LexToken(EOL,'\n',1,1067)
-LexToken(WHILE,'while',1,1077)
-LexToken(PREVAR_BOOLEAN,'%t',1,1083)
-LexToken(DO,'do',1,1086)
-LexToken(EOL,'\n',1,1088)
-LexToken(OPENSQBRACKET,'[',1,1101)
-LexToken(VAR,'ok',1,1102)
-LexToken(COMMA,',',1,1104)
-LexToken(VAR,'L',1,1105)
-LexToken(COMMA,',',1,1106)
-LexToken(VAR,'exprs',1,1107)
-LexToken(CLOSESQBRACKET,']',1,1112)
-LexToken(ASSIGNMENT,'=',1,1113)
-LexToken(SCICOS_GETVALUE,'scicos_getvalue',1,1114)
-LexToken(OPENBRACKET,'(',1,1129)
-LexToken(DQSTRING,'"Set Inductor block parameter"',1,1159)
-LexToken(COMMA,',',1,1160)
-LexToken(DQSTRING,'"L (H)"',1,1182)
-LexToken(COMMA,',',1,1183)
-LexToken(VAR,'list',1,1184)
-LexToken(OPENBRACKET,'(',1,1188)
-LexToken(DQSTRING,'"vec"',1,1193)
-LexToken(COMMA,',',1,1194)
-LexToken(NUMBER,'1',1,1195)
-LexToken(CLOSEBRACKET,')',1,1196)
-LexToken(COMMA,',',1,1197)
-LexToken(VAR,'exprs',1,1198)
-LexToken(CLOSEBRACKET,')',1,1203)
-LexToken(EOL,'\n',1,1204)
-LexToken(IF,'if',1,1217)
-LexToken(NOT,'~',1,1220)
-LexToken(VAR,'ok',1,1221)
-LexToken(THEN,'then',1,1224)
-LexToken(EOL,'\n',1,1228)
-LexToken(BREAK,'break',1,1245)
-LexToken(EOL,'\n',1,1250)
-LexToken(END,'end',1,1264)
-LexToken(EOL,'\n',1,1267)
-LexToken(VAR,'model',1,1280)
-LexToken(DOT,'.',1,1285)
-LexToken(VAR,'rpar',1,1286)
-LexToken(ASSIGNMENT,'=',1,1290)
-LexToken(VAR,'L',1,1291)
-LexToken(EOL,'\n',1,1292)
-LexToken(VAR,'model',1,1305)
-LexToken(DOT,'.',1,1310)
-LexToken(VAR,'equations',1,1311)
-LexToken(DOT,'.',1,1320)
-LexToken(VAR,'parameters',1,1321)
-LexToken(OPENBRACKET,'(',1,1331)
-LexToken(NUMBER,'2',1,1332)
-LexToken(CLOSEBRACKET,')',1,1333)
-LexToken(ASSIGNMENT,'=',1,1334)
-LexToken(VAR,'list',1,1335)
-LexToken(OPENBRACKET,'(',1,1339)
-LexToken(VAR,'L',1,1340)
-LexToken(CLOSEBRACKET,')',1,1341)
-LexToken(EOL,'\n',1,1342)
-LexToken(VAR,'graphics',1,1355)
-LexToken(DOT,'.',1,1363)
-LexToken(VAR,'exprs',1,1364)
-LexToken(ASSIGNMENT,'=',1,1369)
-LexToken(VAR,'exprs',1,1370)
-LexToken(EOL,'\n',1,1375)
-LexToken(VAR,'x',1,1388)
-LexToken(DOT,'.',1,1389)
-LexToken(VAR,'graphics',1,1390)
-LexToken(ASSIGNMENT,'=',1,1398)
-LexToken(VAR,'graphics',1,1399)
-LexToken(EOL,'\n',1,1407)
-LexToken(VAR,'x',1,1421)
-LexToken(DOT,'.',1,1422)
-LexToken(VAR,'model',1,1423)
-LexToken(ASSIGNMENT,'=',1,1428)
-LexToken(VAR,'model',1,1429)
-LexToken(EOL,'\n',1,1434)
-LexToken(BREAK,'break',1,1447)
-LexToken(EOL,'\n',1,1452)
-LexToken(END,'end',1,1461)
-LexToken(EOL,'\n',1,1464)
-LexToken(CASE,'case',1,1469)
-LexToken(DQSTRING,'"define"',1,1481)
-LexToken(THEN,'then',1,1483)
-LexToken(EOL,'\n',1,1487)
-LexToken(VAR,'model',1,1496)
-LexToken(ASSIGNMENT,'=',1,1501)
-LexToken(SCICOS_MODEL,'scicos_model',1,1502)
-LexToken(OPENBRACKET,'(',1,1514)
-LexToken(CLOSEBRACKET,')',1,1515)
-LexToken(EOL,'\n',1,1516)
-LexToken(VAR,'model',1,1525)
-LexToken(DOT,'.',1,1530)
-LexToken(VAR,'in',1,1531)
-LexToken(ASSIGNMENT,'=',1,1533)
-LexToken(OPENSQBRACKET,'[',1,1534)
-LexToken(NUMBER,'1',1,1535)
-LexToken(CLOSESQBRACKET,']',1,1536)
-LexToken(EOL,'\n',1,1537)
-LexToken(VAR,'model',1,1547)
-LexToken(DOT,'.',1,1552)
-LexToken(VAR,'out',1,1553)
-LexToken(ASSIGNMENT,'=',1,1556)
-LexToken(OPENSQBRACKET,'[',1,1557)
-LexToken(NUMBER,'1',1,1558)
-LexToken(CLOSESQBRACKET,']',1,1559)
-LexToken(EOL,'\n',1,1560)
-LexToken(VAR,'L',1,1570)
-LexToken(ASSIGNMENT,'=',1,1571)
-LexToken(NUMBER,'1.',1,1572)
-LexToken(VAR,'d',1,1574)
-LexToken(ADDITION,'-',1,1575)
-LexToken(NUMBER,'5',1,1576)
-LexToken(EOL,'\n',1,1577)
-LexToken(VAR,'model',1,1586)
-LexToken(DOT,'.',1,1591)
-LexToken(VAR,'rpar',1,1592)
-LexToken(ASSIGNMENT,'=',1,1596)
-LexToken(VAR,'L',1,1597)
-LexToken(EOL,'\n',1,1598)
-LexToken(VAR,'model',1,1607)
-LexToken(DOT,'.',1,1612)
-LexToken(VAR,'sim',1,1613)
-LexToken(ASSIGNMENT,'=',1,1616)
-LexToken(DQSTRING,'"Inductor"',1,1626)
-LexToken(EOL,'\n',1,1627)
-LexToken(VAR,'model',1,1636)
-LexToken(DOT,'.',1,1641)
-LexToken(VAR,'blocktype',1,1642)
-LexToken(ASSIGNMENT,'=',1,1651)
-LexToken(DQSTRING,'"c"',1,1654)
-LexToken(EOL,'\n',1,1655)
-LexToken(VAR,'model',1,1664)
-LexToken(DOT,'.',1,1669)
-LexToken(VAR,'dep_ut',1,1670)
-LexToken(ASSIGNMENT,'=',1,1676)
-LexToken(OPENSQBRACKET,'[',1,1677)
-LexToken(PREVAR_BOOLEAN,'%t',1,1678)
-LexToken(PREVAR_BOOLEAN,'%f',1,1681)
-LexToken(CLOSESQBRACKET,']',1,1683)
-LexToken(EOL,'\n',1,1684)
-LexToken(VAR,'mo',1,1693)
-LexToken(ASSIGNMENT,'=',1,1695)
-LexToken(VAR,'modelica',1,1696)
-LexToken(OPENBRACKET,'(',1,1704)
-LexToken(CLOSEBRACKET,')',1,1705)
-LexToken(EOL,'\n',1,1706)
-LexToken(VAR,'mo',1,1716)
-LexToken(DOT,'.',1,1718)
-LexToken(VAR,'model',1,1719)
-LexToken(ASSIGNMENT,'=',1,1724)
-LexToken(DQSTRING,'"Inductor"',1,1734)
-LexToken(EOL,'\n',1,1735)
-LexToken(VAR,'mo',1,1744)
-LexToken(DOT,'.',1,1746)
-LexToken(VAR,'inputs',1,1747)
-LexToken(ASSIGNMENT,'=',1,1753)
-LexToken(DQSTRING,'"p"',1,1756)
-LexToken(EOL,'\n',1,1757)
-LexToken(VAR,'mo',1,1767)
-LexToken(DOT,'.',1,1769)
-LexToken(VAR,'outputs',1,1770)
-LexToken(ASSIGNMENT,'=',1,1777)
-LexToken(DQSTRING,'"n"',1,1780)
-LexToken(EOL,'\n',1,1781)
-LexToken(VAR,'mo',1,1791)
-LexToken(DOT,'.',1,1793)
-LexToken(VAR,'parameters',1,1794)
-LexToken(ASSIGNMENT,'=',1,1804)
-LexToken(VAR,'list',1,1805)
-LexToken(OPENBRACKET,'(',1,1809)
-LexToken(DQSTRING,'"L"',1,1812)
-LexToken(COMMA,',',1,1813)
-LexToken(VAR,'list',1,1814)
-LexToken(OPENBRACKET,'(',1,1818)
-LexToken(VAR,'L',1,1819)
-LexToken(CLOSEBRACKET,')',1,1820)
-LexToken(CLOSEBRACKET,')',1,1821)
-LexToken(EOL,'\n',1,1822)
-LexToken(VAR,'model',1,1831)
-LexToken(DOT,'.',1,1836)
-LexToken(VAR,'equations',1,1837)
-LexToken(ASSIGNMENT,'=',1,1846)
-LexToken(VAR,'mo',1,1847)
-LexToken(EOL,'\n',1,1849)
-LexToken(VAR,'exprs',1,1859)
-LexToken(ASSIGNMENT,'=',1,1864)
-LexToken(VAR,'string',1,1865)
-LexToken(OPENBRACKET,'(',1,1871)
-LexToken(VAR,'L',1,1872)
-LexToken(CLOSEBRACKET,')',1,1873)
-LexToken(EOL,'\n',1,1874)
-LexToken(EOL,'\n',1,1875)
-LexToken(VAR,'gr_i',1,1884)
-LexToken(ASSIGNMENT,'=',1,1888)
-LexToken(OPENSQBRACKET,'[',1,1889)
-LexToken(CLOSESQBRACKET,']',1,1890)
-LexToken(EOL,'\n',1,1891)
-LexToken(EOL,'\n',1,1892)
-LexToken(VAR,'x',1,1901)
-LexToken(ASSIGNMENT,'=',1,1902)
-LexToken(VAR,'standard_define',1,1903)
-LexToken(OPENBRACKET,'(',1,1918)
-LexToken(OPENSQBRACKET,'[',1,1919)
-LexToken(NUMBER,'2',1,1920)
-LexToken(NUMBER,'0.9',1,1922)
-LexToken(CLOSESQBRACKET,']',1,1925)
-LexToken(COMMA,',',1,1926)
-LexToken(VAR,'model',1,1927)
-LexToken(COMMA,',',1,1932)
-LexToken(VAR,'exprs',1,1933)
-LexToken(COMMA,',',1,1938)
-LexToken(VAR,'list',1,1939)
-LexToken(OPENBRACKET,'(',1,1943)
-LexToken(VAR,'gr_i',1,1944)
-LexToken(COMMA,',',1,1948)
-LexToken(NUMBER,'0',1,1949)
-LexToken(CLOSEBRACKET,')',1,1950)
-LexToken(CLOSEBRACKET,')',1,1951)
-LexToken(EOL,'\n',1,1952)
-LexToken(VAR,'x',1,1961)
-LexToken(DOT,'.',1,1962)
-LexToken(VAR,'graphics',1,1963)
-LexToken(DOT,'.',1,1971)
-LexToken(VAR,'in_implicit',1,1972)
-LexToken(ASSIGNMENT,'=',1,1983)
-LexToken(OPENSQBRACKET,'[',1,1984)
-LexToken(DQSTRING,'"I"',1,1987)
-LexToken(CLOSESQBRACKET,']',1,1988)
-LexToken(EOL,'\n',1,1989)
-LexToken(VAR,'x',1,1998)
-LexToken(DOT,'.',1,1999)
-LexToken(VAR,'graphics',1,2000)
-LexToken(DOT,'.',1,2008)
-LexToken(VAR,'out_implicit',1,2009)
-LexToken(ASSIGNMENT,'=',1,2021)
-LexToken(OPENSQBRACKET,'[',1,2022)
-LexToken(DQSTRING,'"I"',1,2025)
-LexToken(CLOSESQBRACKET,']',1,2026)
-LexToken(EOL,'\n',1,2027)
-LexToken(END,'end',1,2032)
-LexToken(EOL,'\n',1,2035)
-LexToken(ENDFUNCTION,'endfunction',1,2036)
-LexToken(EOL,'\n',1,2047)
+Syntax error in input LexToken(VAR,'d',1,1574)
+/* autogenerated from "macros/Electrical/Inductor.sci" */
+None
diff --git a/js/Electrical/MOTOR.js b/js/Electrical/MOTOR.js
index dec0bc43..f5f29a3f 100644
--- a/js/Electrical/MOTOR.js
+++ b/js/Electrical/MOTOR.js
@@ -1,172 +1,23 @@
-LexToken(EOL,'\n',1,10)
-LexToken(EOL,'\n',1,13)
-LexToken(EOL,'\n',1,73)
-LexToken(EOL,'\n',1,76)
-LexToken(EOL,'\n',1,148)
-LexToken(EOL,'\n',1,220)
-LexToken(EOL,'\n',1,289)
-LexToken(EOL,'\n',1,328)
-LexToken(EOL,'\n',1,331)
-LexToken(EOL,'\n',1,398)
-LexToken(EOL,'\n',1,464)
-LexToken(EOL,'\n',1,529)
-LexToken(EOL,'\n',1,577)
-LexToken(EOL,'\n',1,580)
-LexToken(EOL,'\n',1,649)
-LexToken(EOL,'\n',1,712)
-LexToken(EOL,'\n',1,794)
-LexToken(EOL,'\n',1,797)
-LexToken(EOL,'\n',1,828)
-LexToken(EOL,'\n',1,831)
-LexToken(EOL,'\n',1,832)
-LexToken(FUNCTION,'function',1,833)
-LexToken(OPENSQBRACKET,'[',1,842)
-LexToken(VAR,'x',1,843)
-LexToken(COMMA,',',1,844)
-LexToken(VAR,'y',1,845)
-LexToken(COMMA,',',1,846)
-LexToken(VAR,'typ',1,847)
-LexToken(CLOSESQBRACKET,']',1,850)
-LexToken(ASSIGNMENT,'=',1,851)
-LexToken(VAR,'MOTOR',1,852)
-LexToken(OPENBRACKET,'(',1,857)
-LexToken(VAR,'job',1,858)
-LexToken(COMMA,',',1,861)
-LexToken(VAR,'arg1',1,862)
-LexToken(COMMA,',',1,866)
-LexToken(VAR,'arg2',1,867)
-LexToken(CLOSEBRACKET,')',1,871)
-LexToken(EOL,'\n',1,872)
-LexToken(EOL,'\n',1,907)
-LexToken(EOL,'\n',1,960)
-LexToken(EOL,'\n',1,1039)
-LexToken(EOL,'\n',1,1105)
-LexToken(EOL,'\n',1,1106)
-LexToken(VAR,'x',1,1111)
-LexToken(ASSIGNMENT,'=',1,1112)
-LexToken(OPENSQBRACKET,'[',1,1113)
-LexToken(CLOSESQBRACKET,']',1,1114)
-LexToken(EOL,'\n',1,1115)
-LexToken(VAR,'y',1,1121)
-LexToken(ASSIGNMENT,'=',1,1122)
-LexToken(OPENSQBRACKET,'[',1,1123)
-LexToken(CLOSESQBRACKET,']',1,1124)
-LexToken(EOL,'\n',1,1125)
-LexToken(VAR,'typ',1,1131)
-LexToken(ASSIGNMENT,'=',1,1134)
-LexToken(OPENSQBRACKET,'[',1,1135)
-LexToken(CLOSESQBRACKET,']',1,1136)
-LexToken(EOL,'\n',1,1137)
-LexToken(SELECT,'select',1,1143)
-LexToken(VAR,'job',1,1150)
-LexToken(EOL,'\n',1,1153)
-LexToken(CASE,'case',1,1158)
-LexToken(DQSTRING,'"set"',1,1167)
-LexToken(THEN,'then',1,1169)
-LexToken(EOL,'\n',1,1173)
-LexToken(VAR,'x',1,1182)
-LexToken(ASSIGNMENT,'=',1,1183)
-LexToken(VAR,'arg1',1,1184)
-LexToken(EOL,'\n',1,1188)
-LexToken(CASE,'case',1,1194)
-LexToken(DQSTRING,'"define"',1,1206)
-LexToken(THEN,'then',1,1208)
-LexToken(EOL,'\n',1,1212)
-LexToken(VAR,'model',1,1221)
-LexToken(ASSIGNMENT,'=',1,1226)
-LexToken(SCICOS_MODEL,'scicos_model',1,1227)
-LexToken(OPENBRACKET,'(',1,1239)
-LexToken(CLOSEBRACKET,')',1,1240)
-LexToken(EOL,'\n',1,1241)
-LexToken(VAR,'model',1,1250)
-LexToken(DOT,'.',1,1255)
-LexToken(VAR,'out',1,1256)
-LexToken(ASSIGNMENT,'=',1,1259)
-LexToken(OPENSQBRACKET,'[',1,1260)
-LexToken(NUMBER,'1',1,1261)
-LexToken(SEMICOLON,';',1,1262)
-LexToken(NUMBER,'1',1,1263)
-LexToken(CLOSESQBRACKET,']',1,1264)
-LexToken(EOL,'\n',1,1265)
-LexToken(VAR,'model',1,1274)
-LexToken(DOT,'.',1,1279)
-LexToken(VAR,'in',1,1280)
-LexToken(ASSIGNMENT,'=',1,1282)
-LexToken(OPENSQBRACKET,'[',1,1283)
-LexToken(NUMBER,'1',1,1284)
-LexToken(CLOSESQBRACKET,']',1,1285)
-LexToken(EOL,'\n',1,1286)
-LexToken(VAR,'model',1,1296)
-LexToken(DOT,'.',1,1301)
-LexToken(VAR,'sim',1,1302)
-LexToken(ASSIGNMENT,'=',1,1305)
-LexToken(DQSTRING,'"motor"',1,1312)
-LexToken(EOL,'\n',1,1313)
-LexToken(VAR,'model',1,1322)
-LexToken(DOT,'.',1,1327)
-LexToken(VAR,'blocktype',1,1328)
-LexToken(ASSIGNMENT,'=',1,1337)
-LexToken(DQSTRING,'"c"',1,1340)
-LexToken(EOL,'\n',1,1341)
-LexToken(VAR,'model',1,1350)
-LexToken(DOT,'.',1,1355)
-LexToken(VAR,'dep_ut',1,1356)
-LexToken(ASSIGNMENT,'=',1,1362)
-LexToken(OPENSQBRACKET,'[',1,1363)
-LexToken(PREVAR_BOOLEAN,'%t',1,1364)
-LexToken(PREVAR_BOOLEAN,'%f',1,1367)
-LexToken(CLOSESQBRACKET,']',1,1369)
-LexToken(EOL,'\n',1,1370)
-LexToken(VAR,'gr_i',1,1379)
-LexToken(ASSIGNMENT,'=',1,1383)
-LexToken(OPENSQBRACKET,'[',1,1384)
-LexToken(CLOSESQBRACKET,']',1,1385)
-LexToken(EOL,'\n',1,1386)
-LexToken(EOL,'\n',1,1388)
-LexToken(EOL,'\n',1,1389)
-LexToken(VAR,'exprs',1,1398)
-LexToken(ASSIGNMENT,'=',1,1403)
-LexToken(DQSTRING,'""',1,1405)
-LexToken(EOL,'\n',1,1406)
-LexToken(VAR,'x',1,1415)
-LexToken(ASSIGNMENT,'=',1,1416)
-LexToken(VAR,'standard_define',1,1417)
-LexToken(OPENBRACKET,'(',1,1432)
-LexToken(OPENSQBRACKET,'[',1,1433)
-LexToken(NUMBER,'2',1,1434)
-LexToken(NUMBER,'2',1,1436)
-LexToken(CLOSESQBRACKET,']',1,1437)
-LexToken(COMMA,',',1,1438)
-LexToken(VAR,'model',1,1439)
-LexToken(COMMA,',',1,1444)
-LexToken(VAR,'exprs',1,1445)
-LexToken(COMMA,',',1,1450)
-LexToken(VAR,'gr_i',1,1451)
-LexToken(CLOSEBRACKET,')',1,1455)
-LexToken(EOL,'\n',1,1456)
-LexToken(VAR,'x',1,1465)
-LexToken(DOT,'.',1,1466)
-LexToken(VAR,'graphics',1,1467)
-LexToken(DOT,'.',1,1475)
-LexToken(VAR,'out_implicit',1,1476)
-LexToken(ASSIGNMENT,'=',1,1488)
-LexToken(OPENSQBRACKET,'[',1,1489)
-LexToken(DQSTRING,'"I"',1,1492)
-LexToken(SEMICOLON,';',1,1493)
-LexToken(DQSTRING,'"I"',1,1496)
-LexToken(CLOSESQBRACKET,']',1,1497)
-LexToken(EOL,'\n',1,1498)
-LexToken(VAR,'x',1,1507)
-LexToken(DOT,'.',1,1508)
-LexToken(VAR,'graphics',1,1509)
-LexToken(DOT,'.',1,1517)
-LexToken(VAR,'in_implicit',1,1518)
-LexToken(ASSIGNMENT,'=',1,1529)
-LexToken(OPENSQBRACKET,'[',1,1530)
-LexToken(DQSTRING,'"I"',1,1533)
-LexToken(CLOSESQBRACKET,']',1,1534)
-LexToken(EOL,'\n',1,1535)
-LexToken(END,'end',1,1540)
-LexToken(EOL,'\n',1,1543)
-LexToken(ENDFUNCTION,'endfunction',1,1544)
-LexToken(EOL,'\n',1,1555)
+/* autogenerated from "macros/Electrical/MOTOR.sci" */
+function MOTOR() {
+MOTOR.prototype.get = function MOTOR() {
+}
+MOTOR.prototype.set = function MOTOR() {
+x=arg1;
+}
+MOTOR.prototype.define = function MOTOR() {
+model=scicos_model();
+model.out=[1,1];
+model.in=[1];
+model.sim="motor";
+model.blocktype="c";
+model.dep_ut=[true,None];
+gr_i=[];
+exprs="";
+x=standard_define([2,2],model,exprs,gr_i);
+x.graphics.out_implicit=["I","I"];
+x.graphics.in_implicit=["I"];
+}
+MOTOR.prototype.details = function MOTOR() {
+}
+}
diff --git a/js/Electrical/NMOS.js b/js/Electrical/NMOS.js
index c2da1fb7..d33e5cd1 100644
--- a/js/Electrical/NMOS.js
+++ b/js/Electrical/NMOS.js
@@ -1,538 +1,52 @@
-LexToken(EOL,'\n',1,10)
-LexToken(EOL,'\n',1,13)
-LexToken(EOL,'\n',1,73)
-LexToken(EOL,'\n',1,76)
-LexToken(EOL,'\n',1,148)
-LexToken(EOL,'\n',1,220)
-LexToken(EOL,'\n',1,289)
-LexToken(EOL,'\n',1,328)
-LexToken(EOL,'\n',1,331)
-LexToken(EOL,'\n',1,398)
-LexToken(EOL,'\n',1,464)
-LexToken(EOL,'\n',1,529)
-LexToken(EOL,'\n',1,577)
-LexToken(EOL,'\n',1,580)
-LexToken(EOL,'\n',1,649)
-LexToken(EOL,'\n',1,712)
-LexToken(EOL,'\n',1,794)
-LexToken(EOL,'\n',1,797)
-LexToken(EOL,'\n',1,828)
-LexToken(EOL,'\n',1,831)
-LexToken(EOL,'\n',1,832)
-LexToken(FUNCTION,'function',1,833)
-LexToken(OPENSQBRACKET,'[',1,842)
-LexToken(VAR,'x',1,843)
-LexToken(COMMA,',',1,844)
-LexToken(VAR,'y',1,845)
-LexToken(COMMA,',',1,846)
-LexToken(VAR,'typ',1,847)
-LexToken(CLOSESQBRACKET,']',1,850)
-LexToken(ASSIGNMENT,'=',1,851)
-LexToken(VAR,'NMOS',1,852)
-LexToken(OPENBRACKET,'(',1,856)
-LexToken(VAR,'job',1,857)
-LexToken(COMMA,',',1,860)
-LexToken(VAR,'arg1',1,861)
-LexToken(COMMA,',',1,865)
-LexToken(VAR,'arg2',1,866)
-LexToken(CLOSEBRACKET,')',1,870)
-LexToken(EOL,'\n',1,871)
-LexToken(VAR,'x',1,876)
-LexToken(ASSIGNMENT,'=',1,877)
-LexToken(OPENSQBRACKET,'[',1,878)
-LexToken(CLOSESQBRACKET,']',1,879)
-LexToken(EOL,'\n',1,880)
-LexToken(VAR,'y',1,886)
-LexToken(ASSIGNMENT,'=',1,887)
-LexToken(OPENSQBRACKET,'[',1,888)
-LexToken(CLOSESQBRACKET,']',1,889)
-LexToken(EOL,'\n',1,890)
-LexToken(VAR,'typ',1,896)
-LexToken(ASSIGNMENT,'=',1,899)
-LexToken(OPENSQBRACKET,'[',1,900)
-LexToken(CLOSESQBRACKET,']',1,901)
-LexToken(EOL,'\n',1,902)
-LexToken(SELECT,'select',1,908)
-LexToken(VAR,'job',1,915)
-LexToken(EOL,'\n',1,918)
-LexToken(CASE,'case',1,923)
-LexToken(DQSTRING,'"set"',1,932)
-LexToken(THEN,'then',1,934)
-LexToken(EOL,'\n',1,938)
-LexToken(VAR,'x',1,947)
-LexToken(ASSIGNMENT,'=',1,948)
-LexToken(VAR,'arg1',1,949)
-LexToken(EOL,'\n',1,953)
-LexToken(VAR,'graphics',1,963)
-LexToken(ASSIGNMENT,'=',1,971)
-LexToken(VAR,'arg1',1,972)
-LexToken(DOT,'.',1,976)
-LexToken(VAR,'graphics',1,977)
-LexToken(EOL,'\n',1,985)
-LexToken(VAR,'exprs',1,995)
-LexToken(ASSIGNMENT,'=',1,1000)
-LexToken(VAR,'graphics',1,1001)
-LexToken(DOT,'.',1,1009)
-LexToken(VAR,'exprs',1,1010)
-LexToken(EOL,'\n',1,1015)
-LexToken(VAR,'model',1,1024)
-LexToken(ASSIGNMENT,'=',1,1029)
-LexToken(VAR,'arg1',1,1030)
-LexToken(DOT,'.',1,1034)
-LexToken(VAR,'model',1,1035)
-LexToken(EOL,'\n',1,1040)
-LexToken(WHILE,'while',1,1050)
-LexToken(PREVAR_BOOLEAN,'%t',1,1056)
-LexToken(DO,'do',1,1059)
-LexToken(EOL,'\n',1,1061)
-LexToken(OPENSQBRACKET,'[',1,1074)
-LexToken(VAR,'ok',1,1075)
-LexToken(COMMA,',',1,1077)
-LexToken(VAR,'W',1,1078)
-LexToken(COMMA,',',1,1079)
-LexToken(VAR,'L',1,1080)
-LexToken(COMMA,',',1,1081)
-LexToken(VAR,'Beta',1,1082)
-LexToken(COMMA,',',1,1086)
-LexToken(VAR,'Vt',1,1087)
-LexToken(COMMA,',',1,1089)
-LexToken(VAR,'K2',1,1090)
-LexToken(COMMA,',',1,1092)
-LexToken(VAR,'K5',1,1093)
-LexToken(COMMA,',',1,1095)
-LexToken(VAR,'dW',1,1096)
-LexToken(COMMA,',',1,1098)
-LexToken(VAR,'dL',1,1099)
-LexToken(COMMA,',',1,1101)
-LexToken(VAR,'RDS',1,1102)
-LexToken(COMMA,',',1,1105)
-LexToken(VAR,'exprs',1,1106)
-LexToken(CLOSESQBRACKET,']',1,1111)
-LexToken(ASSIGNMENT,'=',1,1112)
-LexToken(SCICOS_GETVALUE,'scicos_getvalue',1,1113)
-LexToken(OPENBRACKET,'(',1,1128)
-LexToken(DQSTRING,'"Set NMOS Transistor block parameters"',1,1166)
-LexToken(COMMA,',',1,1167)
-LexToken(OPENSQBRACKET,'[',1,1183)
-LexToken(DQSTRING,'"Width [m]"',1,1194)
-LexToken(SEMICOLON,';',1,1195)
-LexToken(DQSTRING,'"Length [m]"',1,1222)
-LexToken(SEMICOLON,';',1,1223)
-LexToken(DQSTRING,'"Transconductance parameter [A/(V*V)]"',1,1276)
-LexToken(SEMICOLON,';',1,1277)
-LexToken(DQSTRING,'"Zero bias threshold voltage [V]"',1,1325)
-LexToken(SEMICOLON,';',1,1326)
-LexToken(DQSTRING,'"Bulk threshold parameter"',1,1367)
-LexToken(SEMICOLON,';',1,1368)
-LexToken(DQSTRING,'"Reduction of pinch-off region"',1,1414)
-LexToken(SEMICOLON,';',1,1415)
-LexToken(DQSTRING,'"Narrowing of channel [m]"',1,1456)
-LexToken(SEMICOLON,';',1,1457)
-LexToken(DQSTRING,'"Shortening of channel [m]"',1,1499)
-LexToken(SEMICOLON,';',1,1500)
-LexToken(DQSTRING,'"Drain-Source-Resistance [Ohm]"',1,1546)
-LexToken(CLOSESQBRACKET,']',1,1547)
-LexToken(COMMA,',',1,1548)
-LexToken(VAR,'list',1,1564)
-LexToken(OPENBRACKET,'(',1,1568)
-LexToken(DQSTRING,'"vec"',1,1573)
-LexToken(COMMA,',',1,1574)
-LexToken(ADDITION,'-',1,1575)
-LexToken(NUMBER,'1',1,1576)
-LexToken(COMMA,',',1,1577)
-LexToken(DQSTRING,'"vec"',1,1582)
-LexToken(COMMA,',',1,1583)
-LexToken(ADDITION,'-',1,1584)
-LexToken(NUMBER,'1',1,1585)
-LexToken(COMMA,',',1,1586)
-LexToken(DQSTRING,'"vec"',1,1591)
-LexToken(COMMA,',',1,1592)
-LexToken(ADDITION,'-',1,1593)
-LexToken(NUMBER,'1',1,1594)
-LexToken(COMMA,',',1,1595)
-LexToken(DQSTRING,'"vec"',1,1600)
-LexToken(COMMA,',',1,1601)
-LexToken(ADDITION,'-',1,1602)
-LexToken(NUMBER,'1',1,1603)
-LexToken(COMMA,',',1,1604)
-LexToken(DQSTRING,'"vec"',1,1609)
-LexToken(COMMA,',',1,1610)
-LexToken(ADDITION,'-',1,1611)
-LexToken(NUMBER,'1',1,1612)
-LexToken(COMMA,',',1,1613)
-LexToken(DQSTRING,'"vec"',1,1618)
-LexToken(COMMA,',',1,1619)
-LexToken(ADDITION,'-',1,1620)
-LexToken(NUMBER,'1',1,1621)
-LexToken(COMMA,',',1,1622)
-LexToken(DQSTRING,'"vec"',1,1627)
-LexToken(COMMA,',',1,1628)
-LexToken(ADDITION,'-',1,1629)
-LexToken(NUMBER,'1',1,1630)
-LexToken(COMMA,',',1,1631)
-LexToken(DQSTRING,'"vec"',1,1636)
-LexToken(COMMA,',',1,1637)
-LexToken(ADDITION,'-',1,1638)
-LexToken(NUMBER,'1',1,1639)
-LexToken(COMMA,',',1,1640)
-LexToken(DQSTRING,'"vec"',1,1645)
-LexToken(COMMA,',',1,1646)
-LexToken(ADDITION,'-',1,1647)
-LexToken(NUMBER,'1',1,1648)
-LexToken(CLOSEBRACKET,')',1,1649)
-LexToken(COMMA,',',1,1650)
-LexToken(VAR,'exprs',1,1651)
-LexToken(CLOSEBRACKET,')',1,1656)
-LexToken(EOL,'\n',1,1657)
-LexToken(EOL,'\n',1,1658)
-LexToken(IF,'if',1,1671)
-LexToken(NOT,'~',1,1674)
-LexToken(VAR,'ok',1,1675)
-LexToken(THEN,'then',1,1678)
-LexToken(EOL,'\n',1,1682)
-LexToken(BREAK,'break',1,1699)
-LexToken(EOL,'\n',1,1704)
-LexToken(END,'end',1,1718)
-LexToken(EOL,'\n',1,1721)
-LexToken(VAR,'model',1,1734)
-LexToken(DOT,'.',1,1739)
-LexToken(VAR,'equations',1,1740)
-LexToken(DOT,'.',1,1749)
-LexToken(VAR,'parameters',1,1750)
-LexToken(OPENBRACKET,'(',1,1760)
-LexToken(NUMBER,'2',1,1761)
-LexToken(CLOSEBRACKET,')',1,1762)
-LexToken(ASSIGNMENT,'=',1,1763)
-LexToken(VAR,'list',1,1764)
-LexToken(OPENBRACKET,'(',1,1768)
-LexToken(VAR,'W',1,1769)
-LexToken(COMMA,',',1,1770)
-LexToken(VAR,'L',1,1771)
-LexToken(COMMA,',',1,1772)
-LexToken(VAR,'Beta',1,1773)
-LexToken(COMMA,',',1,1777)
-LexToken(VAR,'Vt',1,1778)
-LexToken(COMMA,',',1,1780)
-LexToken(VAR,'K2',1,1781)
-LexToken(COMMA,',',1,1783)
-LexToken(VAR,'K5',1,1784)
-LexToken(COMMA,',',1,1786)
-LexToken(VAR,'dW',1,1787)
-LexToken(COMMA,',',1,1789)
-LexToken(VAR,'dL',1,1790)
-LexToken(COMMA,',',1,1792)
-LexToken(VAR,'RDS',1,1793)
-LexToken(CLOSEBRACKET,')',1,1796)
-LexToken(EOL,'\n',1,1797)
-LexToken(VAR,'graphics',1,1810)
-LexToken(DOT,'.',1,1818)
-LexToken(VAR,'exprs',1,1819)
-LexToken(ASSIGNMENT,'=',1,1824)
-LexToken(VAR,'exprs',1,1825)
-LexToken(EOL,'\n',1,1830)
-LexToken(VAR,'x',1,1843)
-LexToken(DOT,'.',1,1844)
-LexToken(VAR,'graphics',1,1845)
-LexToken(ASSIGNMENT,'=',1,1853)
-LexToken(VAR,'graphics',1,1854)
-LexToken(EOL,'\n',1,1862)
-LexToken(VAR,'x',1,1876)
-LexToken(DOT,'.',1,1877)
-LexToken(VAR,'model',1,1878)
-LexToken(ASSIGNMENT,'=',1,1883)
-LexToken(VAR,'model',1,1884)
-LexToken(EOL,'\n',1,1889)
-LexToken(BREAK,'break',1,1902)
-LexToken(EOL,'\n',1,1907)
-LexToken(END,'end',1,1916)
-LexToken(EOL,'\n',1,1919)
-LexToken(CASE,'case',1,1924)
-LexToken(DQSTRING,'"define"',1,1936)
-LexToken(THEN,'then',1,1938)
-LexToken(EOL,'\n',1,1942)
-LexToken(VAR,'model',1,1951)
-LexToken(ASSIGNMENT,'=',1,1956)
-LexToken(SCICOS_MODEL,'scicos_model',1,1957)
-LexToken(OPENBRACKET,'(',1,1969)
-LexToken(CLOSEBRACKET,')',1,1970)
-LexToken(EOL,'\n',1,1971)
-LexToken(VAR,'W',1,1980)
-LexToken(ASSIGNMENT,'=',1,1981)
-LexToken(NUMBER,'20.e-6',1,1982)
-LexToken(EOL,'\n',1,1988)
-LexToken(VAR,'L',1,1998)
-LexToken(ASSIGNMENT,'=',1,1999)
-LexToken(NUMBER,'6.e-6',1,2000)
-LexToken(EOL,'\n',1,2005)
-LexToken(VAR,'Beta',1,2015)
-LexToken(ASSIGNMENT,'=',1,2019)
-LexToken(NUMBER,'0.041e-3',1,2020)
-LexToken(EOL,'\n',1,2028)
-LexToken(VAR,'Vt',1,2038)
-LexToken(ASSIGNMENT,'=',1,2040)
-LexToken(NUMBER,'0.8',1,2041)
-LexToken(EOL,'\n',1,2044)
-LexToken(VAR,'K2',1,2054)
-LexToken(ASSIGNMENT,'=',1,2056)
-LexToken(NUMBER,'1.144',1,2057)
-LexToken(EOL,'\n',1,2062)
-LexToken(VAR,'K5',1,2072)
-LexToken(ASSIGNMENT,'=',1,2074)
-LexToken(NUMBER,'0.7311',1,2076)
-LexToken(EOL,'\n',1,2082)
-LexToken(VAR,'dW',1,2092)
-LexToken(ASSIGNMENT,'=',1,2094)
-LexToken(ADDITION,'-',1,2095)
-LexToken(NUMBER,'2.5e-6',1,2096)
-LexToken(EOL,'\n',1,2102)
-LexToken(VAR,'dL',1,2112)
-LexToken(ASSIGNMENT,'=',1,2114)
-LexToken(ADDITION,'-',1,2116)
-LexToken(NUMBER,'1.5e-6',1,2117)
-LexToken(EOL,'\n',1,2123)
-LexToken(VAR,'RDS',1,2133)
-LexToken(ASSIGNMENT,'=',1,2136)
-LexToken(NUMBER,'1.e+7',1,2137)
-LexToken(EOL,'\n',1,2142)
-LexToken(EOL,'\n',1,2144)
-LexToken(VAR,'model',1,2153)
-LexToken(DOT,'.',1,2158)
-LexToken(VAR,'sim',1,2159)
-LexToken(ASSIGNMENT,'=',1,2162)
-LexToken(DQSTRING,'"NMOS"',1,2168)
-LexToken(EOL,'\n',1,2169)
-LexToken(VAR,'model',1,2178)
-LexToken(DOT,'.',1,2183)
-LexToken(VAR,'blocktype',1,2184)
-LexToken(ASSIGNMENT,'=',1,2193)
-LexToken(DQSTRING,'"c"',1,2196)
-LexToken(EOL,'\n',1,2197)
-LexToken(VAR,'model',1,2206)
-LexToken(DOT,'.',1,2211)
-LexToken(VAR,'dep_ut',1,2212)
-LexToken(ASSIGNMENT,'=',1,2218)
-LexToken(OPENSQBRACKET,'[',1,2219)
-LexToken(PREVAR_BOOLEAN,'%t',1,2220)
-LexToken(PREVAR_BOOLEAN,'%f',1,2223)
-LexToken(CLOSESQBRACKET,']',1,2225)
-LexToken(EOL,'\n',1,2226)
-LexToken(VAR,'mo',1,2235)
-LexToken(ASSIGNMENT,'=',1,2237)
-LexToken(VAR,'modelica',1,2238)
-LexToken(OPENBRACKET,'(',1,2246)
-LexToken(CLOSEBRACKET,')',1,2247)
-LexToken(EOL,'\n',1,2248)
-LexToken(VAR,'mo',1,2257)
-LexToken(DOT,'.',1,2259)
-LexToken(VAR,'model',1,2260)
-LexToken(ASSIGNMENT,'=',1,2265)
-LexToken(DQSTRING,'"NMOS"',1,2271)
-LexToken(EOL,'\n',1,2272)
-LexToken(VAR,'mo',1,2282)
-LexToken(DOT,'.',1,2284)
-LexToken(VAR,'outputs',1,2285)
-LexToken(ASSIGNMENT,'=',1,2292)
-LexToken(OPENSQBRACKET,'[',1,2293)
-LexToken(DQSTRING,'"D"',1,2296)
-LexToken(SEMICOLON,';',1,2297)
-LexToken(DQSTRING,'"B"',1,2300)
-LexToken(SEMICOLON,';',1,2301)
-LexToken(DQSTRING,'"S"',1,2304)
-LexToken(CLOSESQBRACKET,']',1,2305)
-LexToken(EOL,'\n',1,2306)
-LexToken(VAR,'mo',1,2315)
-LexToken(DOT,'.',1,2317)
-LexToken(VAR,'inputs',1,2318)
-LexToken(ASSIGNMENT,'=',1,2324)
-LexToken(DQSTRING,'"G"',1,2327)
-LexToken(EOL,'\n',1,2328)
-LexToken(VAR,'mo',1,2338)
-LexToken(DOT,'.',1,2340)
-LexToken(VAR,'parameters',1,2341)
-LexToken(ASSIGNMENT,'=',1,2351)
-LexToken(VAR,'list',1,2352)
-LexToken(OPENBRACKET,'(',1,2356)
-LexToken(OPENSQBRACKET,'[',1,2357)
-LexToken(DQSTRING,'"W"',1,2360)
-LexToken(SEMICOLON,';',1,2361)
-LexToken(DQSTRING,'"L"',1,2364)
-LexToken(SEMICOLON,';',1,2365)
-LexToken(DQSTRING,'"Beta"',1,2371)
-LexToken(SEMICOLON,';',1,2372)
-LexToken(DQSTRING,'"Vt"',1,2376)
-LexToken(SEMICOLON,';',1,2377)
-LexToken(DQSTRING,'"K2"',1,2381)
-LexToken(SEMICOLON,';',1,2382)
-LexToken(DQSTRING,'"K5"',1,2386)
-LexToken(SEMICOLON,';',1,2387)
-LexToken(DQSTRING,'"dW"',1,2391)
-LexToken(SEMICOLON,';',1,2392)
-LexToken(DQSTRING,'"dL"',1,2396)
-LexToken(SEMICOLON,';',1,2397)
-LexToken(DQSTRING,'"RDS"',1,2402)
-LexToken(CLOSESQBRACKET,']',1,2403)
-LexToken(COMMA,',',1,2404)
-LexToken(OPENSQBRACKET,'[',1,2405)
-LexToken(VAR,'W',1,2406)
-LexToken(SEMICOLON,';',1,2407)
-LexToken(VAR,'L',1,2408)
-LexToken(SEMICOLON,';',1,2409)
-LexToken(VAR,'Beta',1,2410)
-LexToken(SEMICOLON,';',1,2414)
-LexToken(VAR,'Vt',1,2415)
-LexToken(SEMICOLON,';',1,2417)
-LexToken(VAR,'K2',1,2418)
-LexToken(SEMICOLON,';',1,2420)
-LexToken(VAR,'K5',1,2421)
-LexToken(SEMICOLON,';',1,2423)
-LexToken(VAR,'dW',1,2424)
-LexToken(SEMICOLON,';',1,2426)
-LexToken(VAR,'dL',1,2427)
-LexToken(SEMICOLON,';',1,2429)
-LexToken(VAR,'RDS',1,2430)
-LexToken(CLOSESQBRACKET,']',1,2433)
-LexToken(CLOSEBRACKET,')',1,2434)
-LexToken(EOL,'\n',1,2435)
-LexToken(VAR,'model',1,2444)
-LexToken(DOT,'.',1,2449)
-LexToken(VAR,'equations',1,2450)
-LexToken(ASSIGNMENT,'=',1,2459)
-LexToken(VAR,'mo',1,2460)
-LexToken(EOL,'\n',1,2462)
-LexToken(VAR,'model',1,2471)
-LexToken(DOT,'.',1,2476)
-LexToken(VAR,'in',1,2477)
-LexToken(ASSIGNMENT,'=',1,2479)
-LexToken(VAR,'ones',1,2480)
-LexToken(OPENBRACKET,'(',1,2484)
-LexToken(VAR,'size',1,2485)
-LexToken(OPENBRACKET,'(',1,2489)
-LexToken(VAR,'mo',1,2490)
-LexToken(DOT,'.',1,2492)
-LexToken(VAR,'inputs',1,2493)
-LexToken(COMMA,',',1,2499)
-LexToken(DQSTRING,'"*"',1,2502)
-LexToken(CLOSEBRACKET,')',1,2503)
-LexToken(COMMA,',',1,2504)
-LexToken(NUMBER,'1',1,2505)
-LexToken(CLOSEBRACKET,')',1,2506)
-LexToken(EOL,'\n',1,2507)
-LexToken(VAR,'model',1,2516)
-LexToken(DOT,'.',1,2521)
-LexToken(VAR,'out',1,2522)
-LexToken(ASSIGNMENT,'=',1,2525)
-LexToken(VAR,'ones',1,2526)
-LexToken(OPENBRACKET,'(',1,2530)
-LexToken(VAR,'size',1,2531)
-LexToken(OPENBRACKET,'(',1,2535)
-LexToken(VAR,'mo',1,2536)
-LexToken(DOT,'.',1,2538)
-LexToken(VAR,'outputs',1,2539)
-LexToken(COMMA,',',1,2546)
-LexToken(DQSTRING,'"*"',1,2549)
-LexToken(CLOSEBRACKET,')',1,2550)
-LexToken(COMMA,',',1,2551)
-LexToken(NUMBER,'1',1,2552)
-LexToken(CLOSEBRACKET,')',1,2553)
-LexToken(EOL,'\n',1,2554)
-LexToken(VAR,'exprs',1,2563)
-LexToken(ASSIGNMENT,'=',1,2568)
-LexToken(OPENSQBRACKET,'[',1,2569)
-LexToken(VAR,'string',1,2570)
-LexToken(OPENBRACKET,'(',1,2576)
-LexToken(VAR,'W',1,2577)
-LexToken(CLOSEBRACKET,')',1,2578)
-LexToken(SEMICOLON,';',1,2579)
-LexToken(VAR,'string',1,2580)
-LexToken(OPENBRACKET,'(',1,2586)
-LexToken(VAR,'L',1,2587)
-LexToken(CLOSEBRACKET,')',1,2588)
-LexToken(SEMICOLON,';',1,2589)
-LexToken(VAR,'string',1,2590)
-LexToken(OPENBRACKET,'(',1,2596)
-LexToken(VAR,'Beta',1,2597)
-LexToken(CLOSEBRACKET,')',1,2601)
-LexToken(SEMICOLON,';',1,2602)
-LexToken(VAR,'string',1,2603)
-LexToken(OPENBRACKET,'(',1,2609)
-LexToken(VAR,'Vt',1,2610)
-LexToken(CLOSEBRACKET,')',1,2612)
-LexToken(SEMICOLON,';',1,2613)
-LexToken(VAR,'string',1,2614)
-LexToken(OPENBRACKET,'(',1,2620)
-LexToken(VAR,'K2',1,2621)
-LexToken(CLOSEBRACKET,')',1,2623)
-LexToken(SEMICOLON,';',1,2624)
-LexToken(VAR,'string',1,2625)
-LexToken(OPENBRACKET,'(',1,2631)
-LexToken(VAR,'K5',1,2632)
-LexToken(CLOSEBRACKET,')',1,2634)
-LexToken(SEMICOLON,';',1,2635)
-LexToken(VAR,'string',1,2636)
-LexToken(OPENBRACKET,'(',1,2642)
-LexToken(VAR,'dW',1,2643)
-LexToken(CLOSEBRACKET,')',1,2645)
-LexToken(SEMICOLON,';',1,2646)
-LexToken(VAR,'string',1,2647)
-LexToken(OPENBRACKET,'(',1,2653)
-LexToken(VAR,'dL',1,2654)
-LexToken(CLOSEBRACKET,')',1,2656)
-LexToken(SEMICOLON,';',1,2657)
-LexToken(VAR,'string',1,2658)
-LexToken(OPENBRACKET,'(',1,2664)
-LexToken(VAR,'RDS',1,2665)
-LexToken(CLOSEBRACKET,')',1,2668)
-LexToken(CLOSESQBRACKET,']',1,2669)
-LexToken(EOL,'\n',1,2670)
-LexToken(VAR,'gr_i',1,2679)
-LexToken(ASSIGNMENT,'=',1,2683)
-LexToken(OPENSQBRACKET,'[',1,2684)
-LexToken(CLOSESQBRACKET,']',1,2685)
-LexToken(EOL,'\n',1,2686)
-LexToken(EOL,'\n',1,2687)
-LexToken(VAR,'x',1,2696)
-LexToken(ASSIGNMENT,'=',1,2697)
-LexToken(VAR,'standard_define',1,2698)
-LexToken(OPENBRACKET,'(',1,2713)
-LexToken(OPENSQBRACKET,'[',1,2714)
-LexToken(NUMBER,'2',1,2715)
-LexToken(NUMBER,'2',1,2717)
-LexToken(CLOSESQBRACKET,']',1,2718)
-LexToken(COMMA,',',1,2719)
-LexToken(VAR,'model',1,2720)
-LexToken(COMMA,',',1,2725)
-LexToken(VAR,'exprs',1,2726)
-LexToken(COMMA,',',1,2731)
-LexToken(VAR,'gr_i',1,2732)
-LexToken(CLOSEBRACKET,')',1,2736)
-LexToken(EOL,'\n',1,2737)
-LexToken(VAR,'x',1,2746)
-LexToken(DOT,'.',1,2747)
-LexToken(VAR,'graphics',1,2748)
-LexToken(DOT,'.',1,2756)
-LexToken(VAR,'in_implicit',1,2757)
-LexToken(ASSIGNMENT,'=',1,2768)
-LexToken(OPENSQBRACKET,'[',1,2769)
-LexToken(DQSTRING,'"I"',1,2772)
-LexToken(CLOSESQBRACKET,']',1,2773)
-LexToken(EOL,'\n',1,2774)
-LexToken(VAR,'x',1,2783)
-LexToken(DOT,'.',1,2784)
-LexToken(VAR,'graphics',1,2785)
-LexToken(DOT,'.',1,2793)
-LexToken(VAR,'out_implicit',1,2794)
-LexToken(ASSIGNMENT,'=',1,2806)
-LexToken(OPENSQBRACKET,'[',1,2807)
-LexToken(DQSTRING,'"I"',1,2810)
-LexToken(SEMICOLON,';',1,2811)
-LexToken(DQSTRING,'"I"',1,2814)
-LexToken(SEMICOLON,';',1,2815)
-LexToken(DQSTRING,'"I"',1,2818)
-LexToken(CLOSESQBRACKET,']',1,2819)
-LexToken(EOL,'\n',1,2820)
-LexToken(END,'end',1,2825)
-LexToken(EOL,'\n',1,2828)
-LexToken(ENDFUNCTION,'endfunction',1,2829)
-LexToken(EOL,'\n',1,2840)
-LexToken(EOL,'\n',1,2841)
-LexToken(EOL,'\n',1,2842)
+/* autogenerated from "macros/Electrical/NMOS.sci" */
+function NMOS() {
+NMOS.prototype.get = function NMOS() {
+}
+NMOS.prototype.set = function NMOS() {
+x=arg1;
+graphics=arg1.graphics;
+exprs=graphics.exprs;
+model=arg1.model;
+while (true) {
+[ok,W,L,Beta,Vt,K2,K5,dW,dL,RDS,exprs]=scicos_getvalue("Set NMOS Transistor block parameters",["Width [m]","Length [m]","Transconductance parameter [A/(V*V)]","Zero bias threshold voltage [V]","Bulk threshold parameter","Reduction of pinch-off region","Narrowing of channel [m]","Shortening of channel [m]","Drain-Source-Resistance [Ohm]"],list("vec",-1,"vec",-1,"vec",-1,"vec",-1,"vec",-1,"vec",-1,"vec",-1,"vec",-1,"vec",-1),exprs);
+if (!ok) {
+break
+}
+model.equations.parameters[2]=list(W,L,Beta,Vt,K2,K5,dW,dL,RDS);
+graphics.exprs=exprs;
+x.graphics=graphics;
+x.model=model;
+break
+}
+}
+NMOS.prototype.define = function NMOS() {
+model=scicos_model();
+W=20.e-6;
+L=6.e-6;
+Beta=0.041e-3;
+Vt=0.8;
+K2=1.144;
+K5=0.7311;
+dW=-2.5e-6;
+dL=-1.5e-6;
+RDS=1.e+7;
+model.sim="NMOS";
+model.blocktype="c";
+model.dep_ut=[true,None];
+mo=modelica();
+mo.model="NMOS";
+mo.outputs=["D","B","S"];
+mo.inputs="G";
+mo.parameters=list(["W","L","Beta","Vt","K2","K5","dW","dL","RDS"],[W,L,Beta,Vt,K2,K5,dW,dL,RDS]);
+model.equations=mo;
+model.in=ones(size(mo.inputs,"*"),1);
+model.out=ones(size(mo.outputs,"*"),1);
+exprs=[string(W),string(L),string(Beta),string(Vt),string(K2),string(K5),string(dW),string(dL),string(RDS)];
+gr_i=[];
+x=standard_define([2,2],model,exprs,gr_i);
+x.graphics.in_implicit=["I"];
+x.graphics.out_implicit=["I","I","I"];
+}
+NMOS.prototype.details = function NMOS() {
+}
+}
diff --git a/js/Electrical/NPN.js b/js/Electrical/NPN.js
index 392100d0..71fbda02 100644
--- a/js/Electrical/NPN.js
+++ b/js/Electrical/NPN.js
@@ -1,839 +1,3 @@
-LexToken(EOL,'\n',1,10)
-LexToken(EOL,'\n',1,13)
-LexToken(EOL,'\n',1,73)
-LexToken(EOL,'\n',1,76)
-LexToken(EOL,'\n',1,148)
-LexToken(EOL,'\n',1,220)
-LexToken(EOL,'\n',1,289)
-LexToken(EOL,'\n',1,328)
-LexToken(EOL,'\n',1,331)
-LexToken(EOL,'\n',1,398)
-LexToken(EOL,'\n',1,464)
-LexToken(EOL,'\n',1,529)
-LexToken(EOL,'\n',1,577)
-LexToken(EOL,'\n',1,580)
-LexToken(EOL,'\n',1,649)
-LexToken(EOL,'\n',1,712)
-LexToken(EOL,'\n',1,794)
-LexToken(EOL,'\n',1,797)
-LexToken(EOL,'\n',1,828)
-LexToken(EOL,'\n',1,831)
-LexToken(EOL,'\n',1,832)
-LexToken(FUNCTION,'function',1,833)
-LexToken(OPENSQBRACKET,'[',1,842)
-LexToken(VAR,'x',1,843)
-LexToken(COMMA,',',1,844)
-LexToken(VAR,'y',1,845)
-LexToken(COMMA,',',1,846)
-LexToken(VAR,'typ',1,847)
-LexToken(CLOSESQBRACKET,']',1,850)
-LexToken(ASSIGNMENT,'=',1,851)
-LexToken(VAR,'NPN',1,852)
-LexToken(OPENBRACKET,'(',1,855)
-LexToken(VAR,'job',1,856)
-LexToken(COMMA,',',1,859)
-LexToken(VAR,'arg1',1,860)
-LexToken(COMMA,',',1,864)
-LexToken(VAR,'arg2',1,865)
-LexToken(CLOSEBRACKET,')',1,869)
-LexToken(EOL,'\n',1,870)
-LexToken(EOL,'\n',1,947)
-LexToken(EOL,'\n',1,998)
-LexToken(VAR,'x',1,1003)
-LexToken(ASSIGNMENT,'=',1,1004)
-LexToken(OPENSQBRACKET,'[',1,1005)
-LexToken(CLOSESQBRACKET,']',1,1006)
-LexToken(EOL,'\n',1,1007)
-LexToken(VAR,'y',1,1013)
-LexToken(ASSIGNMENT,'=',1,1014)
-LexToken(OPENSQBRACKET,'[',1,1015)
-LexToken(CLOSESQBRACKET,']',1,1016)
-LexToken(EOL,'\n',1,1017)
-LexToken(VAR,'typ',1,1023)
-LexToken(ASSIGNMENT,'=',1,1026)
-LexToken(OPENSQBRACKET,'[',1,1027)
-LexToken(CLOSESQBRACKET,']',1,1028)
-LexToken(EOL,'\n',1,1029)
-LexToken(SELECT,'select',1,1035)
-LexToken(VAR,'job',1,1042)
-LexToken(EOL,'\n',1,1045)
-LexToken(CASE,'case',1,1050)
-LexToken(DQSTRING,'"set"',1,1059)
-LexToken(THEN,'then',1,1061)
-LexToken(EOL,'\n',1,1065)
-LexToken(VAR,'x',1,1074)
-LexToken(ASSIGNMENT,'=',1,1075)
-LexToken(VAR,'arg1',1,1076)
-LexToken(EOL,'\n',1,1080)
-LexToken(VAR,'graphics',1,1090)
-LexToken(ASSIGNMENT,'=',1,1098)
-LexToken(VAR,'arg1',1,1099)
-LexToken(DOT,'.',1,1103)
-LexToken(VAR,'graphics',1,1104)
-LexToken(EOL,'\n',1,1112)
-LexToken(VAR,'exprs',1,1122)
-LexToken(ASSIGNMENT,'=',1,1127)
-LexToken(VAR,'graphics',1,1128)
-LexToken(DOT,'.',1,1136)
-LexToken(VAR,'exprs',1,1137)
-LexToken(EOL,'\n',1,1142)
-LexToken(VAR,'model',1,1151)
-LexToken(ASSIGNMENT,'=',1,1156)
-LexToken(VAR,'arg1',1,1157)
-LexToken(DOT,'.',1,1161)
-LexToken(VAR,'model',1,1162)
-LexToken(EOL,'\n',1,1167)
-LexToken(VAR,'x',1,1177)
-LexToken(ASSIGNMENT,'=',1,1178)
-LexToken(VAR,'arg1',1,1179)
-LexToken(EOL,'\n',1,1183)
-LexToken(VAR,'exprs',1,1192)
-LexToken(ASSIGNMENT,'=',1,1197)
-LexToken(VAR,'x',1,1198)
-LexToken(DOT,'.',1,1199)
-LexToken(VAR,'graphics',1,1200)
-LexToken(DOT,'.',1,1208)
-LexToken(VAR,'exprs',1,1209)
-LexToken(EOL,'\n',1,1214)
-LexToken(WHILE,'while',1,1223)
-LexToken(PREVAR_BOOLEAN,'%t',1,1229)
-LexToken(DO,'do',1,1232)
-LexToken(EOL,'\n',1,1234)
-LexToken(OPENSQBRACKET,'[',1,1247)
-LexToken(VAR,'ok',1,1248)
-LexToken(COMMA,',',1,1250)
-LexToken(VAR,'Bf',1,1251)
-LexToken(COMMA,',',1,1253)
-LexToken(VAR,'Br',1,1254)
-LexToken(COMMA,',',1,1256)
-LexToken(VAR,'Is',1,1257)
-LexToken(COMMA,',',1,1259)
-LexToken(VAR,'Vak',1,1260)
-LexToken(COMMA,',',1,1263)
-LexToken(VAR,'Tauf',1,1264)
-LexToken(COMMA,',',1,1268)
-LexToken(VAR,'Taur',1,1269)
-LexToken(COMMA,',',1,1273)
-LexToken(VAR,'Ccs',1,1274)
-LexToken(COMMA,',',1,1277)
-LexToken(VAR,'Cje',1,1278)
-LexToken(COMMA,',',1,1281)
-LexToken(VAR,'Cjc',1,1282)
-LexToken(COMMA,',',1,1285)
-LexToken(VAR,'Phie',1,1286)
-LexToken(COMMA,',',1,1290)
-LexToken(VAR,'Me',1,1291)
-LexToken(COMMA,',',1,1293)
-LexToken(VAR,'Phic',1,1294)
-LexToken(COMMA,',',1,1298)
-LexToken(VAR,'Mc',1,1299)
-LexToken(COMMA,',',1,1301)
-LexToken(VAR,'Gbc',1,1302)
-LexToken(COMMA,',',1,1305)
-LexToken(VAR,'Gbe',1,1306)
-LexToken(COMMA,',',1,1309)
-LexToken(VAR,'Vt',1,1310)
-LexToken(COMMA,',',1,1312)
-LexToken(VAR,'EMinMax',1,1313)
-LexToken(COMMA,',',1,1320)
-LexToken(VAR,'exprs',1,1321)
-LexToken(CLOSESQBRACKET,']',1,1326)
-LexToken(ASSIGNMENT,'=',1,1327)
-LexToken(SCICOS_GETVALUE,'scicos_getvalue',1,1328)
-LexToken(OPENBRACKET,'(',1,1343)
-LexToken(OPENSQBRACKET,'[',1,1344)
-LexToken(DQSTRING,'"Set NPN block parameters:"',1,1371)
-LexToken(SEMICOLON,';',1,1372)
-LexToken(DQSTRING,'""',1,1374)
-LexToken(CLOSESQBRACKET,']',1,1375)
-LexToken(COMMA,',',1,1376)
-LexToken(OPENSQBRACKET,'[',1,1377)
-LexToken(DQSTRING,'"Bf : Forward beta"',1,1397)
-LexToken(SEMICOLON,';',1,1398)
-LexToken(DQSTRING,'"Br : Reverse beta"',1,1418)
-LexToken(SEMICOLON,';',1,1419)
-LexToken(DQSTRING,'"Is : Transport saturation current"',1,1455)
-LexToken(SEMICOLON,';',1,1456)
-LexToken(DQSTRING,'"Vak : Early voltage (inverse), 1/Volt"',1,1495)
-LexToken(SEMICOLON,';',1,1496)
-LexToken(DQSTRING,'"Tauf: Ideal forward transit time"',1,1530)
-LexToken(SEMICOLON,';',1,1531)
-LexToken(DQSTRING,'"Taur: Ideal reverse transit time"',1,1565)
-LexToken(SEMICOLON,';',1,1566)
-LexToken(DQSTRING,'"Ccs : Collector-substrat(ground) cap."',1,1605)
-LexToken(SEMICOLON,';',1,1606)
-LexToken(DQSTRING,'"Cje : Base-emitter zero bias depletion cap."',1,1651)
-LexToken(SEMICOLON,';',1,1652)
-LexToken(DQSTRING,'"Cjc : Base-coll. zero bias depletion cap."',1,1695)
-LexToken(SEMICOLON,';',1,1696)
-LexToken(DQSTRING,'"Phie: Base-emitter diffusion voltage"',1,1734)
-LexToken(SEMICOLON,';',1,1735)
-LexToken(DQSTRING,'"Me : Base-emitter gradation exponent"',1,1774)
-LexToken(SEMICOLON,';',1,1775)
-LexToken(DQSTRING,'"Phic: Base-collector diffusion voltage"',1,1815)
-LexToken(SEMICOLON,';',1,1816)
-LexToken(DQSTRING,'"Mc : Base-collector gradation exponent"',1,1857)
-LexToken(SEMICOLON,';',1,1858)
-LexToken(DQSTRING,'"Gbc : Base-collector conductance"',1,1892)
-LexToken(SEMICOLON,';',1,1893)
-LexToken(DQSTRING,'"Gbe : Base-emitter conductance"',1,1925)
-LexToken(SEMICOLON,';',1,1926)
-LexToken(DQSTRING,'"Vt : Voltage equivalent of temperature"',1,1967)
-LexToken(SEMICOLON,';',1,1968)
-LexToken(DQSTRING,'"EMinmax: if x > EMinMax, the exp(x) is linearized"',1,2019)
-LexToken(CLOSESQBRACKET,']',1,2020)
-LexToken(COMMA,',',1,2021)
-LexToken(VAR,'list',1,2022)
-LexToken(OPENBRACKET,'(',1,2026)
-LexToken(DQSTRING,'"vec"',1,2031)
-LexToken(COMMA,',',1,2032)
-LexToken(NUMBER,'1',1,2033)
-LexToken(COMMA,',',1,2034)
-LexToken(DQSTRING,'"vec"',1,2039)
-LexToken(COMMA,',',1,2040)
-LexToken(NUMBER,'1',1,2041)
-LexToken(COMMA,',',1,2042)
-LexToken(DQSTRING,'"vec"',1,2047)
-LexToken(COMMA,',',1,2048)
-LexToken(NUMBER,'1',1,2049)
-LexToken(COMMA,',',1,2050)
-LexToken(DQSTRING,'"vec"',1,2055)
-LexToken(COMMA,',',1,2056)
-LexToken(NUMBER,'1',1,2057)
-LexToken(COMMA,',',1,2058)
-LexToken(DQSTRING,'"vec"',1,2063)
-LexToken(COMMA,',',1,2064)
-LexToken(NUMBER,'1',1,2065)
-LexToken(COMMA,',',1,2066)
-LexToken(DQSTRING,'"vec"',1,2071)
-LexToken(COMMA,',',1,2072)
-LexToken(NUMBER,'1',1,2073)
-LexToken(COMMA,',',1,2074)
-LexToken(DQSTRING,'"vec"',1,2079)
-LexToken(COMMA,',',1,2080)
-LexToken(NUMBER,'1',1,2081)
-LexToken(COMMA,',',1,2082)
-LexToken(DQSTRING,'"vec"',1,2087)
-LexToken(COMMA,',',1,2088)
-LexToken(NUMBER,'1',1,2089)
-LexToken(COMMA,',',1,2090)
-LexToken(DQSTRING,'"vec"',1,2095)
-LexToken(COMMA,',',1,2096)
-LexToken(NUMBER,'1',1,2097)
-LexToken(COMMA,',',1,2098)
-LexToken(DQSTRING,'"vec"',1,2103)
-LexToken(COMMA,',',1,2104)
-LexToken(NUMBER,'1',1,2105)
-LexToken(COMMA,',',1,2106)
-LexToken(DQSTRING,'"vec"',1,2111)
-LexToken(COMMA,',',1,2112)
-LexToken(NUMBER,'1',1,2113)
-LexToken(COMMA,',',1,2114)
-LexToken(DQSTRING,'"vec"',1,2119)
-LexToken(COMMA,',',1,2120)
-LexToken(NUMBER,'1',1,2121)
-LexToken(COMMA,',',1,2122)
-LexToken(DQSTRING,'"vec"',1,2127)
-LexToken(COMMA,',',1,2128)
-LexToken(NUMBER,'1',1,2129)
-LexToken(COMMA,',',1,2130)
-LexToken(DQSTRING,'"vec"',1,2135)
-LexToken(COMMA,',',1,2136)
-LexToken(NUMBER,'1',1,2137)
-LexToken(COMMA,',',1,2138)
-LexToken(DQSTRING,'"vec"',1,2143)
-LexToken(COMMA,',',1,2144)
-LexToken(NUMBER,'1',1,2145)
-LexToken(COMMA,',',1,2146)
-LexToken(DQSTRING,'"vec"',1,2151)
-LexToken(COMMA,',',1,2152)
-LexToken(NUMBER,'1',1,2153)
-LexToken(COMMA,',',1,2154)
-LexToken(DQSTRING,'"vec"',1,2159)
-LexToken(COMMA,',',1,2160)
-LexToken(NUMBER,'1',1,2161)
-LexToken(CLOSEBRACKET,')',1,2162)
-LexToken(COMMA,',',1,2163)
-LexToken(VAR,'exprs',1,2164)
-LexToken(CLOSEBRACKET,')',1,2169)
-LexToken(EOL,'\n',1,2170)
-LexToken(IF,'if',1,2183)
-LexToken(NOT,'~',1,2186)
-LexToken(VAR,'ok',1,2187)
-LexToken(THEN,'then',1,2190)
-LexToken(EOL,'\n',1,2194)
-LexToken(BREAK,'break',1,2211)
-LexToken(EOL,'\n',1,2216)
-LexToken(END,'end',1,2230)
-LexToken(EOL,'\n',1,2233)
-LexToken(VAR,'x',1,2246)
-LexToken(DOT,'.',1,2247)
-LexToken(VAR,'model',1,2248)
-LexToken(DOT,'.',1,2253)
-LexToken(VAR,'equations',1,2254)
-LexToken(DOT,'.',1,2263)
-LexToken(VAR,'parameters',1,2264)
-LexToken(OPENBRACKET,'(',1,2274)
-LexToken(NUMBER,'2',1,2275)
-LexToken(CLOSEBRACKET,')',1,2276)
-LexToken(ASSIGNMENT,'=',1,2277)
-LexToken(VAR,'list',1,2278)
-LexToken(OPENBRACKET,'(',1,2282)
-LexToken(VAR,'Bf',1,2283)
-LexToken(COMMA,',',1,2285)
-LexToken(VAR,'Br',1,2286)
-LexToken(COMMA,',',1,2288)
-LexToken(VAR,'Is',1,2289)
-LexToken(COMMA,',',1,2291)
-LexToken(VAR,'Vak',1,2292)
-LexToken(COMMA,',',1,2295)
-LexToken(VAR,'Tauf',1,2296)
-LexToken(COMMA,',',1,2300)
-LexToken(VAR,'Taur',1,2301)
-LexToken(COMMA,',',1,2305)
-LexToken(VAR,'Ccs',1,2306)
-LexToken(COMMA,',',1,2309)
-LexToken(VAR,'Cje',1,2310)
-LexToken(COMMA,',',1,2313)
-LexToken(VAR,'Cjc',1,2314)
-LexToken(COMMA,',',1,2317)
-LexToken(VAR,'Phie',1,2318)
-LexToken(COMMA,',',1,2322)
-LexToken(VAR,'Me',1,2323)
-LexToken(COMMA,',',1,2325)
-LexToken(VAR,'Phic',1,2326)
-LexToken(COMMA,',',1,2330)
-LexToken(VAR,'Mc',1,2331)
-LexToken(COMMA,',',1,2333)
-LexToken(VAR,'Gbc',1,2334)
-LexToken(COMMA,',',1,2337)
-LexToken(VAR,'Gbe',1,2338)
-LexToken(COMMA,',',1,2341)
-LexToken(VAR,'Vt',1,2342)
-LexToken(COMMA,',',1,2344)
-LexToken(VAR,'EMinMax',1,2345)
-LexToken(CLOSEBRACKET,')',1,2352)
-LexToken(EOL,'\n',1,2353)
-LexToken(VAR,'x',1,2366)
-LexToken(DOT,'.',1,2367)
-LexToken(VAR,'graphics',1,2368)
-LexToken(DOT,'.',1,2376)
-LexToken(VAR,'exprs',1,2377)
-LexToken(ASSIGNMENT,'=',1,2382)
-LexToken(VAR,'exprs',1,2383)
-LexToken(EOL,'\n',1,2388)
-LexToken(BREAK,'break',1,2401)
-LexToken(EOL,'\n',1,2406)
-LexToken(END,'end',1,2415)
-LexToken(EOL,'\n',1,2418)
-LexToken(CASE,'case',1,2423)
-LexToken(DQSTRING,'"define"',1,2435)
-LexToken(THEN,'then',1,2437)
-LexToken(EOL,'\n',1,2441)
-LexToken(VAR,'ModelName',1,2450)
-LexToken(ASSIGNMENT,'=',1,2459)
-LexToken(DQSTRING,'"NPN"',1,2464)
-LexToken(EOL,'\n',1,2465)
-LexToken(VAR,'PrametersValue',1,2474)
-LexToken(ASSIGNMENT,'=',1,2488)
-LexToken(OPENSQBRACKET,'[',1,2489)
-LexToken(NUMBER,'50',1,2490)
-LexToken(SEMICOLON,';',1,2492)
-LexToken(NUMBER,'0.1',1,2493)
-LexToken(SEMICOLON,';',1,2496)
-LexToken(NUMBER,'0',1,2497)
-LexToken(SEMICOLON,';',1,2498)
-LexToken(NUMBER,'0.02',1,2499)
-LexToken(SEMICOLON,';',1,2503)
-LexToken(NUMBER,'1.200',1,2504)
-LexToken(VAR,'D',1,2509)
-LexToken(ADDITION,'-',1,2510)
-LexToken(NUMBER,'10',1,2511)
-LexToken(SEMICOLON,';',1,2513)
-LexToken(NUMBER,'5.000',1,2514)
-LexToken(VAR,'D',1,2519)
-LexToken(ADDITION,'-',1,2520)
-LexToken(NUMBER,'09',1,2521)
-LexToken(SEMICOLON,';',1,2523)
-LexToken(NUMBER,'1.000',1,2524)
-LexToken(VAR,'D',1,2529)
-LexToken(ADDITION,'-',1,2530)
-LexToken(NUMBER,'12',1,2531)
-LexToken(SEMICOLON,';',1,2533)
-LexToken(NUMBER,'4.000',1,2534)
-LexToken(VAR,'D',1,2539)
-LexToken(ADDITION,'-',1,2540)
-LexToken(NUMBER,'13',1,2541)
-LexToken(SEMICOLON,';',1,2543)
-LexToken(NUMBER,'5.000',1,2544)
-LexToken(VAR,'D',1,2549)
-LexToken(ADDITION,'-',1,2550)
-LexToken(NUMBER,'13',1,2551)
-LexToken(SEMICOLON,';',1,2553)
-LexToken(NUMBER,'0.8',1,2554)
-LexToken(SEMICOLON,';',1,2557)
-LexToken(NUMBER,'0.4',1,2558)
-LexToken(SEMICOLON,';',1,2561)
-LexToken(NUMBER,'0.8',1,2562)
-LexToken(SEMICOLON,';',1,2565)
-LexToken(NUMBER,'0.333',1,2566)
-LexToken(SEMICOLON,';',1,2571)
-LexToken(NUMBER,'1.000',1,2572)
-LexToken(VAR,'D',1,2577)
-LexToken(ADDITION,'-',1,2578)
-LexToken(NUMBER,'15',1,2579)
-LexToken(SEMICOLON,';',1,2581)
-LexToken(NUMBER,'1.000',1,2582)
-LexToken(VAR,'D',1,2587)
-LexToken(ADDITION,'-',1,2588)
-LexToken(NUMBER,'15',1,2589)
-LexToken(SEMICOLON,';',1,2591)
-LexToken(NUMBER,'0.02585',1,2592)
-LexToken(SEMICOLON,';',1,2599)
-LexToken(NUMBER,'40',1,2600)
-LexToken(CLOSESQBRACKET,']',1,2602)
-LexToken(EOL,'\n',1,2603)
-LexToken(VAR,'ParametersName',1,2612)
-LexToken(ASSIGNMENT,'=',1,2626)
-LexToken(OPENSQBRACKET,'[',1,2627)
-LexToken(DQSTRING,'"Bf"',1,2631)
-LexToken(SEMICOLON,';',1,2632)
-LexToken(DQSTRING,'"Br"',1,2636)
-LexToken(SEMICOLON,';',1,2637)
-LexToken(DQSTRING,'"Is"',1,2641)
-LexToken(SEMICOLON,';',1,2642)
-LexToken(DQSTRING,'"Vak"',1,2647)
-LexToken(SEMICOLON,';',1,2648)
-LexToken(DQSTRING,'"Tauf"',1,2654)
-LexToken(SEMICOLON,';',1,2655)
-LexToken(DQSTRING,'"Taur"',1,2661)
-LexToken(SEMICOLON,';',1,2662)
-LexToken(DQSTRING,'"Ccs"',1,2667)
-LexToken(SEMICOLON,';',1,2668)
-LexToken(DQSTRING,'"Cje"',1,2673)
-LexToken(SEMICOLON,';',1,2674)
-LexToken(DQSTRING,'"Cjc"',1,2679)
-LexToken(SEMICOLON,';',1,2680)
-LexToken(DQSTRING,'"Phie"',1,2686)
-LexToken(SEMICOLON,';',1,2687)
-LexToken(DQSTRING,'"Me"',1,2691)
-LexToken(SEMICOLON,';',1,2692)
-LexToken(DQSTRING,'"Phic"',1,2698)
-LexToken(SEMICOLON,';',1,2699)
-LexToken(DQSTRING,'"Mc"',1,2703)
-LexToken(SEMICOLON,';',1,2704)
-LexToken(DQSTRING,'"Gbc"',1,2709)
-LexToken(SEMICOLON,';',1,2710)
-LexToken(DQSTRING,'"Gbe"',1,2715)
-LexToken(SEMICOLON,';',1,2716)
-LexToken(DQSTRING,'"Vt"',1,2720)
-LexToken(SEMICOLON,';',1,2721)
-LexToken(DQSTRING,'"EMinMax"',1,2730)
-LexToken(CLOSESQBRACKET,']',1,2731)
-LexToken(EOL,'\n',1,2732)
-LexToken(VAR,'model',1,2741)
-LexToken(ASSIGNMENT,'=',1,2746)
-LexToken(SCICOS_MODEL,'scicos_model',1,2747)
-LexToken(OPENBRACKET,'(',1,2759)
-LexToken(CLOSEBRACKET,')',1,2760)
-LexToken(EOL,'\n',1,2761)
-LexToken(VAR,'Typein',1,2770)
-LexToken(ASSIGNMENT,'=',1,2776)
-LexToken(OPENSQBRACKET,'[',1,2777)
-LexToken(CLOSESQBRACKET,']',1,2778)
-LexToken(EOL,'\n',1,2779)
-LexToken(VAR,'Typeout',1,2789)
-LexToken(ASSIGNMENT,'=',1,2796)
-LexToken(OPENSQBRACKET,'[',1,2797)
-LexToken(CLOSESQBRACKET,']',1,2798)
-LexToken(EOL,'\n',1,2799)
-LexToken(VAR,'MI',1,2809)
-LexToken(ASSIGNMENT,'=',1,2811)
-LexToken(OPENSQBRACKET,'[',1,2812)
-LexToken(CLOSESQBRACKET,']',1,2813)
-LexToken(EOL,'\n',1,2814)
-LexToken(VAR,'MO',1,2824)
-LexToken(ASSIGNMENT,'=',1,2826)
-LexToken(OPENSQBRACKET,'[',1,2827)
-LexToken(CLOSESQBRACKET,']',1,2828)
-LexToken(EOL,'\n',1,2829)
-LexToken(VAR,'P',1,2838)
-LexToken(ASSIGNMENT,'=',1,2839)
-LexToken(OPENSQBRACKET,'[',1,2840)
-LexToken(NUMBER,'100',1,2841)
-LexToken(COMMA,',',1,2844)
-LexToken(NUMBER,'90',1,2845)
-LexToken(COMMA,',',1,2847)
-LexToken(ADDITION,'-',1,2848)
-LexToken(NUMBER,'2',1,2849)
-LexToken(COMMA,',',1,2850)
-LexToken(NUMBER,'0',1,2851)
-LexToken(SEMICOLON,';',1,2852)
-LexToken(NUMBER,'0',1,2854)
-LexToken(COMMA,',',1,2855)
-LexToken(NUMBER,'50',1,2856)
-LexToken(COMMA,',',1,2858)
-LexToken(NUMBER,'2',1,2859)
-LexToken(COMMA,',',1,2860)
-LexToken(NUMBER,'0',1,2861)
-LexToken(SEMICOLON,';',1,2862)
-LexToken(NUMBER,'100',1,2864)
-LexToken(COMMA,',',1,2867)
-LexToken(NUMBER,'10',1,2868)
-LexToken(COMMA,',',1,2870)
-LexToken(ADDITION,'-',1,2871)
-LexToken(NUMBER,'2',1,2872)
-LexToken(COMMA,',',1,2873)
-LexToken(NUMBER,'0',1,2874)
-LexToken(CLOSESQBRACKET,']',1,2875)
-LexToken(EOL,'\n',1,2876)
-LexToken(VAR,'PortName',1,2885)
-LexToken(ASSIGNMENT,'=',1,2893)
-LexToken(OPENSQBRACKET,'[',1,2894)
-LexToken(DQSTRING,'"C"',1,2897)
-LexToken(SEMICOLON,';',1,2898)
-LexToken(DQSTRING,'"B"',1,2901)
-LexToken(SEMICOLON,';',1,2902)
-LexToken(DQSTRING,'"E"',1,2905)
-LexToken(CLOSESQBRACKET,']',1,2906)
-LexToken(EOL,'\n',1,2907)
-LexToken(FOR,'for',1,2916)
-LexToken(VAR,'i',1,2920)
-LexToken(ASSIGNMENT,'=',1,2921)
-LexToken(NUMBER,'1',1,2922)
-LexToken(COLON,':',1,2923)
-LexToken(VAR,'size',1,2924)
-LexToken(OPENBRACKET,'(',1,2928)
-LexToken(VAR,'P',1,2929)
-LexToken(COMMA,',',1,2930)
-LexToken(DQSTRING,'"r"',1,2933)
-LexToken(CLOSEBRACKET,')',1,2934)
-LexToken(EOL,'\n',1,2935)
-LexToken(IF,'if',1,2948)
-LexToken(VAR,'P',1,2951)
-LexToken(OPENBRACKET,'(',1,2952)
-LexToken(VAR,'i',1,2953)
-LexToken(COMMA,',',1,2954)
-LexToken(NUMBER,'3',1,2955)
-LexToken(CLOSEBRACKET,')',1,2956)
-LexToken(COMPARISON,'==',1,2957)
-LexToken(NUMBER,'1',1,2959)
-LexToken(THEN,'then',1,2962)
-LexToken(EOL,'\n',1,2966)
-LexToken(VAR,'Typein',1,2983)
-LexToken(ASSIGNMENT,'=',1,2989)
-LexToken(OPENSQBRACKET,'[',1,2991)
-LexToken(VAR,'Typein',1,2992)
-LexToken(SEMICOLON,';',1,2998)
-LexToken(DQSTRING,'"E"',1,3002)
-LexToken(CLOSESQBRACKET,']',1,3003)
-LexToken(EOL,'\n',1,3004)
-LexToken(VAR,'MI',1,3022)
-LexToken(ASSIGNMENT,'=',1,3024)
-LexToken(OPENSQBRACKET,'[',1,3025)
-LexToken(VAR,'MI',1,3026)
-LexToken(SEMICOLON,';',1,3028)
-LexToken(VAR,'PortName',1,3029)
-LexToken(OPENBRACKET,'(',1,3037)
-LexToken(VAR,'i',1,3038)
-LexToken(CLOSEBRACKET,')',1,3039)
-LexToken(CLOSESQBRACKET,']',1,3040)
-LexToken(EOL,'\n',1,3041)
-LexToken(END,'end',1,3055)
-LexToken(EOL,'\n',1,3058)
-LexToken(IF,'if',1,3071)
-LexToken(VAR,'P',1,3074)
-LexToken(OPENBRACKET,'(',1,3075)
-LexToken(VAR,'i',1,3076)
-LexToken(COMMA,',',1,3077)
-LexToken(NUMBER,'3',1,3078)
-LexToken(CLOSEBRACKET,')',1,3079)
-LexToken(COMPARISON,'==',1,3080)
-LexToken(NUMBER,'2',1,3082)
-LexToken(THEN,'then',1,3085)
-LexToken(EOL,'\n',1,3089)
-LexToken(VAR,'Typein',1,3106)
-LexToken(ASSIGNMENT,'=',1,3112)
-LexToken(OPENSQBRACKET,'[',1,3114)
-LexToken(VAR,'Typein',1,3115)
-LexToken(SEMICOLON,';',1,3121)
-LexToken(DQSTRING,'"I"',1,3125)
-LexToken(CLOSESQBRACKET,']',1,3126)
-LexToken(EOL,'\n',1,3127)
-LexToken(VAR,'MI',1,3145)
-LexToken(ASSIGNMENT,'=',1,3147)
-LexToken(OPENSQBRACKET,'[',1,3148)
-LexToken(VAR,'MI',1,3149)
-LexToken(SEMICOLON,';',1,3151)
-LexToken(VAR,'PortName',1,3152)
-LexToken(OPENBRACKET,'(',1,3160)
-LexToken(VAR,'i',1,3161)
-LexToken(CLOSEBRACKET,')',1,3162)
-LexToken(CLOSESQBRACKET,']',1,3163)
-LexToken(EOL,'\n',1,3164)
-LexToken(END,'end',1,3178)
-LexToken(EOL,'\n',1,3181)
-LexToken(IF,'if',1,3194)
-LexToken(VAR,'P',1,3197)
-LexToken(OPENBRACKET,'(',1,3198)
-LexToken(VAR,'i',1,3199)
-LexToken(COMMA,',',1,3200)
-LexToken(NUMBER,'3',1,3201)
-LexToken(CLOSEBRACKET,')',1,3202)
-LexToken(COMPARISON,'==',1,3203)
-LexToken(ADDITION,'-',1,3205)
-LexToken(NUMBER,'1',1,3206)
-LexToken(THEN,'then',1,3208)
-LexToken(EOL,'\n',1,3212)
-LexToken(VAR,'Typeout',1,3229)
-LexToken(ASSIGNMENT,'=',1,3236)
-LexToken(OPENSQBRACKET,'[',1,3237)
-LexToken(VAR,'Typeout',1,3238)
-LexToken(SEMICOLON,';',1,3245)
-LexToken(DQSTRING,'"E"',1,3248)
-LexToken(CLOSESQBRACKET,']',1,3249)
-LexToken(EOL,'\n',1,3250)
-LexToken(VAR,'MO',1,3268)
-LexToken(ASSIGNMENT,'=',1,3270)
-LexToken(OPENSQBRACKET,'[',1,3271)
-LexToken(VAR,'MO',1,3272)
-LexToken(SEMICOLON,';',1,3274)
-LexToken(VAR,'PortName',1,3275)
-LexToken(OPENBRACKET,'(',1,3283)
-LexToken(VAR,'i',1,3284)
-LexToken(CLOSEBRACKET,')',1,3285)
-LexToken(CLOSESQBRACKET,']',1,3286)
-LexToken(EOL,'\n',1,3287)
-LexToken(END,'end',1,3301)
-LexToken(EOL,'\n',1,3304)
-LexToken(IF,'if',1,3317)
-LexToken(VAR,'P',1,3320)
-LexToken(OPENBRACKET,'(',1,3321)
-LexToken(VAR,'i',1,3322)
-LexToken(COMMA,',',1,3323)
-LexToken(NUMBER,'3',1,3324)
-LexToken(CLOSEBRACKET,')',1,3325)
-LexToken(COMPARISON,'==',1,3326)
-LexToken(ADDITION,'-',1,3328)
-LexToken(NUMBER,'2',1,3329)
-LexToken(THEN,'then',1,3331)
-LexToken(EOL,'\n',1,3335)
-LexToken(VAR,'Typeout',1,3352)
-LexToken(ASSIGNMENT,'=',1,3359)
-LexToken(OPENSQBRACKET,'[',1,3360)
-LexToken(VAR,'Typeout',1,3361)
-LexToken(SEMICOLON,';',1,3368)
-LexToken(DQSTRING,'"I"',1,3371)
-LexToken(CLOSESQBRACKET,']',1,3372)
-LexToken(EOL,'\n',1,3373)
-LexToken(VAR,'MO',1,3391)
-LexToken(ASSIGNMENT,'=',1,3393)
-LexToken(OPENSQBRACKET,'[',1,3394)
-LexToken(VAR,'MO',1,3395)
-LexToken(SEMICOLON,';',1,3397)
-LexToken(VAR,'PortName',1,3398)
-LexToken(OPENBRACKET,'(',1,3406)
-LexToken(VAR,'i',1,3407)
-LexToken(CLOSEBRACKET,')',1,3408)
-LexToken(CLOSESQBRACKET,']',1,3409)
-LexToken(EOL,'\n',1,3410)
-LexToken(END,'end',1,3424)
-LexToken(EOL,'\n',1,3427)
-LexToken(END,'end',1,3436)
-LexToken(EOL,'\n',1,3439)
-LexToken(VAR,'model',1,3448)
-LexToken(ASSIGNMENT,'=',1,3453)
-LexToken(SCICOS_MODEL,'scicos_model',1,3454)
-LexToken(OPENBRACKET,'(',1,3466)
-LexToken(CLOSEBRACKET,')',1,3467)
-LexToken(EOL,'\n',1,3468)
-LexToken(VAR,'mo',1,3477)
-LexToken(ASSIGNMENT,'=',1,3479)
-LexToken(VAR,'modelica',1,3480)
-LexToken(OPENBRACKET,'(',1,3488)
-LexToken(CLOSEBRACKET,')',1,3489)
-LexToken(EOL,'\n',1,3490)
-LexToken(VAR,'model',1,3499)
-LexToken(DOT,'.',1,3504)
-LexToken(VAR,'sim',1,3505)
-LexToken(ASSIGNMENT,'=',1,3508)
-LexToken(VAR,'ModelName',1,3509)
-LexToken(EOL,'\n',1,3518)
-LexToken(VAR,'mo',1,3528)
-LexToken(DOT,'.',1,3530)
-LexToken(VAR,'inputs',1,3531)
-LexToken(ASSIGNMENT,'=',1,3537)
-LexToken(VAR,'MI',1,3538)
-LexToken(EOL,'\n',1,3540)
-LexToken(VAR,'mo',1,3550)
-LexToken(DOT,'.',1,3552)
-LexToken(VAR,'outputs',1,3553)
-LexToken(ASSIGNMENT,'=',1,3560)
-LexToken(VAR,'MO',1,3561)
-LexToken(EOL,'\n',1,3563)
-LexToken(VAR,'model',1,3573)
-LexToken(DOT,'.',1,3578)
-LexToken(VAR,'rpar',1,3579)
-LexToken(ASSIGNMENT,'=',1,3583)
-LexToken(VAR,'PrametersValue',1,3584)
-LexToken(EOL,'\n',1,3598)
-LexToken(VAR,'mo',1,3608)
-LexToken(DOT,'.',1,3610)
-LexToken(VAR,'parameters',1,3611)
-LexToken(ASSIGNMENT,'=',1,3621)
-LexToken(VAR,'list',1,3622)
-LexToken(OPENBRACKET,'(',1,3626)
-LexToken(VAR,'ParametersName',1,3627)
-LexToken(COMMA,',',1,3641)
-LexToken(VAR,'PrametersValue',1,3642)
-LexToken(COMMA,',',1,3656)
-LexToken(VAR,'zeros',1,3657)
-LexToken(OPENBRACKET,'(',1,3662)
-LexToken(VAR,'ParametersName',1,3663)
-LexToken(CLOSEBRACKET,')',1,3677)
-LexToken(CLOSEBRACKET,')',1,3678)
-LexToken(EOL,'\n',1,3679)
-LexToken(VAR,'exprs',1,3689)
-LexToken(ASSIGNMENT,'=',1,3694)
-LexToken(OPENSQBRACKET,'[',1,3695)
-LexToken(DQSTRING,'"50"',1,3699)
-LexToken(SEMICOLON,';',1,3700)
-LexToken(DQSTRING,'"0.1"',1,3705)
-LexToken(SEMICOLON,';',1,3706)
-LexToken(DQSTRING,'"1.e-16"',1,3714)
-LexToken(SEMICOLON,';',1,3715)
-LexToken(DQSTRING,'"0.02"',1,3721)
-LexToken(SEMICOLON,';',1,3722)
-LexToken(DQSTRING,'"0.12e-9"',1,3731)
-LexToken(SEMICOLON,';',1,3732)
-LexToken(DQSTRING,'"5e-9"',1,3738)
-LexToken(SEMICOLON,';',1,3739)
-LexToken(DQSTRING,'"1e-12"',1,3746)
-LexToken(SEMICOLON,';',1,3747)
-LexToken(DQSTRING,'"0.4e-12"',1,3756)
-LexToken(SEMICOLON,';',1,3757)
-LexToken(DQSTRING,'"0.5e-12"',1,3766)
-LexToken(SEMICOLON,';',1,3767)
-LexToken(DQSTRING,'"0.8"',1,3772)
-LexToken(SEMICOLON,';',1,3773)
-LexToken(DQSTRING,'"0.4"',1,3778)
-LexToken(SEMICOLON,';',1,3779)
-LexToken(DQSTRING,'"0.8"',1,3784)
-LexToken(SEMICOLON,';',1,3785)
-LexToken(DQSTRING,'"0.333"',1,3792)
-LexToken(SEMICOLON,';',1,3793)
-LexToken(DQSTRING,'"1e-15"',1,3800)
-LexToken(SEMICOLON,';',1,3801)
-LexToken(DQSTRING,'"1e-15"',1,3808)
-LexToken(SEMICOLON,';',1,3809)
-LexToken(DQSTRING,'"0.02585"',1,3818)
-LexToken(SEMICOLON,';',1,3819)
-LexToken(DQSTRING,'"40"',1,3823)
-LexToken(CLOSESQBRACKET,']',1,3824)
-LexToken(EOL,'\n',1,3825)
-LexToken(VAR,'gr_i',1,3834)
-LexToken(ASSIGNMENT,'=',1,3838)
-LexToken(OPENSQBRACKET,'[',1,3839)
-LexToken(CLOSESQBRACKET,']',1,3840)
-LexToken(EOL,'\n',1,3841)
-LexToken(VAR,'model',1,3850)
-LexToken(DOT,'.',1,3855)
-LexToken(VAR,'blocktype',1,3856)
-LexToken(ASSIGNMENT,'=',1,3865)
-LexToken(DQSTRING,'"c"',1,3868)
-LexToken(EOL,'\n',1,3869)
-LexToken(VAR,'model',1,3878)
-LexToken(DOT,'.',1,3883)
-LexToken(VAR,'dep_ut',1,3884)
-LexToken(ASSIGNMENT,'=',1,3890)
-LexToken(OPENSQBRACKET,'[',1,3891)
-LexToken(PREVAR_BOOLEAN,'%f',1,3892)
-LexToken(PREVAR_BOOLEAN,'%t',1,3895)
-LexToken(CLOSESQBRACKET,']',1,3897)
-LexToken(EOL,'\n',1,3898)
-LexToken(VAR,'mo',1,3907)
-LexToken(DOT,'.',1,3909)
-LexToken(VAR,'model',1,3910)
-LexToken(ASSIGNMENT,'=',1,3915)
-LexToken(VAR,'ModelName',1,3916)
-LexToken(EOL,'\n',1,3925)
-LexToken(VAR,'model',1,3934)
-LexToken(DOT,'.',1,3939)
-LexToken(VAR,'equations',1,3940)
-LexToken(ASSIGNMENT,'=',1,3949)
-LexToken(VAR,'mo',1,3950)
-LexToken(EOL,'\n',1,3952)
-LexToken(VAR,'model',1,3961)
-LexToken(DOT,'.',1,3966)
-LexToken(VAR,'in',1,3967)
-LexToken(ASSIGNMENT,'=',1,3969)
-LexToken(VAR,'ones',1,3970)
-LexToken(OPENBRACKET,'(',1,3974)
-LexToken(VAR,'size',1,3975)
-LexToken(OPENBRACKET,'(',1,3979)
-LexToken(VAR,'MI',1,3980)
-LexToken(COMMA,',',1,3982)
-LexToken(DQSTRING,'"*"',1,3985)
-LexToken(CLOSEBRACKET,')',1,3986)
-LexToken(COMMA,',',1,3987)
-LexToken(NUMBER,'1',1,3988)
-LexToken(CLOSEBRACKET,')',1,3989)
-LexToken(EOL,'\n',1,3990)
-LexToken(VAR,'model',1,3999)
-LexToken(DOT,'.',1,4004)
-LexToken(VAR,'out',1,4005)
-LexToken(ASSIGNMENT,'=',1,4008)
-LexToken(VAR,'ones',1,4009)
-LexToken(OPENBRACKET,'(',1,4013)
-LexToken(VAR,'size',1,4014)
-LexToken(OPENBRACKET,'(',1,4018)
-LexToken(VAR,'MO',1,4019)
-LexToken(COMMA,',',1,4021)
-LexToken(DQSTRING,'"*"',1,4024)
-LexToken(CLOSEBRACKET,')',1,4025)
-LexToken(COMMA,',',1,4026)
-LexToken(NUMBER,'1',1,4027)
-LexToken(CLOSEBRACKET,')',1,4028)
-LexToken(EOL,'\n',1,4029)
-LexToken(VAR,'x',1,4038)
-LexToken(ASSIGNMENT,'=',1,4039)
-LexToken(VAR,'standard_define',1,4040)
-LexToken(OPENBRACKET,'(',1,4055)
-LexToken(OPENSQBRACKET,'[',1,4056)
-LexToken(NUMBER,'2',1,4057)
-LexToken(COMMA,',',1,4058)
-LexToken(NUMBER,'2',1,4059)
-LexToken(CLOSESQBRACKET,']',1,4060)
-LexToken(COMMA,',',1,4061)
-LexToken(VAR,'model',1,4062)
-LexToken(COMMA,',',1,4067)
-LexToken(VAR,'exprs',1,4068)
-LexToken(COMMA,',',1,4073)
-LexToken(VAR,'list',1,4074)
-LexToken(OPENBRACKET,'(',1,4078)
-LexToken(VAR,'gr_i',1,4079)
-LexToken(COMMA,',',1,4083)
-LexToken(NUMBER,'0',1,4084)
-LexToken(CLOSEBRACKET,')',1,4085)
-LexToken(CLOSEBRACKET,')',1,4086)
-LexToken(EOL,'\n',1,4087)
-LexToken(VAR,'x',1,4096)
-LexToken(DOT,'.',1,4097)
-LexToken(VAR,'graphics',1,4098)
-LexToken(DOT,'.',1,4106)
-LexToken(VAR,'in_implicit',1,4107)
-LexToken(ASSIGNMENT,'=',1,4118)
-LexToken(VAR,'Typein',1,4119)
-LexToken(EOL,'\n',1,4125)
-LexToken(VAR,'x',1,4135)
-LexToken(DOT,'.',1,4136)
-LexToken(VAR,'graphics',1,4137)
-LexToken(DOT,'.',1,4145)
-LexToken(VAR,'out_implicit',1,4146)
-LexToken(ASSIGNMENT,'=',1,4158)
-LexToken(VAR,'Typeout',1,4159)
-LexToken(EOL,'\n',1,4166)
-LexToken(END,'end',1,4172)
-LexToken(EOL,'\n',1,4175)
-LexToken(ENDFUNCTION,'endfunction',1,4176)
-LexToken(EOL,'\n',1,4187)
+Syntax error in input LexToken(ADDITION,'-',1,2510)
+/* autogenerated from "macros/Electrical/NPN.sci" */
+None
diff --git a/js/Electrical/OpAmp.js b/js/Electrical/OpAmp.js
index debceffe..f5863a92 100644
--- a/js/Electrical/OpAmp.js
+++ b/js/Electrical/OpAmp.js
@@ -1,371 +1,46 @@
-LexToken(EOL,'\n',1,10)
-LexToken(EOL,'\n',1,13)
-LexToken(EOL,'\n',1,73)
-LexToken(EOL,'\n',1,76)
-LexToken(EOL,'\n',1,148)
-LexToken(EOL,'\n',1,220)
-LexToken(EOL,'\n',1,289)
-LexToken(EOL,'\n',1,328)
-LexToken(EOL,'\n',1,331)
-LexToken(EOL,'\n',1,398)
-LexToken(EOL,'\n',1,464)
-LexToken(EOL,'\n',1,529)
-LexToken(EOL,'\n',1,577)
-LexToken(EOL,'\n',1,580)
-LexToken(EOL,'\n',1,649)
-LexToken(EOL,'\n',1,712)
-LexToken(EOL,'\n',1,794)
-LexToken(EOL,'\n',1,797)
-LexToken(EOL,'\n',1,828)
-LexToken(EOL,'\n',1,831)
-LexToken(EOL,'\n',1,832)
-LexToken(FUNCTION,'function',1,833)
-LexToken(OPENSQBRACKET,'[',1,842)
-LexToken(VAR,'x',1,843)
-LexToken(COMMA,',',1,844)
-LexToken(VAR,'y',1,845)
-LexToken(COMMA,',',1,846)
-LexToken(VAR,'typ',1,847)
-LexToken(CLOSESQBRACKET,']',1,850)
-LexToken(ASSIGNMENT,'=',1,851)
-LexToken(VAR,'OpAmp',1,852)
-LexToken(OPENBRACKET,'(',1,857)
-LexToken(VAR,'job',1,858)
-LexToken(COMMA,',',1,861)
-LexToken(VAR,'arg1',1,862)
-LexToken(COMMA,',',1,866)
-LexToken(VAR,'arg2',1,867)
-LexToken(CLOSEBRACKET,')',1,871)
-LexToken(EOL,'\n',1,872)
-LexToken(VAR,'x',1,877)
-LexToken(ASSIGNMENT,'=',1,878)
-LexToken(OPENSQBRACKET,'[',1,879)
-LexToken(CLOSESQBRACKET,']',1,880)
-LexToken(EOL,'\n',1,881)
-LexToken(VAR,'y',1,887)
-LexToken(ASSIGNMENT,'=',1,888)
-LexToken(OPENSQBRACKET,'[',1,889)
-LexToken(CLOSESQBRACKET,']',1,890)
-LexToken(EOL,'\n',1,891)
-LexToken(VAR,'typ',1,897)
-LexToken(ASSIGNMENT,'=',1,900)
-LexToken(OPENSQBRACKET,'[',1,901)
-LexToken(CLOSESQBRACKET,']',1,902)
-LexToken(EOL,'\n',1,903)
-LexToken(SELECT,'select',1,909)
-LexToken(VAR,'job',1,916)
-LexToken(EOL,'\n',1,919)
-LexToken(CASE,'case',1,924)
-LexToken(DQSTRING,'"set"',1,933)
-LexToken(THEN,'then',1,935)
-LexToken(EOL,'\n',1,939)
-LexToken(VAR,'x',1,948)
-LexToken(ASSIGNMENT,'=',1,949)
-LexToken(VAR,'arg1',1,950)
-LexToken(EOL,'\n',1,954)
-LexToken(VAR,'graphics',1,964)
-LexToken(ASSIGNMENT,'=',1,972)
-LexToken(VAR,'arg1',1,973)
-LexToken(DOT,'.',1,977)
-LexToken(VAR,'graphics',1,978)
-LexToken(EOL,'\n',1,986)
-LexToken(VAR,'exprs',1,996)
-LexToken(ASSIGNMENT,'=',1,1001)
-LexToken(VAR,'graphics',1,1002)
-LexToken(DOT,'.',1,1010)
-LexToken(VAR,'exprs',1,1011)
-LexToken(EOL,'\n',1,1016)
-LexToken(VAR,'model',1,1025)
-LexToken(ASSIGNMENT,'=',1,1030)
-LexToken(VAR,'arg1',1,1031)
-LexToken(DOT,'.',1,1035)
-LexToken(VAR,'model',1,1036)
-LexToken(EOL,'\n',1,1041)
-LexToken(WHILE,'while',1,1051)
-LexToken(PREVAR_BOOLEAN,'%f',1,1057)
-LexToken(DO,'do',1,1060)
-LexToken(EOL,'\n',1,1062)
-LexToken(OPENSQBRACKET,'[',1,1075)
-LexToken(VAR,'ok',1,1076)
-LexToken(COMMA,',',1,1078)
-LexToken(VAR,'OLGain',1,1079)
-LexToken(COMMA,',',1,1085)
-LexToken(VAR,'SatH',1,1086)
-LexToken(COMMA,',',1,1090)
-LexToken(VAR,'SatL',1,1091)
-LexToken(COMMA,',',1,1095)
-LexToken(VAR,'exprs',1,1096)
-LexToken(CLOSESQBRACKET,']',1,1101)
-LexToken(ASSIGNMENT,'=',1,1102)
-LexToken(SCICOS_GETVALUE,'scicos_getvalue',1,1103)
-LexToken(OPENBRACKET,'(',1,1118)
-LexToken(DQSTRING,'"Set the Operational Amplifier parameters"',1,1160)
-LexToken(COMMA,',',1,1161)
-LexToken(OPENSQBRACKET,'[',1,1177)
-LexToken(DQSTRING,'"Open Loop Gain"',1,1193)
-LexToken(SEMICOLON,';',1,1194)
-LexToken(DQSTRING,'"Positive saturation voltage"',1,1223)
-LexToken(SEMICOLON,';',1,1224)
-LexToken(DQSTRING,'"Negative saturation voltage"',1,1253)
-LexToken(CLOSESQBRACKET,']',1,1254)
-LexToken(COMMA,',',1,1255)
-LexToken(VAR,'list',1,1271)
-LexToken(OPENBRACKET,'(',1,1275)
-LexToken(DQSTRING,'"vec"',1,1280)
-LexToken(COMMA,',',1,1281)
-LexToken(NUMBER,'1',1,1282)
-LexToken(COMMA,',',1,1283)
-LexToken(DQSTRING,'"vec"',1,1288)
-LexToken(COMMA,',',1,1289)
-LexToken(NUMBER,'1',1,1290)
-LexToken(COMMA,',',1,1291)
-LexToken(DQSTRING,'"vec"',1,1296)
-LexToken(COMMA,',',1,1297)
-LexToken(NUMBER,'1',1,1298)
-LexToken(CLOSEBRACKET,')',1,1299)
-LexToken(COMMA,',',1,1300)
-LexToken(VAR,'exprs',1,1301)
-LexToken(CLOSEBRACKET,')',1,1306)
-LexToken(EOL,'\n',1,1307)
-LexToken(IF,'if',1,1321)
-LexToken(NOT,'~',1,1324)
-LexToken(VAR,'ok',1,1325)
-LexToken(THEN,'then',1,1328)
-LexToken(EOL,'\n',1,1332)
-LexToken(BREAK,'break',1,1349)
-LexToken(EOL,'\n',1,1354)
-LexToken(END,'end',1,1368)
-LexToken(EOL,'\n',1,1371)
-LexToken(VAR,'model',1,1384)
-LexToken(DOT,'.',1,1389)
-LexToken(VAR,'equations',1,1390)
-LexToken(DOT,'.',1,1399)
-LexToken(VAR,'parameters',1,1400)
-LexToken(OPENBRACKET,'(',1,1410)
-LexToken(NUMBER,'2',1,1411)
-LexToken(CLOSEBRACKET,')',1,1412)
-LexToken(ASSIGNMENT,'=',1,1413)
-LexToken(VAR,'list',1,1414)
-LexToken(OPENBRACKET,'(',1,1418)
-LexToken(VAR,'OLGain',1,1419)
-LexToken(COMMA,',',1,1425)
-LexToken(VAR,'SatH',1,1426)
-LexToken(COMMA,',',1,1430)
-LexToken(VAR,'SatL',1,1431)
-LexToken(CLOSEBRACKET,')',1,1435)
-LexToken(EOL,'\n',1,1436)
-LexToken(VAR,'graphics',1,1449)
-LexToken(DOT,'.',1,1457)
-LexToken(VAR,'exprs',1,1458)
-LexToken(ASSIGNMENT,'=',1,1463)
-LexToken(VAR,'exprs',1,1464)
-LexToken(EOL,'\n',1,1469)
-LexToken(VAR,'x',1,1482)
-LexToken(DOT,'.',1,1483)
-LexToken(VAR,'graphics',1,1484)
-LexToken(ASSIGNMENT,'=',1,1492)
-LexToken(VAR,'graphics',1,1493)
-LexToken(EOL,'\n',1,1501)
-LexToken(VAR,'x',1,1515)
-LexToken(DOT,'.',1,1516)
-LexToken(VAR,'model',1,1517)
-LexToken(ASSIGNMENT,'=',1,1522)
-LexToken(VAR,'model',1,1523)
-LexToken(EOL,'\n',1,1528)
-LexToken(BREAK,'break',1,1541)
-LexToken(EOL,'\n',1,1546)
-LexToken(END,'end',1,1555)
-LexToken(EOL,'\n',1,1558)
-LexToken(CASE,'case',1,1563)
-LexToken(DQSTRING,'"define"',1,1575)
-LexToken(THEN,'then',1,1577)
-LexToken(EOL,'\n',1,1581)
-LexToken(EOL,'\n',1,1606)
-LexToken(EOL,'\n',1,1627)
-LexToken(EOL,'\n',1,1648)
-LexToken(EOL,'\n',1,1687)
-LexToken(EOL,'\n',1,1709)
-LexToken(VAR,'S',1,1718)
-LexToken(ASSIGNMENT,'=',1,1719)
-LexToken(OPENSQBRACKET,'[',1,1720)
-LexToken(CLOSESQBRACKET,']',1,1721)
-LexToken(EOL,'\n',1,1722)
-LexToken(VAR,'Z',1,1732)
-LexToken(ASSIGNMENT,'=',1,1733)
-LexToken(OPENSQBRACKET,'[',1,1734)
-LexToken(CLOSESQBRACKET,']',1,1735)
-LexToken(EOL,'\n',1,1736)
-LexToken(VAR,'model',1,1746)
-LexToken(ASSIGNMENT,'=',1,1751)
-LexToken(SCICOS_MODEL,'scicos_model',1,1752)
-LexToken(OPENBRACKET,'(',1,1764)
-LexToken(CLOSEBRACKET,')',1,1765)
-LexToken(EOL,'\n',1,1766)
-LexToken(VAR,'model',1,1776)
-LexToken(DOT,'.',1,1781)
-LexToken(VAR,'sim',1,1782)
-LexToken(ASSIGNMENT,'=',1,1785)
-LexToken(DQSTRING,'"OpAmp"',1,1792)
-LexToken(EOL,'\n',1,1793)
-LexToken(VAR,'model',1,1803)
-LexToken(DOT,'.',1,1808)
-LexToken(VAR,'blocktype',1,1809)
-LexToken(ASSIGNMENT,'=',1,1818)
-LexToken(DQSTRING,'"c"',1,1821)
-LexToken(EOL,'\n',1,1822)
-LexToken(VAR,'model',1,1832)
-LexToken(DOT,'.',1,1837)
-LexToken(VAR,'dep_ut',1,1838)
-LexToken(ASSIGNMENT,'=',1,1844)
-LexToken(OPENSQBRACKET,'[',1,1845)
-LexToken(PREVAR_BOOLEAN,'%t',1,1846)
-LexToken(PREVAR_BOOLEAN,'%f',1,1849)
-LexToken(CLOSESQBRACKET,']',1,1851)
-LexToken(EOL,'\n',1,1852)
-LexToken(VAR,'mo',1,1862)
-LexToken(ASSIGNMENT,'=',1,1864)
-LexToken(VAR,'modelica',1,1865)
-LexToken(OPENBRACKET,'(',1,1873)
-LexToken(CLOSEBRACKET,')',1,1874)
-LexToken(EOL,'\n',1,1875)
-LexToken(VAR,'mo',1,1885)
-LexToken(DOT,'.',1,1887)
-LexToken(VAR,'model',1,1888)
-LexToken(ASSIGNMENT,'=',1,1893)
-LexToken(VAR,'model',1,1894)
-LexToken(DOT,'.',1,1899)
-LexToken(VAR,'sim',1,1900)
-LexToken(EOL,'\n',1,1903)
-LexToken(VAR,'mo',1,1913)
-LexToken(DOT,'.',1,1915)
-LexToken(VAR,'inputs',1,1916)
-LexToken(ASSIGNMENT,'=',1,1922)
-LexToken(OPENSQBRACKET,'[',1,1923)
-LexToken(DQSTRING,'"in_p"',1,1929)
-LexToken(SEMICOLON,';',1,1930)
-LexToken(DQSTRING,'"in_n"',1,1936)
-LexToken(CLOSESQBRACKET,']',1,1937)
-LexToken(EOL,'\n',1,1938)
-LexToken(VAR,'mo',1,1948)
-LexToken(DOT,'.',1,1950)
-LexToken(VAR,'outputs',1,1951)
-LexToken(ASSIGNMENT,'=',1,1958)
-LexToken(OPENSQBRACKET,'[',1,1959)
-LexToken(DQSTRING,'"out"',1,1964)
-LexToken(CLOSESQBRACKET,']',1,1965)
-LexToken(EOL,'\n',1,1966)
-LexToken(VAR,'mo',1,1976)
-LexToken(DOT,'.',1,1978)
-LexToken(VAR,'parameters',1,1979)
-LexToken(ASSIGNMENT,'=',1,1989)
-LexToken(VAR,'list',1,1990)
-LexToken(OPENBRACKET,'(',1,1994)
-LexToken(VAR,'S',1,1995)
-LexToken(COMMA,',',1,1996)
-LexToken(VAR,'Z',1,1997)
-LexToken(CLOSEBRACKET,')',1,1998)
-LexToken(EOL,'\n',1,1999)
-LexToken(VAR,'model',1,2009)
-LexToken(DOT,'.',1,2014)
-LexToken(VAR,'equations',1,2015)
-LexToken(ASSIGNMENT,'=',1,2024)
-LexToken(VAR,'mo',1,2025)
-LexToken(EOL,'\n',1,2027)
-LexToken(VAR,'model',1,2037)
-LexToken(DOT,'.',1,2042)
-LexToken(VAR,'in',1,2043)
-LexToken(ASSIGNMENT,'=',1,2045)
-LexToken(VAR,'ones',1,2046)
-LexToken(OPENBRACKET,'(',1,2050)
-LexToken(VAR,'size',1,2051)
-LexToken(OPENBRACKET,'(',1,2055)
-LexToken(VAR,'mo',1,2056)
-LexToken(DOT,'.',1,2058)
-LexToken(VAR,'inputs',1,2059)
-LexToken(COMMA,',',1,2065)
-LexToken(DQSTRING,'"*"',1,2068)
-LexToken(CLOSEBRACKET,')',1,2069)
-LexToken(COMMA,',',1,2070)
-LexToken(NUMBER,'1',1,2071)
-LexToken(CLOSEBRACKET,')',1,2072)
-LexToken(EOL,'\n',1,2073)
-LexToken(VAR,'model',1,2083)
-LexToken(DOT,'.',1,2088)
-LexToken(VAR,'out',1,2089)
-LexToken(ASSIGNMENT,'=',1,2092)
-LexToken(VAR,'ones',1,2093)
-LexToken(OPENBRACKET,'(',1,2097)
-LexToken(VAR,'size',1,2098)
-LexToken(OPENBRACKET,'(',1,2102)
-LexToken(VAR,'mo',1,2103)
-LexToken(DOT,'.',1,2105)
-LexToken(VAR,'outputs',1,2106)
-LexToken(COMMA,',',1,2113)
-LexToken(DQSTRING,'"*"',1,2116)
-LexToken(CLOSEBRACKET,')',1,2117)
-LexToken(COMMA,',',1,2118)
-LexToken(NUMBER,'1',1,2119)
-LexToken(CLOSEBRACKET,')',1,2120)
-LexToken(EOL,'\n',1,2121)
-LexToken(VAR,'model',1,2131)
-LexToken(DOT,'.',1,2136)
-LexToken(VAR,'rpar',1,2137)
-LexToken(ASSIGNMENT,'=',1,2141)
-LexToken(VAR,'Z',1,2142)
-LexToken(EOL,'\n',1,2143)
-LexToken(VAR,'exprs',1,2153)
-LexToken(ASSIGNMENT,'=',1,2158)
-LexToken(VAR,'string',1,2159)
-LexToken(OPENBRACKET,'(',1,2165)
-LexToken(VAR,'Z',1,2166)
-LexToken(CLOSEBRACKET,')',1,2167)
-LexToken(EOL,'\n',1,2168)
-LexToken(VAR,'gr_i',1,2178)
-LexToken(ASSIGNMENT,'=',1,2182)
-LexToken(OPENSQBRACKET,'[',1,2183)
-LexToken(CLOSESQBRACKET,']',1,2184)
-LexToken(EOL,'\n',1,2185)
-LexToken(VAR,'x',1,2194)
-LexToken(ASSIGNMENT,'=',1,2195)
-LexToken(VAR,'standard_define',1,2196)
-LexToken(OPENBRACKET,'(',1,2211)
-LexToken(OPENSQBRACKET,'[',1,2212)
-LexToken(NUMBER,'3',1,2213)
-LexToken(NUMBER,'5',1,2215)
-LexToken(CLOSESQBRACKET,']',1,2216)
-LexToken(COMMA,',',1,2217)
-LexToken(VAR,'model',1,2218)
-LexToken(COMMA,',',1,2223)
-LexToken(VAR,'exprs',1,2224)
-LexToken(COMMA,',',1,2229)
-LexToken(VAR,'gr_i',1,2230)
-LexToken(CLOSEBRACKET,')',1,2234)
-LexToken(EOL,'\n',1,2235)
-LexToken(VAR,'x',1,2244)
-LexToken(DOT,'.',1,2245)
-LexToken(VAR,'graphics',1,2246)
-LexToken(DOT,'.',1,2254)
-LexToken(VAR,'in_implicit',1,2255)
-LexToken(ASSIGNMENT,'=',1,2266)
-LexToken(OPENSQBRACKET,'[',1,2267)
-LexToken(DQSTRING,'"I"',1,2270)
-LexToken(SEMICOLON,';',1,2271)
-LexToken(DQSTRING,'"I"',1,2274)
-LexToken(CLOSESQBRACKET,']',1,2275)
-LexToken(EOL,'\n',1,2276)
-LexToken(VAR,'x',1,2285)
-LexToken(DOT,'.',1,2286)
-LexToken(VAR,'graphics',1,2287)
-LexToken(DOT,'.',1,2295)
-LexToken(VAR,'out_implicit',1,2296)
-LexToken(ASSIGNMENT,'=',1,2308)
-LexToken(OPENSQBRACKET,'[',1,2309)
-LexToken(DQSTRING,'"I"',1,2312)
-LexToken(CLOSESQBRACKET,']',1,2313)
-LexToken(EOL,'\n',1,2314)
-LexToken(END,'end',1,2319)
-LexToken(EOL,'\n',1,2322)
-LexToken(ENDFUNCTION,'endfunction',1,2323)
-LexToken(EOL,'\n',1,2334)
-LexToken(EOL,'\n',1,2343)
-LexToken(EOL,'\n',1,2344)
+/* autogenerated from "macros/Electrical/OpAmp.sci" */
+function OpAmp() {
+OpAmp.prototype.get = function OpAmp() {
+}
+OpAmp.prototype.set = function OpAmp() {
+x=arg1;
+graphics=arg1.graphics;
+exprs=graphics.exprs;
+model=arg1.model;
+while (None) {
+[ok,OLGain,SatH,SatL,exprs]=scicos_getvalue("Set the Operational Amplifier parameters",["Open Loop Gain","Positive saturation voltage","Negative saturation voltage"],list("vec",1,"vec",1,"vec",1),exprs);
+if (!ok) {
+break
+}
+model.equations.parameters[2]=list(OLGain,SatH,SatL);
+graphics.exprs=exprs;
+x.graphics=graphics;
+x.model=model;
+break
+}
+}
+OpAmp.prototype.define = function OpAmp() {
+S=[];
+Z=[];
+model=scicos_model();
+model.sim="OpAmp";
+model.blocktype="c";
+model.dep_ut=[true,None];
+mo=modelica();
+mo.model=model.sim;
+mo.inputs=["in_p","in_n"];
+mo.outputs=["out"];
+mo.parameters=list(S,Z);
+model.equations=mo;
+model.in=ones(size(mo.inputs,"*"),1);
+model.out=ones(size(mo.outputs,"*"),1);
+model.rpar=Z;
+exprs=string(Z);
+gr_i=[];
+x=standard_define([3,5],model,exprs,gr_i);
+x.graphics.in_implicit=["I","I"];
+x.graphics.out_implicit=["I"];
+}
+OpAmp.prototype.details = function OpAmp() {
+}
+}
diff --git a/js/Electrical/PMOS.js b/js/Electrical/PMOS.js
index cca586a4..22293854 100644
--- a/js/Electrical/PMOS.js
+++ b/js/Electrical/PMOS.js
@@ -1,538 +1,52 @@
-LexToken(EOL,'\n',1,10)
-LexToken(EOL,'\n',1,13)
-LexToken(EOL,'\n',1,73)
-LexToken(EOL,'\n',1,76)
-LexToken(EOL,'\n',1,148)
-LexToken(EOL,'\n',1,220)
-LexToken(EOL,'\n',1,289)
-LexToken(EOL,'\n',1,328)
-LexToken(EOL,'\n',1,331)
-LexToken(EOL,'\n',1,398)
-LexToken(EOL,'\n',1,464)
-LexToken(EOL,'\n',1,529)
-LexToken(EOL,'\n',1,577)
-LexToken(EOL,'\n',1,580)
-LexToken(EOL,'\n',1,649)
-LexToken(EOL,'\n',1,712)
-LexToken(EOL,'\n',1,794)
-LexToken(EOL,'\n',1,797)
-LexToken(EOL,'\n',1,828)
-LexToken(EOL,'\n',1,831)
-LexToken(EOL,'\n',1,832)
-LexToken(FUNCTION,'function',1,833)
-LexToken(OPENSQBRACKET,'[',1,842)
-LexToken(VAR,'x',1,843)
-LexToken(COMMA,',',1,844)
-LexToken(VAR,'y',1,845)
-LexToken(COMMA,',',1,846)
-LexToken(VAR,'typ',1,847)
-LexToken(CLOSESQBRACKET,']',1,850)
-LexToken(ASSIGNMENT,'=',1,851)
-LexToken(VAR,'PMOS',1,852)
-LexToken(OPENBRACKET,'(',1,856)
-LexToken(VAR,'job',1,857)
-LexToken(COMMA,',',1,860)
-LexToken(VAR,'arg1',1,861)
-LexToken(COMMA,',',1,865)
-LexToken(VAR,'arg2',1,866)
-LexToken(CLOSEBRACKET,')',1,870)
-LexToken(EOL,'\n',1,871)
-LexToken(VAR,'x',1,876)
-LexToken(ASSIGNMENT,'=',1,877)
-LexToken(OPENSQBRACKET,'[',1,878)
-LexToken(CLOSESQBRACKET,']',1,879)
-LexToken(EOL,'\n',1,880)
-LexToken(VAR,'y',1,886)
-LexToken(ASSIGNMENT,'=',1,887)
-LexToken(OPENSQBRACKET,'[',1,888)
-LexToken(CLOSESQBRACKET,']',1,889)
-LexToken(EOL,'\n',1,890)
-LexToken(VAR,'typ',1,896)
-LexToken(ASSIGNMENT,'=',1,899)
-LexToken(OPENSQBRACKET,'[',1,900)
-LexToken(CLOSESQBRACKET,']',1,901)
-LexToken(EOL,'\n',1,902)
-LexToken(SELECT,'select',1,908)
-LexToken(VAR,'job',1,915)
-LexToken(EOL,'\n',1,918)
-LexToken(CASE,'case',1,923)
-LexToken(DQSTRING,'"set"',1,932)
-LexToken(THEN,'then',1,934)
-LexToken(EOL,'\n',1,938)
-LexToken(VAR,'x',1,947)
-LexToken(ASSIGNMENT,'=',1,948)
-LexToken(VAR,'arg1',1,949)
-LexToken(EOL,'\n',1,953)
-LexToken(VAR,'graphics',1,963)
-LexToken(ASSIGNMENT,'=',1,971)
-LexToken(VAR,'arg1',1,972)
-LexToken(DOT,'.',1,976)
-LexToken(VAR,'graphics',1,977)
-LexToken(EOL,'\n',1,985)
-LexToken(VAR,'exprs',1,995)
-LexToken(ASSIGNMENT,'=',1,1000)
-LexToken(VAR,'graphics',1,1001)
-LexToken(DOT,'.',1,1009)
-LexToken(VAR,'exprs',1,1010)
-LexToken(EOL,'\n',1,1015)
-LexToken(VAR,'model',1,1024)
-LexToken(ASSIGNMENT,'=',1,1029)
-LexToken(VAR,'arg1',1,1030)
-LexToken(DOT,'.',1,1034)
-LexToken(VAR,'model',1,1035)
-LexToken(EOL,'\n',1,1040)
-LexToken(WHILE,'while',1,1050)
-LexToken(PREVAR_BOOLEAN,'%t',1,1056)
-LexToken(DO,'do',1,1059)
-LexToken(EOL,'\n',1,1061)
-LexToken(OPENSQBRACKET,'[',1,1074)
-LexToken(VAR,'ok',1,1075)
-LexToken(COMMA,',',1,1077)
-LexToken(VAR,'W',1,1078)
-LexToken(COMMA,',',1,1079)
-LexToken(VAR,'L',1,1080)
-LexToken(COMMA,',',1,1081)
-LexToken(VAR,'Beta',1,1082)
-LexToken(COMMA,',',1,1086)
-LexToken(VAR,'Vt',1,1087)
-LexToken(COMMA,',',1,1089)
-LexToken(VAR,'K2',1,1090)
-LexToken(COMMA,',',1,1092)
-LexToken(VAR,'K5',1,1093)
-LexToken(COMMA,',',1,1095)
-LexToken(VAR,'dW',1,1096)
-LexToken(COMMA,',',1,1098)
-LexToken(VAR,'dL',1,1099)
-LexToken(COMMA,',',1,1101)
-LexToken(VAR,'RDS',1,1102)
-LexToken(COMMA,',',1,1105)
-LexToken(VAR,'exprs',1,1106)
-LexToken(CLOSESQBRACKET,']',1,1111)
-LexToken(ASSIGNMENT,'=',1,1112)
-LexToken(SCICOS_GETVALUE,'scicos_getvalue',1,1113)
-LexToken(OPENBRACKET,'(',1,1128)
-LexToken(DQSTRING,'"Set PMOS Transistor parameters"',1,1160)
-LexToken(COMMA,',',1,1161)
-LexToken(OPENSQBRACKET,'[',1,1177)
-LexToken(DQSTRING,'"Width [m]"',1,1188)
-LexToken(SEMICOLON,';',1,1189)
-LexToken(DQSTRING,'"Length [m]"',1,1216)
-LexToken(SEMICOLON,';',1,1217)
-LexToken(DQSTRING,'"Transconductance parameter [A/(V*V)]"',1,1270)
-LexToken(SEMICOLON,';',1,1271)
-LexToken(DQSTRING,'"Zero bias threshold voltage [V]"',1,1319)
-LexToken(SEMICOLON,';',1,1320)
-LexToken(DQSTRING,'"Bulk threshold parameter"',1,1361)
-LexToken(SEMICOLON,';',1,1362)
-LexToken(DQSTRING,'"Reduction of pinch-off region"',1,1408)
-LexToken(SEMICOLON,';',1,1409)
-LexToken(DQSTRING,'"Narrowing of channel [m]"',1,1450)
-LexToken(SEMICOLON,';',1,1451)
-LexToken(DQSTRING,'"Shortening of channel [m]"',1,1493)
-LexToken(SEMICOLON,';',1,1494)
-LexToken(DQSTRING,'"Drain-Source-Resistance [Ohm]"',1,1540)
-LexToken(CLOSESQBRACKET,']',1,1541)
-LexToken(COMMA,',',1,1542)
-LexToken(VAR,'list',1,1558)
-LexToken(OPENBRACKET,'(',1,1562)
-LexToken(DQSTRING,'"vec"',1,1567)
-LexToken(COMMA,',',1,1568)
-LexToken(ADDITION,'-',1,1569)
-LexToken(NUMBER,'1',1,1570)
-LexToken(COMMA,',',1,1571)
-LexToken(DQSTRING,'"vec"',1,1576)
-LexToken(COMMA,',',1,1577)
-LexToken(ADDITION,'-',1,1578)
-LexToken(NUMBER,'1',1,1579)
-LexToken(COMMA,',',1,1580)
-LexToken(DQSTRING,'"vec"',1,1585)
-LexToken(COMMA,',',1,1586)
-LexToken(ADDITION,'-',1,1587)
-LexToken(NUMBER,'1',1,1588)
-LexToken(COMMA,',',1,1589)
-LexToken(DQSTRING,'"vec"',1,1594)
-LexToken(COMMA,',',1,1595)
-LexToken(ADDITION,'-',1,1596)
-LexToken(NUMBER,'1',1,1597)
-LexToken(COMMA,',',1,1598)
-LexToken(DQSTRING,'"vec"',1,1603)
-LexToken(COMMA,',',1,1604)
-LexToken(ADDITION,'-',1,1605)
-LexToken(NUMBER,'1',1,1606)
-LexToken(COMMA,',',1,1607)
-LexToken(DQSTRING,'"vec"',1,1612)
-LexToken(COMMA,',',1,1613)
-LexToken(ADDITION,'-',1,1614)
-LexToken(NUMBER,'1',1,1615)
-LexToken(COMMA,',',1,1616)
-LexToken(DQSTRING,'"vec"',1,1621)
-LexToken(COMMA,',',1,1622)
-LexToken(ADDITION,'-',1,1623)
-LexToken(NUMBER,'1',1,1624)
-LexToken(COMMA,',',1,1625)
-LexToken(DQSTRING,'"vec"',1,1630)
-LexToken(COMMA,',',1,1631)
-LexToken(ADDITION,'-',1,1632)
-LexToken(NUMBER,'1',1,1633)
-LexToken(COMMA,',',1,1634)
-LexToken(DQSTRING,'"vec"',1,1639)
-LexToken(COMMA,',',1,1640)
-LexToken(ADDITION,'-',1,1641)
-LexToken(NUMBER,'1',1,1642)
-LexToken(CLOSEBRACKET,')',1,1643)
-LexToken(COMMA,',',1,1644)
-LexToken(VAR,'exprs',1,1645)
-LexToken(CLOSEBRACKET,')',1,1650)
-LexToken(EOL,'\n',1,1651)
-LexToken(EOL,'\n',1,1652)
-LexToken(IF,'if',1,1665)
-LexToken(NOT,'~',1,1668)
-LexToken(VAR,'ok',1,1669)
-LexToken(THEN,'then',1,1672)
-LexToken(EOL,'\n',1,1676)
-LexToken(BREAK,'break',1,1693)
-LexToken(EOL,'\n',1,1698)
-LexToken(END,'end',1,1712)
-LexToken(EOL,'\n',1,1715)
-LexToken(VAR,'model',1,1728)
-LexToken(DOT,'.',1,1733)
-LexToken(VAR,'equations',1,1734)
-LexToken(DOT,'.',1,1743)
-LexToken(VAR,'parameters',1,1744)
-LexToken(OPENBRACKET,'(',1,1754)
-LexToken(NUMBER,'2',1,1755)
-LexToken(CLOSEBRACKET,')',1,1756)
-LexToken(ASSIGNMENT,'=',1,1757)
-LexToken(VAR,'list',1,1758)
-LexToken(OPENBRACKET,'(',1,1762)
-LexToken(VAR,'W',1,1763)
-LexToken(COMMA,',',1,1764)
-LexToken(VAR,'L',1,1765)
-LexToken(COMMA,',',1,1766)
-LexToken(VAR,'Beta',1,1767)
-LexToken(COMMA,',',1,1771)
-LexToken(VAR,'Vt',1,1772)
-LexToken(COMMA,',',1,1774)
-LexToken(VAR,'K2',1,1775)
-LexToken(COMMA,',',1,1777)
-LexToken(VAR,'K5',1,1778)
-LexToken(COMMA,',',1,1780)
-LexToken(VAR,'dW',1,1781)
-LexToken(COMMA,',',1,1783)
-LexToken(VAR,'dL',1,1784)
-LexToken(COMMA,',',1,1786)
-LexToken(VAR,'RDS',1,1787)
-LexToken(CLOSEBRACKET,')',1,1790)
-LexToken(EOL,'\n',1,1791)
-LexToken(VAR,'graphics',1,1804)
-LexToken(DOT,'.',1,1812)
-LexToken(VAR,'exprs',1,1813)
-LexToken(ASSIGNMENT,'=',1,1818)
-LexToken(VAR,'exprs',1,1819)
-LexToken(EOL,'\n',1,1824)
-LexToken(VAR,'x',1,1837)
-LexToken(DOT,'.',1,1838)
-LexToken(VAR,'graphics',1,1839)
-LexToken(ASSIGNMENT,'=',1,1847)
-LexToken(VAR,'graphics',1,1848)
-LexToken(EOL,'\n',1,1856)
-LexToken(VAR,'x',1,1870)
-LexToken(DOT,'.',1,1871)
-LexToken(VAR,'model',1,1872)
-LexToken(ASSIGNMENT,'=',1,1877)
-LexToken(VAR,'model',1,1878)
-LexToken(EOL,'\n',1,1883)
-LexToken(BREAK,'break',1,1896)
-LexToken(EOL,'\n',1,1901)
-LexToken(END,'end',1,1910)
-LexToken(EOL,'\n',1,1913)
-LexToken(CASE,'case',1,1918)
-LexToken(DQSTRING,'"define"',1,1930)
-LexToken(THEN,'then',1,1932)
-LexToken(EOL,'\n',1,1936)
-LexToken(VAR,'model',1,1945)
-LexToken(ASSIGNMENT,'=',1,1950)
-LexToken(SCICOS_MODEL,'scicos_model',1,1951)
-LexToken(OPENBRACKET,'(',1,1963)
-LexToken(CLOSEBRACKET,')',1,1964)
-LexToken(EOL,'\n',1,1965)
-LexToken(VAR,'W',1,1974)
-LexToken(ASSIGNMENT,'=',1,1975)
-LexToken(NUMBER,'50.0e-6',1,1976)
-LexToken(EOL,'\n',1,1983)
-LexToken(VAR,'L',1,1993)
-LexToken(ASSIGNMENT,'=',1,1994)
-LexToken(NUMBER,'6.0e-6',1,1995)
-LexToken(EOL,'\n',1,2001)
-LexToken(VAR,'Beta',1,2011)
-LexToken(ASSIGNMENT,'=',1,2015)
-LexToken(NUMBER,'0.0105e-3',1,2016)
-LexToken(EOL,'\n',1,2025)
-LexToken(VAR,'Vt',1,2035)
-LexToken(ASSIGNMENT,'=',1,2037)
-LexToken(ADDITION,'-',1,2038)
-LexToken(NUMBER,'1',1,2039)
-LexToken(EOL,'\n',1,2040)
-LexToken(VAR,'K2',1,2050)
-LexToken(ASSIGNMENT,'=',1,2052)
-LexToken(NUMBER,'0.41',1,2053)
-LexToken(EOL,'\n',1,2057)
-LexToken(VAR,'K5',1,2067)
-LexToken(ASSIGNMENT,'=',1,2069)
-LexToken(NUMBER,'0.839',1,2070)
-LexToken(EOL,'\n',1,2075)
-LexToken(VAR,'dW',1,2085)
-LexToken(ASSIGNMENT,'=',1,2087)
-LexToken(ADDITION,'-',1,2088)
-LexToken(NUMBER,'2.5e-6',1,2089)
-LexToken(EOL,'\n',1,2095)
-LexToken(VAR,'dL',1,2105)
-LexToken(ASSIGNMENT,'=',1,2107)
-LexToken(ADDITION,'-',1,2108)
-LexToken(NUMBER,'2.1e-6',1,2109)
-LexToken(EOL,'\n',1,2115)
-LexToken(VAR,'RDS',1,2125)
-LexToken(ASSIGNMENT,'=',1,2128)
-LexToken(NUMBER,'1.e+7',1,2129)
-LexToken(EOL,'\n',1,2134)
-LexToken(VAR,'model',1,2144)
-LexToken(DOT,'.',1,2149)
-LexToken(VAR,'sim',1,2150)
-LexToken(ASSIGNMENT,'=',1,2153)
-LexToken(DQSTRING,'"PMOS"',1,2159)
-LexToken(EOL,'\n',1,2160)
-LexToken(VAR,'model',1,2169)
-LexToken(DOT,'.',1,2174)
-LexToken(VAR,'blocktype',1,2175)
-LexToken(ASSIGNMENT,'=',1,2184)
-LexToken(DQSTRING,'"c"',1,2187)
-LexToken(EOL,'\n',1,2188)
-LexToken(VAR,'model',1,2197)
-LexToken(DOT,'.',1,2202)
-LexToken(VAR,'dep_ut',1,2203)
-LexToken(ASSIGNMENT,'=',1,2209)
-LexToken(OPENSQBRACKET,'[',1,2210)
-LexToken(PREVAR_BOOLEAN,'%t',1,2211)
-LexToken(PREVAR_BOOLEAN,'%f',1,2214)
-LexToken(CLOSESQBRACKET,']',1,2216)
-LexToken(EOL,'\n',1,2217)
-LexToken(VAR,'mo',1,2226)
-LexToken(ASSIGNMENT,'=',1,2228)
-LexToken(VAR,'modelica',1,2229)
-LexToken(OPENBRACKET,'(',1,2237)
-LexToken(CLOSEBRACKET,')',1,2238)
-LexToken(EOL,'\n',1,2239)
-LexToken(VAR,'mo',1,2248)
-LexToken(DOT,'.',1,2250)
-LexToken(VAR,'model',1,2251)
-LexToken(ASSIGNMENT,'=',1,2256)
-LexToken(DQSTRING,'"PMOS"',1,2262)
-LexToken(EOL,'\n',1,2263)
-LexToken(VAR,'mo',1,2273)
-LexToken(DOT,'.',1,2275)
-LexToken(VAR,'outputs',1,2276)
-LexToken(ASSIGNMENT,'=',1,2283)
-LexToken(OPENSQBRACKET,'[',1,2284)
-LexToken(DQSTRING,'"D"',1,2287)
-LexToken(SEMICOLON,';',1,2288)
-LexToken(DQSTRING,'"B"',1,2291)
-LexToken(SEMICOLON,';',1,2292)
-LexToken(DQSTRING,'"S"',1,2295)
-LexToken(CLOSESQBRACKET,']',1,2296)
-LexToken(EOL,'\n',1,2297)
-LexToken(VAR,'mo',1,2306)
-LexToken(DOT,'.',1,2308)
-LexToken(VAR,'inputs',1,2309)
-LexToken(ASSIGNMENT,'=',1,2315)
-LexToken(DQSTRING,'"G"',1,2318)
-LexToken(EOL,'\n',1,2319)
-LexToken(VAR,'mo',1,2329)
-LexToken(DOT,'.',1,2331)
-LexToken(VAR,'parameters',1,2332)
-LexToken(ASSIGNMENT,'=',1,2342)
-LexToken(VAR,'list',1,2343)
-LexToken(OPENBRACKET,'(',1,2347)
-LexToken(OPENSQBRACKET,'[',1,2348)
-LexToken(DQSTRING,'"W"',1,2351)
-LexToken(SEMICOLON,';',1,2352)
-LexToken(DQSTRING,'"L"',1,2355)
-LexToken(SEMICOLON,';',1,2356)
-LexToken(DQSTRING,'"Beta"',1,2362)
-LexToken(SEMICOLON,';',1,2363)
-LexToken(DQSTRING,'"Vt"',1,2367)
-LexToken(SEMICOLON,';',1,2368)
-LexToken(DQSTRING,'"K2"',1,2372)
-LexToken(SEMICOLON,';',1,2373)
-LexToken(DQSTRING,'"K5"',1,2377)
-LexToken(SEMICOLON,';',1,2378)
-LexToken(DQSTRING,'"dW"',1,2382)
-LexToken(SEMICOLON,';',1,2383)
-LexToken(DQSTRING,'"dL"',1,2387)
-LexToken(SEMICOLON,';',1,2388)
-LexToken(DQSTRING,'"RDS"',1,2393)
-LexToken(CLOSESQBRACKET,']',1,2394)
-LexToken(COMMA,',',1,2395)
-LexToken(OPENSQBRACKET,'[',1,2396)
-LexToken(VAR,'W',1,2397)
-LexToken(SEMICOLON,';',1,2398)
-LexToken(VAR,'L',1,2399)
-LexToken(SEMICOLON,';',1,2400)
-LexToken(VAR,'Beta',1,2401)
-LexToken(SEMICOLON,';',1,2405)
-LexToken(VAR,'Vt',1,2406)
-LexToken(SEMICOLON,';',1,2408)
-LexToken(VAR,'K2',1,2409)
-LexToken(SEMICOLON,';',1,2411)
-LexToken(VAR,'K5',1,2412)
-LexToken(SEMICOLON,';',1,2414)
-LexToken(VAR,'dW',1,2415)
-LexToken(SEMICOLON,';',1,2417)
-LexToken(VAR,'dL',1,2418)
-LexToken(SEMICOLON,';',1,2420)
-LexToken(VAR,'RDS',1,2421)
-LexToken(CLOSESQBRACKET,']',1,2424)
-LexToken(CLOSEBRACKET,')',1,2425)
-LexToken(EOL,'\n',1,2426)
-LexToken(VAR,'model',1,2435)
-LexToken(DOT,'.',1,2440)
-LexToken(VAR,'equations',1,2441)
-LexToken(ASSIGNMENT,'=',1,2450)
-LexToken(VAR,'mo',1,2451)
-LexToken(EOL,'\n',1,2453)
-LexToken(VAR,'model',1,2462)
-LexToken(DOT,'.',1,2467)
-LexToken(VAR,'in',1,2468)
-LexToken(ASSIGNMENT,'=',1,2470)
-LexToken(VAR,'ones',1,2471)
-LexToken(OPENBRACKET,'(',1,2475)
-LexToken(VAR,'size',1,2476)
-LexToken(OPENBRACKET,'(',1,2480)
-LexToken(VAR,'mo',1,2481)
-LexToken(DOT,'.',1,2483)
-LexToken(VAR,'inputs',1,2484)
-LexToken(COMMA,',',1,2490)
-LexToken(DQSTRING,'"*"',1,2493)
-LexToken(CLOSEBRACKET,')',1,2494)
-LexToken(COMMA,',',1,2495)
-LexToken(NUMBER,'1',1,2496)
-LexToken(CLOSEBRACKET,')',1,2497)
-LexToken(EOL,'\n',1,2498)
-LexToken(VAR,'model',1,2507)
-LexToken(DOT,'.',1,2512)
-LexToken(VAR,'out',1,2513)
-LexToken(ASSIGNMENT,'=',1,2516)
-LexToken(VAR,'ones',1,2517)
-LexToken(OPENBRACKET,'(',1,2521)
-LexToken(VAR,'size',1,2522)
-LexToken(OPENBRACKET,'(',1,2526)
-LexToken(VAR,'mo',1,2527)
-LexToken(DOT,'.',1,2529)
-LexToken(VAR,'outputs',1,2530)
-LexToken(COMMA,',',1,2537)
-LexToken(DQSTRING,'"*"',1,2540)
-LexToken(CLOSEBRACKET,')',1,2541)
-LexToken(COMMA,',',1,2542)
-LexToken(NUMBER,'1',1,2543)
-LexToken(CLOSEBRACKET,')',1,2544)
-LexToken(EOL,'\n',1,2545)
-LexToken(VAR,'exprs',1,2554)
-LexToken(ASSIGNMENT,'=',1,2559)
-LexToken(OPENSQBRACKET,'[',1,2560)
-LexToken(VAR,'string',1,2561)
-LexToken(OPENBRACKET,'(',1,2567)
-LexToken(VAR,'W',1,2568)
-LexToken(CLOSEBRACKET,')',1,2569)
-LexToken(SEMICOLON,';',1,2570)
-LexToken(VAR,'string',1,2571)
-LexToken(OPENBRACKET,'(',1,2577)
-LexToken(VAR,'L',1,2578)
-LexToken(CLOSEBRACKET,')',1,2579)
-LexToken(SEMICOLON,';',1,2580)
-LexToken(VAR,'string',1,2581)
-LexToken(OPENBRACKET,'(',1,2587)
-LexToken(VAR,'Beta',1,2588)
-LexToken(CLOSEBRACKET,')',1,2592)
-LexToken(SEMICOLON,';',1,2593)
-LexToken(VAR,'string',1,2594)
-LexToken(OPENBRACKET,'(',1,2600)
-LexToken(VAR,'Vt',1,2601)
-LexToken(CLOSEBRACKET,')',1,2603)
-LexToken(SEMICOLON,';',1,2604)
-LexToken(VAR,'string',1,2605)
-LexToken(OPENBRACKET,'(',1,2611)
-LexToken(VAR,'K2',1,2612)
-LexToken(CLOSEBRACKET,')',1,2614)
-LexToken(SEMICOLON,';',1,2615)
-LexToken(VAR,'string',1,2616)
-LexToken(OPENBRACKET,'(',1,2622)
-LexToken(VAR,'K5',1,2623)
-LexToken(CLOSEBRACKET,')',1,2625)
-LexToken(SEMICOLON,';',1,2626)
-LexToken(VAR,'string',1,2627)
-LexToken(OPENBRACKET,'(',1,2633)
-LexToken(VAR,'dW',1,2634)
-LexToken(CLOSEBRACKET,')',1,2636)
-LexToken(SEMICOLON,';',1,2637)
-LexToken(VAR,'string',1,2638)
-LexToken(OPENBRACKET,'(',1,2644)
-LexToken(VAR,'dL',1,2645)
-LexToken(CLOSEBRACKET,')',1,2647)
-LexToken(SEMICOLON,';',1,2648)
-LexToken(VAR,'string',1,2649)
-LexToken(OPENBRACKET,'(',1,2655)
-LexToken(VAR,'RDS',1,2656)
-LexToken(CLOSEBRACKET,')',1,2659)
-LexToken(CLOSESQBRACKET,']',1,2660)
-LexToken(EOL,'\n',1,2661)
-LexToken(VAR,'gr_i',1,2670)
-LexToken(ASSIGNMENT,'=',1,2674)
-LexToken(OPENSQBRACKET,'[',1,2675)
-LexToken(CLOSESQBRACKET,']',1,2676)
-LexToken(EOL,'\n',1,2677)
-LexToken(EOL,'\n',1,2678)
-LexToken(VAR,'x',1,2687)
-LexToken(ASSIGNMENT,'=',1,2688)
-LexToken(VAR,'standard_define',1,2689)
-LexToken(OPENBRACKET,'(',1,2704)
-LexToken(OPENSQBRACKET,'[',1,2705)
-LexToken(NUMBER,'2',1,2706)
-LexToken(NUMBER,'2',1,2708)
-LexToken(CLOSESQBRACKET,']',1,2709)
-LexToken(COMMA,',',1,2710)
-LexToken(VAR,'model',1,2711)
-LexToken(COMMA,',',1,2716)
-LexToken(VAR,'exprs',1,2717)
-LexToken(COMMA,',',1,2722)
-LexToken(VAR,'gr_i',1,2723)
-LexToken(CLOSEBRACKET,')',1,2727)
-LexToken(EOL,'\n',1,2728)
-LexToken(VAR,'x',1,2737)
-LexToken(DOT,'.',1,2738)
-LexToken(VAR,'graphics',1,2739)
-LexToken(DOT,'.',1,2747)
-LexToken(VAR,'in_implicit',1,2748)
-LexToken(ASSIGNMENT,'=',1,2759)
-LexToken(OPENSQBRACKET,'[',1,2760)
-LexToken(DQSTRING,'"I"',1,2763)
-LexToken(CLOSESQBRACKET,']',1,2764)
-LexToken(EOL,'\n',1,2765)
-LexToken(VAR,'x',1,2774)
-LexToken(DOT,'.',1,2775)
-LexToken(VAR,'graphics',1,2776)
-LexToken(DOT,'.',1,2784)
-LexToken(VAR,'out_implicit',1,2785)
-LexToken(ASSIGNMENT,'=',1,2797)
-LexToken(OPENSQBRACKET,'[',1,2798)
-LexToken(DQSTRING,'"I"',1,2801)
-LexToken(SEMICOLON,';',1,2802)
-LexToken(DQSTRING,'"I"',1,2805)
-LexToken(SEMICOLON,';',1,2806)
-LexToken(DQSTRING,'"I"',1,2809)
-LexToken(CLOSESQBRACKET,']',1,2810)
-LexToken(EOL,'\n',1,2811)
-LexToken(END,'end',1,2816)
-LexToken(EOL,'\n',1,2819)
-LexToken(ENDFUNCTION,'endfunction',1,2820)
-LexToken(EOL,'\n',1,2831)
-LexToken(EOL,'\n',1,2832)
-LexToken(EOL,'\n',1,2833)
+/* autogenerated from "macros/Electrical/PMOS.sci" */
+function PMOS() {
+PMOS.prototype.get = function PMOS() {
+}
+PMOS.prototype.set = function PMOS() {
+x=arg1;
+graphics=arg1.graphics;
+exprs=graphics.exprs;
+model=arg1.model;
+while (true) {
+[ok,W,L,Beta,Vt,K2,K5,dW,dL,RDS,exprs]=scicos_getvalue("Set PMOS Transistor parameters",["Width [m]","Length [m]","Transconductance parameter [A/(V*V)]","Zero bias threshold voltage [V]","Bulk threshold parameter","Reduction of pinch-off region","Narrowing of channel [m]","Shortening of channel [m]","Drain-Source-Resistance [Ohm]"],list("vec",-1,"vec",-1,"vec",-1,"vec",-1,"vec",-1,"vec",-1,"vec",-1,"vec",-1,"vec",-1),exprs);
+if (!ok) {
+break
+}
+model.equations.parameters[2]=list(W,L,Beta,Vt,K2,K5,dW,dL,RDS);
+graphics.exprs=exprs;
+x.graphics=graphics;
+x.model=model;
+break
+}
+}
+PMOS.prototype.define = function PMOS() {
+model=scicos_model();
+W=50.0e-6;
+L=6.0e-6;
+Beta=0.0105e-3;
+Vt=-1;
+K2=0.41;
+K5=0.839;
+dW=-2.5e-6;
+dL=-2.1e-6;
+RDS=1.e+7;
+model.sim="PMOS";
+model.blocktype="c";
+model.dep_ut=[true,None];
+mo=modelica();
+mo.model="PMOS";
+mo.outputs=["D","B","S"];
+mo.inputs="G";
+mo.parameters=list(["W","L","Beta","Vt","K2","K5","dW","dL","RDS"],[W,L,Beta,Vt,K2,K5,dW,dL,RDS]);
+model.equations=mo;
+model.in=ones(size(mo.inputs,"*"),1);
+model.out=ones(size(mo.outputs,"*"),1);
+exprs=[string(W),string(L),string(Beta),string(Vt),string(K2),string(K5),string(dW),string(dL),string(RDS)];
+gr_i=[];
+x=standard_define([2,2],model,exprs,gr_i);
+x.graphics.in_implicit=["I"];
+x.graphics.out_implicit=["I","I","I"];
+}
+PMOS.prototype.details = function PMOS() {
+}
+}
diff --git a/js/Electrical/PNP.js b/js/Electrical/PNP.js
index 258ed58d..f5bab144 100644
--- a/js/Electrical/PNP.js
+++ b/js/Electrical/PNP.js
@@ -1,841 +1,3 @@
-LexToken(EOL,'\n',1,10)
-LexToken(EOL,'\n',1,13)
-LexToken(EOL,'\n',1,73)
-LexToken(EOL,'\n',1,76)
-LexToken(EOL,'\n',1,148)
-LexToken(EOL,'\n',1,220)
-LexToken(EOL,'\n',1,289)
-LexToken(EOL,'\n',1,328)
-LexToken(EOL,'\n',1,331)
-LexToken(EOL,'\n',1,398)
-LexToken(EOL,'\n',1,464)
-LexToken(EOL,'\n',1,529)
-LexToken(EOL,'\n',1,577)
-LexToken(EOL,'\n',1,580)
-LexToken(EOL,'\n',1,649)
-LexToken(EOL,'\n',1,712)
-LexToken(EOL,'\n',1,794)
-LexToken(EOL,'\n',1,797)
-LexToken(EOL,'\n',1,828)
-LexToken(EOL,'\n',1,831)
-LexToken(EOL,'\n',1,832)
-LexToken(FUNCTION,'function',1,833)
-LexToken(OPENSQBRACKET,'[',1,842)
-LexToken(VAR,'x',1,843)
-LexToken(COMMA,',',1,844)
-LexToken(VAR,'y',1,845)
-LexToken(COMMA,',',1,846)
-LexToken(VAR,'typ',1,847)
-LexToken(CLOSESQBRACKET,']',1,850)
-LexToken(ASSIGNMENT,'=',1,851)
-LexToken(VAR,'PNP',1,852)
-LexToken(OPENBRACKET,'(',1,855)
-LexToken(VAR,'job',1,856)
-LexToken(COMMA,',',1,859)
-LexToken(VAR,'arg1',1,860)
-LexToken(COMMA,',',1,864)
-LexToken(VAR,'arg2',1,865)
-LexToken(CLOSEBRACKET,')',1,869)
-LexToken(EOL,'\n',1,870)
-LexToken(EOL,'\n',1,947)
-LexToken(EOL,'\n',1,998)
-LexToken(VAR,'x',1,1003)
-LexToken(ASSIGNMENT,'=',1,1004)
-LexToken(OPENSQBRACKET,'[',1,1005)
-LexToken(CLOSESQBRACKET,']',1,1006)
-LexToken(EOL,'\n',1,1007)
-LexToken(VAR,'y',1,1013)
-LexToken(ASSIGNMENT,'=',1,1014)
-LexToken(OPENSQBRACKET,'[',1,1015)
-LexToken(CLOSESQBRACKET,']',1,1016)
-LexToken(EOL,'\n',1,1017)
-LexToken(VAR,'typ',1,1023)
-LexToken(ASSIGNMENT,'=',1,1026)
-LexToken(OPENSQBRACKET,'[',1,1027)
-LexToken(CLOSESQBRACKET,']',1,1028)
-LexToken(EOL,'\n',1,1029)
-LexToken(SELECT,'select',1,1035)
-LexToken(VAR,'job',1,1042)
-LexToken(EOL,'\n',1,1045)
-LexToken(CASE,'case',1,1050)
-LexToken(DQSTRING,'"set"',1,1059)
-LexToken(THEN,'then',1,1061)
-LexToken(EOL,'\n',1,1065)
-LexToken(VAR,'x',1,1074)
-LexToken(ASSIGNMENT,'=',1,1075)
-LexToken(VAR,'arg1',1,1076)
-LexToken(EOL,'\n',1,1080)
-LexToken(VAR,'graphics',1,1090)
-LexToken(ASSIGNMENT,'=',1,1098)
-LexToken(VAR,'arg1',1,1099)
-LexToken(DOT,'.',1,1103)
-LexToken(VAR,'graphics',1,1104)
-LexToken(EOL,'\n',1,1112)
-LexToken(VAR,'exprs',1,1122)
-LexToken(ASSIGNMENT,'=',1,1127)
-LexToken(VAR,'graphics',1,1128)
-LexToken(DOT,'.',1,1136)
-LexToken(VAR,'exprs',1,1137)
-LexToken(EOL,'\n',1,1142)
-LexToken(VAR,'model',1,1151)
-LexToken(ASSIGNMENT,'=',1,1156)
-LexToken(VAR,'arg1',1,1157)
-LexToken(DOT,'.',1,1161)
-LexToken(VAR,'model',1,1162)
-LexToken(EOL,'\n',1,1167)
-LexToken(VAR,'x',1,1177)
-LexToken(ASSIGNMENT,'=',1,1178)
-LexToken(VAR,'arg1',1,1179)
-LexToken(EOL,'\n',1,1183)
-LexToken(VAR,'exprs',1,1192)
-LexToken(ASSIGNMENT,'=',1,1197)
-LexToken(VAR,'x',1,1198)
-LexToken(DOT,'.',1,1199)
-LexToken(VAR,'graphics',1,1200)
-LexToken(DOT,'.',1,1208)
-LexToken(VAR,'exprs',1,1209)
-LexToken(EOL,'\n',1,1214)
-LexToken(WHILE,'while',1,1223)
-LexToken(PREVAR_BOOLEAN,'%t',1,1229)
-LexToken(DO,'do',1,1232)
-LexToken(EOL,'\n',1,1234)
-LexToken(OPENSQBRACKET,'[',1,1247)
-LexToken(VAR,'ok',1,1248)
-LexToken(COMMA,',',1,1250)
-LexToken(VAR,'Bf',1,1251)
-LexToken(COMMA,',',1,1253)
-LexToken(VAR,'Br',1,1254)
-LexToken(COMMA,',',1,1256)
-LexToken(VAR,'Is',1,1257)
-LexToken(COMMA,',',1,1259)
-LexToken(VAR,'Vak',1,1260)
-LexToken(COMMA,',',1,1263)
-LexToken(VAR,'Tauf',1,1264)
-LexToken(COMMA,',',1,1268)
-LexToken(VAR,'Taur',1,1269)
-LexToken(COMMA,',',1,1273)
-LexToken(VAR,'Ccs',1,1274)
-LexToken(COMMA,',',1,1277)
-LexToken(VAR,'Cje',1,1278)
-LexToken(COMMA,',',1,1281)
-LexToken(VAR,'Cjc',1,1282)
-LexToken(COMMA,',',1,1285)
-LexToken(VAR,'Phie',1,1286)
-LexToken(COMMA,',',1,1290)
-LexToken(VAR,'Me',1,1291)
-LexToken(COMMA,',',1,1293)
-LexToken(VAR,'Phic',1,1294)
-LexToken(COMMA,',',1,1298)
-LexToken(VAR,'Mc',1,1299)
-LexToken(COMMA,',',1,1301)
-LexToken(VAR,'Gbc',1,1302)
-LexToken(COMMA,',',1,1305)
-LexToken(VAR,'Gbe',1,1306)
-LexToken(COMMA,',',1,1309)
-LexToken(VAR,'Vt',1,1310)
-LexToken(COMMA,',',1,1312)
-LexToken(VAR,'EMinMax',1,1313)
-LexToken(COMMA,',',1,1320)
-LexToken(VAR,'exprs',1,1321)
-LexToken(CLOSESQBRACKET,']',1,1326)
-LexToken(ASSIGNMENT,'=',1,1327)
-LexToken(SCICOS_GETVALUE,'scicos_getvalue',1,1328)
-LexToken(OPENBRACKET,'(',1,1343)
-LexToken(OPENSQBRACKET,'[',1,1344)
-LexToken(DQSTRING,'"Set PNP block parameters:"',1,1371)
-LexToken(SEMICOLON,';',1,1372)
-LexToken(DQSTRING,'""',1,1374)
-LexToken(SEMICOLON,';',1,1375)
-LexToken(CLOSESQBRACKET,']',1,1376)
-LexToken(COMMA,',',1,1377)
-LexToken(OPENSQBRACKET,'[',1,1378)
-LexToken(DQSTRING,'"Bf : Forward beta"',1,1398)
-LexToken(SEMICOLON,';',1,1399)
-LexToken(DQSTRING,'"Br : Reverse beta"',1,1419)
-LexToken(SEMICOLON,';',1,1420)
-LexToken(DQSTRING,'"Is : Transport saturation current"',1,1456)
-LexToken(SEMICOLON,';',1,1457)
-LexToken(DQSTRING,'"Vak : Early voltage (inverse), 1/Volt"',1,1496)
-LexToken(SEMICOLON,';',1,1497)
-LexToken(DQSTRING,'"Tauf: Ideal forward transit time"',1,1531)
-LexToken(SEMICOLON,';',1,1532)
-LexToken(DQSTRING,'"Taur: Ideal reverse transit time"',1,1566)
-LexToken(SEMICOLON,';',1,1567)
-LexToken(DQSTRING,'"Ccs : Collector-substrat(ground) cap."',1,1606)
-LexToken(SEMICOLON,';',1,1607)
-LexToken(DQSTRING,'"Cje : Base-emitter zero bias depletion cap."',1,1652)
-LexToken(SEMICOLON,';',1,1653)
-LexToken(DQSTRING,'"Cjc : Base-coll. zero bias depletion cap."',1,1696)
-LexToken(SEMICOLON,';',1,1697)
-LexToken(DQSTRING,'"Phie: Base-emitter diffusion voltage"',1,1735)
-LexToken(SEMICOLON,';',1,1736)
-LexToken(DQSTRING,'"Me : Base-emitter gradation exponent"',1,1775)
-LexToken(SEMICOLON,';',1,1776)
-LexToken(DQSTRING,'"Phic: Base-collector diffusion voltage"',1,1816)
-LexToken(SEMICOLON,';',1,1817)
-LexToken(DQSTRING,'"Mc : Base-collector gradation exponent"',1,1858)
-LexToken(SEMICOLON,';',1,1859)
-LexToken(DQSTRING,'"Gbc : Base-collector conductance"',1,1893)
-LexToken(SEMICOLON,';',1,1894)
-LexToken(DQSTRING,'"Gbe : Base-emitter conductance"',1,1926)
-LexToken(SEMICOLON,';',1,1927)
-LexToken(DQSTRING,'"Vt : Voltage equivalent of temperature"',1,1968)
-LexToken(SEMICOLON,';',1,1969)
-LexToken(DQSTRING,'"EMinMax: if x > EMinMax, the exp(x) function is linearized"',1,2029)
-LexToken(CLOSESQBRACKET,']',1,2030)
-LexToken(COMMA,',',1,2031)
-LexToken(VAR,'list',1,2032)
-LexToken(OPENBRACKET,'(',1,2036)
-LexToken(DQSTRING,'"vec"',1,2041)
-LexToken(COMMA,',',1,2042)
-LexToken(NUMBER,'1',1,2043)
-LexToken(COMMA,',',1,2044)
-LexToken(DQSTRING,'"vec"',1,2049)
-LexToken(COMMA,',',1,2050)
-LexToken(NUMBER,'1',1,2051)
-LexToken(COMMA,',',1,2052)
-LexToken(DQSTRING,'"vec"',1,2057)
-LexToken(COMMA,',',1,2058)
-LexToken(NUMBER,'1',1,2059)
-LexToken(COMMA,',',1,2060)
-LexToken(DQSTRING,'"vec"',1,2065)
-LexToken(COMMA,',',1,2066)
-LexToken(NUMBER,'1',1,2067)
-LexToken(COMMA,',',1,2068)
-LexToken(DQSTRING,'"vec"',1,2073)
-LexToken(COMMA,',',1,2074)
-LexToken(NUMBER,'1',1,2075)
-LexToken(COMMA,',',1,2076)
-LexToken(DQSTRING,'"vec"',1,2081)
-LexToken(COMMA,',',1,2082)
-LexToken(NUMBER,'1',1,2083)
-LexToken(COMMA,',',1,2084)
-LexToken(DQSTRING,'"vec"',1,2089)
-LexToken(COMMA,',',1,2090)
-LexToken(NUMBER,'1',1,2091)
-LexToken(COMMA,',',1,2092)
-LexToken(DQSTRING,'"vec"',1,2097)
-LexToken(COMMA,',',1,2098)
-LexToken(NUMBER,'1',1,2099)
-LexToken(COMMA,',',1,2100)
-LexToken(DQSTRING,'"vec"',1,2105)
-LexToken(COMMA,',',1,2106)
-LexToken(NUMBER,'1',1,2107)
-LexToken(COMMA,',',1,2108)
-LexToken(DQSTRING,'"vec"',1,2113)
-LexToken(COMMA,',',1,2114)
-LexToken(NUMBER,'1',1,2115)
-LexToken(COMMA,',',1,2116)
-LexToken(DQSTRING,'"vec"',1,2121)
-LexToken(COMMA,',',1,2122)
-LexToken(NUMBER,'1',1,2123)
-LexToken(COMMA,',',1,2124)
-LexToken(DQSTRING,'"vec"',1,2129)
-LexToken(COMMA,',',1,2130)
-LexToken(NUMBER,'1',1,2131)
-LexToken(COMMA,',',1,2132)
-LexToken(DQSTRING,'"vec"',1,2137)
-LexToken(COMMA,',',1,2138)
-LexToken(NUMBER,'1',1,2139)
-LexToken(COMMA,',',1,2140)
-LexToken(DQSTRING,'"vec"',1,2145)
-LexToken(COMMA,',',1,2146)
-LexToken(NUMBER,'1',1,2147)
-LexToken(COMMA,',',1,2148)
-LexToken(DQSTRING,'"vec"',1,2153)
-LexToken(COMMA,',',1,2154)
-LexToken(NUMBER,'1',1,2155)
-LexToken(COMMA,',',1,2156)
-LexToken(DQSTRING,'"vec"',1,2161)
-LexToken(COMMA,',',1,2162)
-LexToken(NUMBER,'1',1,2163)
-LexToken(COMMA,',',1,2164)
-LexToken(DQSTRING,'"vec"',1,2169)
-LexToken(COMMA,',',1,2170)
-LexToken(NUMBER,'1',1,2171)
-LexToken(CLOSEBRACKET,')',1,2172)
-LexToken(COMMA,',',1,2173)
-LexToken(VAR,'exprs',1,2174)
-LexToken(CLOSEBRACKET,')',1,2179)
-LexToken(EOL,'\n',1,2180)
-LexToken(IF,'if',1,2193)
-LexToken(NOT,'~',1,2196)
-LexToken(VAR,'ok',1,2197)
-LexToken(THEN,'then',1,2200)
-LexToken(EOL,'\n',1,2204)
-LexToken(BREAK,'break',1,2221)
-LexToken(EOL,'\n',1,2226)
-LexToken(END,'end',1,2240)
-LexToken(EOL,'\n',1,2243)
-LexToken(VAR,'x',1,2256)
-LexToken(DOT,'.',1,2257)
-LexToken(VAR,'model',1,2258)
-LexToken(DOT,'.',1,2263)
-LexToken(VAR,'equations',1,2264)
-LexToken(DOT,'.',1,2273)
-LexToken(VAR,'parameters',1,2274)
-LexToken(OPENBRACKET,'(',1,2284)
-LexToken(NUMBER,'2',1,2285)
-LexToken(CLOSEBRACKET,')',1,2286)
-LexToken(ASSIGNMENT,'=',1,2287)
-LexToken(VAR,'list',1,2288)
-LexToken(OPENBRACKET,'(',1,2292)
-LexToken(VAR,'Bf',1,2293)
-LexToken(COMMA,',',1,2295)
-LexToken(VAR,'Br',1,2296)
-LexToken(COMMA,',',1,2298)
-LexToken(VAR,'Is',1,2299)
-LexToken(COMMA,',',1,2301)
-LexToken(VAR,'Vak',1,2302)
-LexToken(COMMA,',',1,2305)
-LexToken(VAR,'Tauf',1,2306)
-LexToken(COMMA,',',1,2310)
-LexToken(VAR,'Taur',1,2311)
-LexToken(COMMA,',',1,2315)
-LexToken(VAR,'Ccs',1,2316)
-LexToken(COMMA,',',1,2319)
-LexToken(VAR,'Cje',1,2320)
-LexToken(COMMA,',',1,2323)
-LexToken(VAR,'Cjc',1,2324)
-LexToken(COMMA,',',1,2327)
-LexToken(VAR,'Phie',1,2328)
-LexToken(COMMA,',',1,2332)
-LexToken(VAR,'Me',1,2333)
-LexToken(COMMA,',',1,2335)
-LexToken(VAR,'Phic',1,2336)
-LexToken(COMMA,',',1,2340)
-LexToken(VAR,'Mc',1,2341)
-LexToken(COMMA,',',1,2343)
-LexToken(VAR,'Gbc',1,2344)
-LexToken(COMMA,',',1,2347)
-LexToken(VAR,'Gbe',1,2348)
-LexToken(COMMA,',',1,2351)
-LexToken(VAR,'Vt',1,2352)
-LexToken(COMMA,',',1,2354)
-LexToken(VAR,'EMinMax',1,2355)
-LexToken(CLOSEBRACKET,')',1,2362)
-LexToken(EOL,'\n',1,2363)
-LexToken(VAR,'x',1,2376)
-LexToken(DOT,'.',1,2377)
-LexToken(VAR,'graphics',1,2378)
-LexToken(DOT,'.',1,2386)
-LexToken(VAR,'exprs',1,2387)
-LexToken(ASSIGNMENT,'=',1,2392)
-LexToken(VAR,'exprs',1,2393)
-LexToken(EOL,'\n',1,2398)
-LexToken(BREAK,'break',1,2411)
-LexToken(EOL,'\n',1,2416)
-LexToken(END,'end',1,2425)
-LexToken(EOL,'\n',1,2428)
-LexToken(EOL,'\n',1,2429)
-LexToken(CASE,'case',1,2434)
-LexToken(DQSTRING,'"define"',1,2446)
-LexToken(THEN,'then',1,2448)
-LexToken(EOL,'\n',1,2452)
-LexToken(VAR,'ModelName',1,2461)
-LexToken(ASSIGNMENT,'=',1,2470)
-LexToken(DQSTRING,'"PNP"',1,2475)
-LexToken(EOL,'\n',1,2476)
-LexToken(VAR,'PrametersValue',1,2485)
-LexToken(ASSIGNMENT,'=',1,2499)
-LexToken(OPENSQBRACKET,'[',1,2500)
-LexToken(NUMBER,'50',1,2501)
-LexToken(SEMICOLON,';',1,2503)
-LexToken(NUMBER,'0.1',1,2504)
-LexToken(SEMICOLON,';',1,2507)
-LexToken(NUMBER,'0',1,2508)
-LexToken(SEMICOLON,';',1,2509)
-LexToken(NUMBER,'0.02',1,2510)
-LexToken(SEMICOLON,';',1,2514)
-LexToken(NUMBER,'1.200',1,2515)
-LexToken(VAR,'D',1,2520)
-LexToken(ADDITION,'-',1,2521)
-LexToken(NUMBER,'10',1,2522)
-LexToken(SEMICOLON,';',1,2524)
-LexToken(NUMBER,'5.000',1,2525)
-LexToken(VAR,'D',1,2530)
-LexToken(ADDITION,'-',1,2531)
-LexToken(NUMBER,'09',1,2532)
-LexToken(SEMICOLON,';',1,2534)
-LexToken(NUMBER,'1.000',1,2535)
-LexToken(VAR,'D',1,2540)
-LexToken(ADDITION,'-',1,2541)
-LexToken(NUMBER,'12',1,2542)
-LexToken(SEMICOLON,';',1,2544)
-LexToken(NUMBER,'4.000',1,2545)
-LexToken(VAR,'D',1,2550)
-LexToken(ADDITION,'-',1,2551)
-LexToken(NUMBER,'13',1,2552)
-LexToken(SEMICOLON,';',1,2554)
-LexToken(NUMBER,'5.000',1,2555)
-LexToken(VAR,'D',1,2560)
-LexToken(ADDITION,'-',1,2561)
-LexToken(NUMBER,'13',1,2562)
-LexToken(SEMICOLON,';',1,2564)
-LexToken(NUMBER,'0.8',1,2565)
-LexToken(SEMICOLON,';',1,2568)
-LexToken(NUMBER,'0.4',1,2569)
-LexToken(SEMICOLON,';',1,2572)
-LexToken(NUMBER,'0.8',1,2573)
-LexToken(SEMICOLON,';',1,2576)
-LexToken(NUMBER,'0.333',1,2577)
-LexToken(SEMICOLON,';',1,2582)
-LexToken(NUMBER,'1.000',1,2583)
-LexToken(VAR,'D',1,2588)
-LexToken(ADDITION,'-',1,2589)
-LexToken(NUMBER,'15',1,2590)
-LexToken(SEMICOLON,';',1,2592)
-LexToken(NUMBER,'1.000',1,2593)
-LexToken(VAR,'D',1,2598)
-LexToken(ADDITION,'-',1,2599)
-LexToken(NUMBER,'15',1,2600)
-LexToken(SEMICOLON,';',1,2602)
-LexToken(NUMBER,'0.02585',1,2603)
-LexToken(SEMICOLON,';',1,2610)
-LexToken(NUMBER,'40',1,2611)
-LexToken(CLOSESQBRACKET,']',1,2613)
-LexToken(EOL,'\n',1,2614)
-LexToken(VAR,'ParametersName',1,2623)
-LexToken(ASSIGNMENT,'=',1,2637)
-LexToken(OPENSQBRACKET,'[',1,2638)
-LexToken(DQSTRING,'"Bf"',1,2642)
-LexToken(SEMICOLON,';',1,2643)
-LexToken(DQSTRING,'"Br"',1,2647)
-LexToken(SEMICOLON,';',1,2648)
-LexToken(DQSTRING,'"Is"',1,2652)
-LexToken(SEMICOLON,';',1,2653)
-LexToken(DQSTRING,'"Vak"',1,2658)
-LexToken(SEMICOLON,';',1,2659)
-LexToken(DQSTRING,'"Tauf"',1,2665)
-LexToken(SEMICOLON,';',1,2666)
-LexToken(DQSTRING,'"Taur"',1,2672)
-LexToken(SEMICOLON,';',1,2673)
-LexToken(DQSTRING,'"Ccs"',1,2678)
-LexToken(SEMICOLON,';',1,2679)
-LexToken(DQSTRING,'"Cje"',1,2684)
-LexToken(SEMICOLON,';',1,2685)
-LexToken(DQSTRING,'"Cjc"',1,2690)
-LexToken(SEMICOLON,';',1,2691)
-LexToken(DQSTRING,'"Phie"',1,2697)
-LexToken(SEMICOLON,';',1,2698)
-LexToken(DQSTRING,'"Me"',1,2702)
-LexToken(SEMICOLON,';',1,2703)
-LexToken(DQSTRING,'"Phic"',1,2709)
-LexToken(SEMICOLON,';',1,2710)
-LexToken(DQSTRING,'"Mc"',1,2714)
-LexToken(SEMICOLON,';',1,2715)
-LexToken(DQSTRING,'"Gbc"',1,2720)
-LexToken(SEMICOLON,';',1,2721)
-LexToken(DQSTRING,'"Gbe"',1,2726)
-LexToken(SEMICOLON,';',1,2727)
-LexToken(DQSTRING,'"Vt"',1,2731)
-LexToken(SEMICOLON,';',1,2732)
-LexToken(DQSTRING,'"EMinMax"',1,2741)
-LexToken(CLOSESQBRACKET,']',1,2742)
-LexToken(EOL,'\n',1,2743)
-LexToken(VAR,'model',1,2752)
-LexToken(ASSIGNMENT,'=',1,2757)
-LexToken(SCICOS_MODEL,'scicos_model',1,2758)
-LexToken(OPENBRACKET,'(',1,2770)
-LexToken(CLOSEBRACKET,')',1,2771)
-LexToken(EOL,'\n',1,2772)
-LexToken(VAR,'Typein',1,2781)
-LexToken(ASSIGNMENT,'=',1,2787)
-LexToken(OPENSQBRACKET,'[',1,2788)
-LexToken(CLOSESQBRACKET,']',1,2789)
-LexToken(EOL,'\n',1,2790)
-LexToken(VAR,'Typeout',1,2800)
-LexToken(ASSIGNMENT,'=',1,2807)
-LexToken(OPENSQBRACKET,'[',1,2808)
-LexToken(CLOSESQBRACKET,']',1,2809)
-LexToken(EOL,'\n',1,2810)
-LexToken(VAR,'MI',1,2820)
-LexToken(ASSIGNMENT,'=',1,2822)
-LexToken(OPENSQBRACKET,'[',1,2823)
-LexToken(CLOSESQBRACKET,']',1,2824)
-LexToken(EOL,'\n',1,2825)
-LexToken(VAR,'MO',1,2835)
-LexToken(ASSIGNMENT,'=',1,2837)
-LexToken(OPENSQBRACKET,'[',1,2838)
-LexToken(CLOSESQBRACKET,']',1,2839)
-LexToken(EOL,'\n',1,2840)
-LexToken(VAR,'P',1,2849)
-LexToken(ASSIGNMENT,'=',1,2850)
-LexToken(OPENSQBRACKET,'[',1,2851)
-LexToken(NUMBER,'100',1,2852)
-LexToken(COMMA,',',1,2855)
-LexToken(NUMBER,'90',1,2856)
-LexToken(COMMA,',',1,2858)
-LexToken(ADDITION,'-',1,2859)
-LexToken(NUMBER,'2',1,2860)
-LexToken(COMMA,',',1,2861)
-LexToken(NUMBER,'0',1,2862)
-LexToken(SEMICOLON,';',1,2863)
-LexToken(NUMBER,'0',1,2864)
-LexToken(COMMA,',',1,2865)
-LexToken(NUMBER,'50',1,2866)
-LexToken(COMMA,',',1,2868)
-LexToken(NUMBER,'2',1,2869)
-LexToken(COMMA,',',1,2870)
-LexToken(NUMBER,'0',1,2871)
-LexToken(SEMICOLON,';',1,2872)
-LexToken(NUMBER,'100',1,2873)
-LexToken(COMMA,',',1,2876)
-LexToken(NUMBER,'10',1,2877)
-LexToken(COMMA,',',1,2879)
-LexToken(ADDITION,'-',1,2880)
-LexToken(NUMBER,'2',1,2881)
-LexToken(COMMA,',',1,2882)
-LexToken(NUMBER,'0',1,2883)
-LexToken(CLOSESQBRACKET,']',1,2884)
-LexToken(EOL,'\n',1,2885)
-LexToken(VAR,'PortName',1,2894)
-LexToken(ASSIGNMENT,'=',1,2902)
-LexToken(OPENSQBRACKET,'[',1,2903)
-LexToken(DQSTRING,'"C"',1,2906)
-LexToken(SEMICOLON,';',1,2907)
-LexToken(DQSTRING,'"B"',1,2910)
-LexToken(SEMICOLON,';',1,2911)
-LexToken(DQSTRING,'"E"',1,2914)
-LexToken(CLOSESQBRACKET,']',1,2915)
-LexToken(EOL,'\n',1,2916)
-LexToken(FOR,'for',1,2925)
-LexToken(VAR,'i',1,2929)
-LexToken(ASSIGNMENT,'=',1,2930)
-LexToken(NUMBER,'1',1,2931)
-LexToken(COLON,':',1,2932)
-LexToken(VAR,'size',1,2933)
-LexToken(OPENBRACKET,'(',1,2937)
-LexToken(VAR,'P',1,2938)
-LexToken(COMMA,',',1,2939)
-LexToken(DQSTRING,'"r"',1,2942)
-LexToken(CLOSEBRACKET,')',1,2943)
-LexToken(EOL,'\n',1,2944)
-LexToken(IF,'if',1,2957)
-LexToken(VAR,'P',1,2960)
-LexToken(OPENBRACKET,'(',1,2961)
-LexToken(VAR,'i',1,2962)
-LexToken(COMMA,',',1,2963)
-LexToken(NUMBER,'3',1,2964)
-LexToken(CLOSEBRACKET,')',1,2965)
-LexToken(COMPARISON,'==',1,2966)
-LexToken(NUMBER,'1',1,2968)
-LexToken(THEN,'then',1,2971)
-LexToken(EOL,'\n',1,2975)
-LexToken(VAR,'Typein',1,2992)
-LexToken(ASSIGNMENT,'=',1,2998)
-LexToken(OPENSQBRACKET,'[',1,3000)
-LexToken(VAR,'Typein',1,3001)
-LexToken(SEMICOLON,';',1,3007)
-LexToken(DQSTRING,'"E"',1,3011)
-LexToken(CLOSESQBRACKET,']',1,3012)
-LexToken(EOL,'\n',1,3013)
-LexToken(VAR,'MI',1,3031)
-LexToken(ASSIGNMENT,'=',1,3033)
-LexToken(OPENSQBRACKET,'[',1,3034)
-LexToken(VAR,'MI',1,3035)
-LexToken(SEMICOLON,';',1,3037)
-LexToken(VAR,'PortName',1,3038)
-LexToken(OPENBRACKET,'(',1,3046)
-LexToken(VAR,'i',1,3047)
-LexToken(CLOSEBRACKET,')',1,3048)
-LexToken(CLOSESQBRACKET,']',1,3049)
-LexToken(EOL,'\n',1,3050)
-LexToken(END,'end',1,3064)
-LexToken(EOL,'\n',1,3067)
-LexToken(IF,'if',1,3080)
-LexToken(VAR,'P',1,3083)
-LexToken(OPENBRACKET,'(',1,3084)
-LexToken(VAR,'i',1,3085)
-LexToken(COMMA,',',1,3086)
-LexToken(NUMBER,'3',1,3087)
-LexToken(CLOSEBRACKET,')',1,3088)
-LexToken(COMPARISON,'==',1,3089)
-LexToken(NUMBER,'2',1,3091)
-LexToken(THEN,'then',1,3094)
-LexToken(EOL,'\n',1,3098)
-LexToken(VAR,'Typein',1,3115)
-LexToken(ASSIGNMENT,'=',1,3121)
-LexToken(OPENSQBRACKET,'[',1,3123)
-LexToken(VAR,'Typein',1,3124)
-LexToken(SEMICOLON,';',1,3130)
-LexToken(DQSTRING,'"I"',1,3134)
-LexToken(CLOSESQBRACKET,']',1,3135)
-LexToken(EOL,'\n',1,3136)
-LexToken(VAR,'MI',1,3154)
-LexToken(ASSIGNMENT,'=',1,3156)
-LexToken(OPENSQBRACKET,'[',1,3157)
-LexToken(VAR,'MI',1,3158)
-LexToken(SEMICOLON,';',1,3160)
-LexToken(VAR,'PortName',1,3161)
-LexToken(OPENBRACKET,'(',1,3169)
-LexToken(VAR,'i',1,3170)
-LexToken(CLOSEBRACKET,')',1,3171)
-LexToken(CLOSESQBRACKET,']',1,3172)
-LexToken(EOL,'\n',1,3173)
-LexToken(END,'end',1,3187)
-LexToken(EOL,'\n',1,3190)
-LexToken(IF,'if',1,3203)
-LexToken(VAR,'P',1,3206)
-LexToken(OPENBRACKET,'(',1,3207)
-LexToken(VAR,'i',1,3208)
-LexToken(COMMA,',',1,3209)
-LexToken(NUMBER,'3',1,3210)
-LexToken(CLOSEBRACKET,')',1,3211)
-LexToken(COMPARISON,'==',1,3212)
-LexToken(ADDITION,'-',1,3214)
-LexToken(NUMBER,'1',1,3215)
-LexToken(THEN,'then',1,3217)
-LexToken(EOL,'\n',1,3221)
-LexToken(VAR,'Typeout',1,3238)
-LexToken(ASSIGNMENT,'=',1,3245)
-LexToken(OPENSQBRACKET,'[',1,3246)
-LexToken(VAR,'Typeout',1,3247)
-LexToken(SEMICOLON,';',1,3254)
-LexToken(DQSTRING,'"E"',1,3257)
-LexToken(CLOSESQBRACKET,']',1,3258)
-LexToken(EOL,'\n',1,3259)
-LexToken(VAR,'MO',1,3277)
-LexToken(ASSIGNMENT,'=',1,3279)
-LexToken(OPENSQBRACKET,'[',1,3280)
-LexToken(VAR,'MO',1,3281)
-LexToken(SEMICOLON,';',1,3283)
-LexToken(VAR,'PortName',1,3284)
-LexToken(OPENBRACKET,'(',1,3292)
-LexToken(VAR,'i',1,3293)
-LexToken(CLOSEBRACKET,')',1,3294)
-LexToken(CLOSESQBRACKET,']',1,3295)
-LexToken(EOL,'\n',1,3296)
-LexToken(END,'end',1,3310)
-LexToken(EOL,'\n',1,3313)
-LexToken(IF,'if',1,3326)
-LexToken(VAR,'P',1,3329)
-LexToken(OPENBRACKET,'(',1,3330)
-LexToken(VAR,'i',1,3331)
-LexToken(COMMA,',',1,3332)
-LexToken(NUMBER,'3',1,3333)
-LexToken(CLOSEBRACKET,')',1,3334)
-LexToken(COMPARISON,'==',1,3335)
-LexToken(ADDITION,'-',1,3337)
-LexToken(NUMBER,'2',1,3338)
-LexToken(THEN,'then',1,3340)
-LexToken(EOL,'\n',1,3344)
-LexToken(VAR,'Typeout',1,3361)
-LexToken(ASSIGNMENT,'=',1,3368)
-LexToken(OPENSQBRACKET,'[',1,3369)
-LexToken(VAR,'Typeout',1,3370)
-LexToken(SEMICOLON,';',1,3377)
-LexToken(DQSTRING,'"I"',1,3380)
-LexToken(CLOSESQBRACKET,']',1,3381)
-LexToken(EOL,'\n',1,3382)
-LexToken(VAR,'MO',1,3400)
-LexToken(ASSIGNMENT,'=',1,3402)
-LexToken(OPENSQBRACKET,'[',1,3403)
-LexToken(VAR,'MO',1,3404)
-LexToken(SEMICOLON,';',1,3406)
-LexToken(VAR,'PortName',1,3407)
-LexToken(OPENBRACKET,'(',1,3415)
-LexToken(VAR,'i',1,3416)
-LexToken(CLOSEBRACKET,')',1,3417)
-LexToken(CLOSESQBRACKET,']',1,3418)
-LexToken(EOL,'\n',1,3419)
-LexToken(END,'end',1,3433)
-LexToken(EOL,'\n',1,3436)
-LexToken(END,'end',1,3445)
-LexToken(EOL,'\n',1,3448)
-LexToken(VAR,'model',1,3457)
-LexToken(ASSIGNMENT,'=',1,3462)
-LexToken(SCICOS_MODEL,'scicos_model',1,3463)
-LexToken(OPENBRACKET,'(',1,3475)
-LexToken(CLOSEBRACKET,')',1,3476)
-LexToken(EOL,'\n',1,3477)
-LexToken(VAR,'mo',1,3486)
-LexToken(ASSIGNMENT,'=',1,3488)
-LexToken(VAR,'modelica',1,3489)
-LexToken(OPENBRACKET,'(',1,3497)
-LexToken(CLOSEBRACKET,')',1,3498)
-LexToken(EOL,'\n',1,3499)
-LexToken(VAR,'model',1,3508)
-LexToken(DOT,'.',1,3513)
-LexToken(VAR,'sim',1,3514)
-LexToken(ASSIGNMENT,'=',1,3517)
-LexToken(VAR,'ModelName',1,3518)
-LexToken(EOL,'\n',1,3527)
-LexToken(VAR,'mo',1,3537)
-LexToken(DOT,'.',1,3539)
-LexToken(VAR,'inputs',1,3540)
-LexToken(ASSIGNMENT,'=',1,3546)
-LexToken(VAR,'MI',1,3547)
-LexToken(EOL,'\n',1,3549)
-LexToken(VAR,'mo',1,3559)
-LexToken(DOT,'.',1,3561)
-LexToken(VAR,'outputs',1,3562)
-LexToken(ASSIGNMENT,'=',1,3569)
-LexToken(VAR,'MO',1,3570)
-LexToken(EOL,'\n',1,3572)
-LexToken(VAR,'model',1,3582)
-LexToken(DOT,'.',1,3587)
-LexToken(VAR,'rpar',1,3588)
-LexToken(ASSIGNMENT,'=',1,3592)
-LexToken(VAR,'PrametersValue',1,3593)
-LexToken(EOL,'\n',1,3607)
-LexToken(VAR,'mo',1,3617)
-LexToken(DOT,'.',1,3619)
-LexToken(VAR,'parameters',1,3620)
-LexToken(ASSIGNMENT,'=',1,3630)
-LexToken(VAR,'list',1,3631)
-LexToken(OPENBRACKET,'(',1,3635)
-LexToken(VAR,'ParametersName',1,3636)
-LexToken(COMMA,',',1,3650)
-LexToken(VAR,'PrametersValue',1,3651)
-LexToken(COMMA,',',1,3665)
-LexToken(VAR,'zeros',1,3666)
-LexToken(OPENBRACKET,'(',1,3671)
-LexToken(VAR,'ParametersName',1,3672)
-LexToken(CLOSEBRACKET,')',1,3686)
-LexToken(CLOSEBRACKET,')',1,3687)
-LexToken(EOL,'\n',1,3688)
-LexToken(VAR,'exprs',1,3698)
-LexToken(ASSIGNMENT,'=',1,3703)
-LexToken(OPENSQBRACKET,'[',1,3704)
-LexToken(DQSTRING,'"50"',1,3708)
-LexToken(SEMICOLON,';',1,3709)
-LexToken(DQSTRING,'"0.1"',1,3714)
-LexToken(SEMICOLON,';',1,3715)
-LexToken(DQSTRING,'"1.e-16"',1,3723)
-LexToken(SEMICOLON,';',1,3724)
-LexToken(DQSTRING,'"0.02"',1,3730)
-LexToken(SEMICOLON,';',1,3731)
-LexToken(DQSTRING,'"0.12e-9"',1,3740)
-LexToken(SEMICOLON,';',1,3741)
-LexToken(DQSTRING,'"5e-9"',1,3747)
-LexToken(SEMICOLON,';',1,3748)
-LexToken(DQSTRING,'"1e-12"',1,3755)
-LexToken(SEMICOLON,';',1,3756)
-LexToken(DQSTRING,'"0.4e-12"',1,3765)
-LexToken(SEMICOLON,';',1,3766)
-LexToken(DQSTRING,'"0.5e-12"',1,3775)
-LexToken(SEMICOLON,';',1,3776)
-LexToken(DQSTRING,'"0.8"',1,3781)
-LexToken(SEMICOLON,';',1,3782)
-LexToken(DQSTRING,'"0.4"',1,3787)
-LexToken(SEMICOLON,';',1,3788)
-LexToken(DQSTRING,'"0.8"',1,3793)
-LexToken(SEMICOLON,';',1,3794)
-LexToken(DQSTRING,'"0.333"',1,3801)
-LexToken(SEMICOLON,';',1,3802)
-LexToken(DQSTRING,'"1e-15"',1,3809)
-LexToken(SEMICOLON,';',1,3810)
-LexToken(DQSTRING,'"1e-15"',1,3817)
-LexToken(SEMICOLON,';',1,3818)
-LexToken(DQSTRING,'"0.02585"',1,3827)
-LexToken(SEMICOLON,';',1,3828)
-LexToken(DQSTRING,'"40"',1,3832)
-LexToken(CLOSESQBRACKET,']',1,3833)
-LexToken(EOL,'\n',1,3834)
-LexToken(VAR,'gr_i',1,3843)
-LexToken(ASSIGNMENT,'=',1,3847)
-LexToken(OPENSQBRACKET,'[',1,3848)
-LexToken(CLOSESQBRACKET,']',1,3849)
-LexToken(EOL,'\n',1,3850)
-LexToken(VAR,'model',1,3859)
-LexToken(DOT,'.',1,3864)
-LexToken(VAR,'blocktype',1,3865)
-LexToken(ASSIGNMENT,'=',1,3874)
-LexToken(DQSTRING,'"c"',1,3877)
-LexToken(EOL,'\n',1,3878)
-LexToken(VAR,'model',1,3887)
-LexToken(DOT,'.',1,3892)
-LexToken(VAR,'dep_ut',1,3893)
-LexToken(ASSIGNMENT,'=',1,3899)
-LexToken(OPENSQBRACKET,'[',1,3900)
-LexToken(PREVAR_BOOLEAN,'%f',1,3901)
-LexToken(PREVAR_BOOLEAN,'%t',1,3904)
-LexToken(CLOSESQBRACKET,']',1,3906)
-LexToken(EOL,'\n',1,3907)
-LexToken(VAR,'mo',1,3916)
-LexToken(DOT,'.',1,3918)
-LexToken(VAR,'model',1,3919)
-LexToken(ASSIGNMENT,'=',1,3924)
-LexToken(VAR,'ModelName',1,3925)
-LexToken(EOL,'\n',1,3934)
-LexToken(VAR,'model',1,3943)
-LexToken(DOT,'.',1,3948)
-LexToken(VAR,'equations',1,3949)
-LexToken(ASSIGNMENT,'=',1,3958)
-LexToken(VAR,'mo',1,3959)
-LexToken(EOL,'\n',1,3961)
-LexToken(VAR,'model',1,3970)
-LexToken(DOT,'.',1,3975)
-LexToken(VAR,'in',1,3976)
-LexToken(ASSIGNMENT,'=',1,3978)
-LexToken(VAR,'ones',1,3979)
-LexToken(OPENBRACKET,'(',1,3983)
-LexToken(VAR,'size',1,3984)
-LexToken(OPENBRACKET,'(',1,3988)
-LexToken(VAR,'MI',1,3989)
-LexToken(COMMA,',',1,3991)
-LexToken(DQSTRING,'"*"',1,3994)
-LexToken(CLOSEBRACKET,')',1,3995)
-LexToken(COMMA,',',1,3996)
-LexToken(NUMBER,'1',1,3997)
-LexToken(CLOSEBRACKET,')',1,3998)
-LexToken(EOL,'\n',1,3999)
-LexToken(VAR,'model',1,4008)
-LexToken(DOT,'.',1,4013)
-LexToken(VAR,'out',1,4014)
-LexToken(ASSIGNMENT,'=',1,4017)
-LexToken(VAR,'ones',1,4018)
-LexToken(OPENBRACKET,'(',1,4022)
-LexToken(VAR,'size',1,4023)
-LexToken(OPENBRACKET,'(',1,4027)
-LexToken(VAR,'MO',1,4028)
-LexToken(COMMA,',',1,4030)
-LexToken(DQSTRING,'"*"',1,4033)
-LexToken(CLOSEBRACKET,')',1,4034)
-LexToken(COMMA,',',1,4035)
-LexToken(NUMBER,'1',1,4036)
-LexToken(CLOSEBRACKET,')',1,4037)
-LexToken(EOL,'\n',1,4038)
-LexToken(VAR,'x',1,4047)
-LexToken(ASSIGNMENT,'=',1,4048)
-LexToken(VAR,'standard_define',1,4049)
-LexToken(OPENBRACKET,'(',1,4064)
-LexToken(OPENSQBRACKET,'[',1,4065)
-LexToken(NUMBER,'2',1,4066)
-LexToken(COMMA,',',1,4067)
-LexToken(NUMBER,'2',1,4068)
-LexToken(CLOSESQBRACKET,']',1,4069)
-LexToken(COMMA,',',1,4070)
-LexToken(VAR,'model',1,4071)
-LexToken(COMMA,',',1,4076)
-LexToken(VAR,'exprs',1,4077)
-LexToken(COMMA,',',1,4082)
-LexToken(VAR,'list',1,4083)
-LexToken(OPENBRACKET,'(',1,4087)
-LexToken(VAR,'gr_i',1,4088)
-LexToken(COMMA,',',1,4092)
-LexToken(NUMBER,'0',1,4093)
-LexToken(CLOSEBRACKET,')',1,4094)
-LexToken(CLOSEBRACKET,')',1,4095)
-LexToken(EOL,'\n',1,4096)
-LexToken(VAR,'x',1,4105)
-LexToken(DOT,'.',1,4106)
-LexToken(VAR,'graphics',1,4107)
-LexToken(DOT,'.',1,4115)
-LexToken(VAR,'in_implicit',1,4116)
-LexToken(ASSIGNMENT,'=',1,4127)
-LexToken(VAR,'Typein',1,4128)
-LexToken(EOL,'\n',1,4134)
-LexToken(VAR,'x',1,4144)
-LexToken(DOT,'.',1,4145)
-LexToken(VAR,'graphics',1,4146)
-LexToken(DOT,'.',1,4154)
-LexToken(VAR,'out_implicit',1,4155)
-LexToken(ASSIGNMENT,'=',1,4167)
-LexToken(VAR,'Typeout',1,4168)
-LexToken(EOL,'\n',1,4175)
-LexToken(END,'end',1,4181)
-LexToken(EOL,'\n',1,4184)
-LexToken(ENDFUNCTION,'endfunction',1,4185)
-LexToken(EOL,'\n',1,4196)
+Syntax error in input LexToken(ADDITION,'-',1,2521)
+/* autogenerated from "macros/Electrical/PNP.sci" */
+None
diff --git a/js/Electrical/PotentialSensor.js b/js/Electrical/PotentialSensor.js
index 69eba8ad..72c1d085 100644
--- a/js/Electrical/PotentialSensor.js
+++ b/js/Electrical/PotentialSensor.js
@@ -1,206 +1,28 @@
-LexToken(EOL,'\n',1,10)
-LexToken(EOL,'\n',1,13)
-LexToken(EOL,'\n',1,73)
-LexToken(EOL,'\n',1,76)
-LexToken(EOL,'\n',1,148)
-LexToken(EOL,'\n',1,220)
-LexToken(EOL,'\n',1,289)
-LexToken(EOL,'\n',1,328)
-LexToken(EOL,'\n',1,331)
-LexToken(EOL,'\n',1,398)
-LexToken(EOL,'\n',1,464)
-LexToken(EOL,'\n',1,529)
-LexToken(EOL,'\n',1,577)
-LexToken(EOL,'\n',1,580)
-LexToken(EOL,'\n',1,649)
-LexToken(EOL,'\n',1,712)
-LexToken(EOL,'\n',1,794)
-LexToken(EOL,'\n',1,797)
-LexToken(EOL,'\n',1,828)
-LexToken(EOL,'\n',1,831)
-LexToken(EOL,'\n',1,832)
-LexToken(FUNCTION,'function',1,833)
-LexToken(OPENSQBRACKET,'[',1,842)
-LexToken(VAR,'x',1,843)
-LexToken(COMMA,',',1,844)
-LexToken(VAR,'y',1,845)
-LexToken(COMMA,',',1,846)
-LexToken(VAR,'typ',1,847)
-LexToken(CLOSESQBRACKET,']',1,850)
-LexToken(ASSIGNMENT,'=',1,851)
-LexToken(VAR,'PotentialSensor',1,853)
-LexToken(OPENBRACKET,'(',1,868)
-LexToken(VAR,'job',1,869)
-LexToken(COMMA,',',1,872)
-LexToken(VAR,'arg1',1,873)
-LexToken(COMMA,',',1,877)
-LexToken(VAR,'arg2',1,878)
-LexToken(CLOSEBRACKET,')',1,882)
-LexToken(EOL,'\n',1,883)
-LexToken(EOL,'\n',1,918)
-LexToken(EOL,'\n',1,971)
-LexToken(EOL,'\n',1,1048)
-LexToken(EOL,'\n',1,1099)
-LexToken(VAR,'x',1,1104)
-LexToken(ASSIGNMENT,'=',1,1105)
-LexToken(OPENSQBRACKET,'[',1,1106)
-LexToken(CLOSESQBRACKET,']',1,1107)
-LexToken(EOL,'\n',1,1108)
-LexToken(VAR,'y',1,1114)
-LexToken(ASSIGNMENT,'=',1,1115)
-LexToken(OPENSQBRACKET,'[',1,1116)
-LexToken(CLOSESQBRACKET,']',1,1117)
-LexToken(EOL,'\n',1,1118)
-LexToken(VAR,'typ',1,1124)
-LexToken(ASSIGNMENT,'=',1,1127)
-LexToken(OPENSQBRACKET,'[',1,1128)
-LexToken(CLOSESQBRACKET,']',1,1129)
-LexToken(EOL,'\n',1,1130)
-LexToken(SELECT,'select',1,1136)
-LexToken(VAR,'job',1,1143)
-LexToken(EOL,'\n',1,1146)
-LexToken(CASE,'case',1,1151)
-LexToken(DQSTRING,'"set"',1,1160)
-LexToken(THEN,'then',1,1162)
-LexToken(EOL,'\n',1,1166)
-LexToken(VAR,'x',1,1175)
-LexToken(ASSIGNMENT,'=',1,1176)
-LexToken(VAR,'arg1',1,1177)
-LexToken(EOL,'\n',1,1181)
-LexToken(CASE,'case',1,1187)
-LexToken(DQSTRING,'"define"',1,1199)
-LexToken(THEN,'then',1,1201)
-LexToken(EOL,'\n',1,1205)
-LexToken(VAR,'model',1,1214)
-LexToken(ASSIGNMENT,'=',1,1219)
-LexToken(SCICOS_MODEL,'scicos_model',1,1220)
-LexToken(OPENBRACKET,'(',1,1232)
-LexToken(CLOSEBRACKET,')',1,1233)
-LexToken(EOL,'\n',1,1234)
-LexToken(VAR,'model',1,1243)
-LexToken(DOT,'.',1,1248)
-LexToken(VAR,'in',1,1249)
-LexToken(ASSIGNMENT,'=',1,1251)
-LexToken(OPENSQBRACKET,'[',1,1252)
-LexToken(NUMBER,'1',1,1253)
-LexToken(CLOSESQBRACKET,']',1,1254)
-LexToken(EOL,'\n',1,1255)
-LexToken(VAR,'model',1,1265)
-LexToken(DOT,'.',1,1270)
-LexToken(VAR,'out',1,1271)
-LexToken(ASSIGNMENT,'=',1,1274)
-LexToken(OPENSQBRACKET,'[',1,1275)
-LexToken(NUMBER,'1',1,1276)
-LexToken(CLOSESQBRACKET,']',1,1277)
-LexToken(EOL,'\n',1,1278)
-LexToken(VAR,'model',1,1288)
-LexToken(DOT,'.',1,1293)
-LexToken(VAR,'rpar',1,1294)
-LexToken(ASSIGNMENT,'=',1,1298)
-LexToken(OPENSQBRACKET,'[',1,1299)
-LexToken(CLOSESQBRACKET,']',1,1300)
-LexToken(EOL,'\n',1,1301)
-LexToken(VAR,'model',1,1310)
-LexToken(DOT,'.',1,1315)
-LexToken(VAR,'sim',1,1316)
-LexToken(ASSIGNMENT,'=',1,1319)
-LexToken(DQSTRING,'"PotentialSensor"',1,1336)
-LexToken(EOL,'\n',1,1337)
-LexToken(VAR,'model',1,1346)
-LexToken(DOT,'.',1,1351)
-LexToken(VAR,'blocktype',1,1352)
-LexToken(ASSIGNMENT,'=',1,1361)
-LexToken(DQSTRING,'"c"',1,1364)
-LexToken(EOL,'\n',1,1365)
-LexToken(VAR,'model',1,1374)
-LexToken(DOT,'.',1,1379)
-LexToken(VAR,'dep_ut',1,1380)
-LexToken(ASSIGNMENT,'=',1,1386)
-LexToken(OPENSQBRACKET,'[',1,1387)
-LexToken(PREVAR_BOOLEAN,'%t',1,1388)
-LexToken(PREVAR_BOOLEAN,'%f',1,1391)
-LexToken(CLOSESQBRACKET,']',1,1393)
-LexToken(EOL,'\n',1,1394)
-LexToken(VAR,'mo',1,1403)
-LexToken(ASSIGNMENT,'=',1,1405)
-LexToken(VAR,'modelica',1,1406)
-LexToken(OPENBRACKET,'(',1,1414)
-LexToken(CLOSEBRACKET,')',1,1415)
-LexToken(EOL,'\n',1,1416)
-LexToken(VAR,'mo',1,1425)
-LexToken(DOT,'.',1,1427)
-LexToken(VAR,'model',1,1428)
-LexToken(ASSIGNMENT,'=',1,1433)
-LexToken(DQSTRING,'"PotentialSensor"',1,1450)
-LexToken(EOL,'\n',1,1451)
-LexToken(VAR,'mo',1,1460)
-LexToken(DOT,'.',1,1462)
-LexToken(VAR,'inputs',1,1463)
-LexToken(ASSIGNMENT,'=',1,1469)
-LexToken(DQSTRING,'"p"',1,1472)
-LexToken(EOL,'\n',1,1473)
-LexToken(VAR,'mo',1,1483)
-LexToken(DOT,'.',1,1485)
-LexToken(VAR,'outputs',1,1486)
-LexToken(ASSIGNMENT,'=',1,1493)
-LexToken(OPENSQBRACKET,'[',1,1494)
-LexToken(DQSTRING,'"v"',1,1497)
-LexToken(CLOSESQBRACKET,']',1,1498)
-LexToken(EOL,'\n',1,1499)
-LexToken(VAR,'model',1,1508)
-LexToken(DOT,'.',1,1513)
-LexToken(VAR,'equations',1,1514)
-LexToken(ASSIGNMENT,'=',1,1523)
-LexToken(VAR,'mo',1,1524)
-LexToken(EOL,'\n',1,1526)
-LexToken(VAR,'gr_i',1,1535)
-LexToken(ASSIGNMENT,'=',1,1539)
-LexToken(OPENSQBRACKET,'[',1,1540)
-LexToken(CLOSESQBRACKET,']',1,1541)
-LexToken(EOL,'\n',1,1542)
-LexToken(EOL,'\n',1,1543)
-LexToken(VAR,'x',1,1552)
-LexToken(ASSIGNMENT,'=',1,1553)
-LexToken(VAR,'standard_define',1,1554)
-LexToken(OPENBRACKET,'(',1,1569)
-LexToken(OPENSQBRACKET,'[',1,1570)
-LexToken(NUMBER,'2',1,1571)
-LexToken(NUMBER,'2',1,1573)
-LexToken(CLOSESQBRACKET,']',1,1574)
-LexToken(COMMA,',',1,1575)
-LexToken(VAR,'model',1,1576)
-LexToken(COMMA,',',1,1581)
-LexToken(DQSTRING,'""',1,1583)
-LexToken(COMMA,',',1,1584)
-LexToken(VAR,'list',1,1585)
-LexToken(OPENBRACKET,'(',1,1589)
-LexToken(VAR,'gr_i',1,1590)
-LexToken(COMMA,',',1,1594)
-LexToken(NUMBER,'0',1,1595)
-LexToken(CLOSEBRACKET,')',1,1596)
-LexToken(CLOSEBRACKET,')',1,1597)
-LexToken(EOL,'\n',1,1598)
-LexToken(VAR,'x',1,1607)
-LexToken(DOT,'.',1,1608)
-LexToken(VAR,'graphics',1,1609)
-LexToken(DOT,'.',1,1617)
-LexToken(VAR,'in_implicit',1,1618)
-LexToken(ASSIGNMENT,'=',1,1629)
-LexToken(OPENSQBRACKET,'[',1,1630)
-LexToken(DQSTRING,'"I"',1,1633)
-LexToken(CLOSESQBRACKET,']',1,1634)
-LexToken(EOL,'\n',1,1635)
-LexToken(VAR,'x',1,1644)
-LexToken(DOT,'.',1,1645)
-LexToken(VAR,'graphics',1,1646)
-LexToken(DOT,'.',1,1654)
-LexToken(VAR,'out_implicit',1,1655)
-LexToken(ASSIGNMENT,'=',1,1667)
-LexToken(OPENSQBRACKET,'[',1,1668)
-LexToken(DQSTRING,'"E"',1,1671)
-LexToken(CLOSESQBRACKET,']',1,1672)
-LexToken(EOL,'\n',1,1673)
-LexToken(END,'end',1,1678)
-LexToken(EOL,'\n',1,1681)
-LexToken(ENDFUNCTION,'endfunction',1,1682)
-LexToken(EOL,'\n',1,1693)
+/* autogenerated from "macros/Electrical/PotentialSensor.sci" */
+function PotentialSensor() {
+PotentialSensor.prototype.get = function PotentialSensor() {
+}
+PotentialSensor.prototype.set = function PotentialSensor() {
+x=arg1;
+}
+PotentialSensor.prototype.define = function PotentialSensor() {
+model=scicos_model();
+model.in=[1];
+model.out=[1];
+model.rpar=[];
+model.sim="PotentialSensor";
+model.blocktype="c";
+model.dep_ut=[true,None];
+mo=modelica();
+mo.model="PotentialSensor";
+mo.inputs="p";
+mo.outputs=["v"];
+model.equations=mo;
+gr_i=[];
+x=standard_define([2,2],model,"",list(gr_i,0));
+x.graphics.in_implicit=["I"];
+x.graphics.out_implicit=["E"];
+}
+PotentialSensor.prototype.details = function PotentialSensor() {
+}
+}
diff --git a/js/Electrical/Resistor.js b/js/Electrical/Resistor.js
index b10daa85..f002cc18 100644
--- a/js/Electrical/Resistor.js
+++ b/js/Electrical/Resistor.js
@@ -1,344 +1,46 @@
-LexToken(EOL,'\n',1,10)
-LexToken(EOL,'\n',1,13)
-LexToken(EOL,'\n',1,73)
-LexToken(EOL,'\n',1,76)
-LexToken(EOL,'\n',1,148)
-LexToken(EOL,'\n',1,220)
-LexToken(EOL,'\n',1,289)
-LexToken(EOL,'\n',1,328)
-LexToken(EOL,'\n',1,331)
-LexToken(EOL,'\n',1,398)
-LexToken(EOL,'\n',1,464)
-LexToken(EOL,'\n',1,529)
-LexToken(EOL,'\n',1,577)
-LexToken(EOL,'\n',1,580)
-LexToken(EOL,'\n',1,649)
-LexToken(EOL,'\n',1,712)
-LexToken(EOL,'\n',1,794)
-LexToken(EOL,'\n',1,797)
-LexToken(EOL,'\n',1,828)
-LexToken(EOL,'\n',1,831)
-LexToken(EOL,'\n',1,832)
-LexToken(FUNCTION,'function',1,833)
-LexToken(OPENSQBRACKET,'[',1,842)
-LexToken(VAR,'x',1,843)
-LexToken(COMMA,',',1,844)
-LexToken(VAR,'y',1,845)
-LexToken(COMMA,',',1,846)
-LexToken(VAR,'typ',1,847)
-LexToken(CLOSESQBRACKET,']',1,850)
-LexToken(ASSIGNMENT,'=',1,851)
-LexToken(VAR,'Resistor',1,852)
-LexToken(OPENBRACKET,'(',1,860)
-LexToken(VAR,'job',1,861)
-LexToken(COMMA,',',1,864)
-LexToken(VAR,'arg1',1,865)
-LexToken(COMMA,',',1,869)
-LexToken(VAR,'arg2',1,870)
-LexToken(CLOSEBRACKET,')',1,874)
-LexToken(EOL,'\n',1,875)
-LexToken(EOL,'\n',1,910)
-LexToken(EOL,'\n',1,963)
-LexToken(EOL,'\n',1,1040)
-LexToken(EOL,'\n',1,1091)
-LexToken(VAR,'x',1,1096)
-LexToken(ASSIGNMENT,'=',1,1097)
-LexToken(OPENSQBRACKET,'[',1,1098)
-LexToken(CLOSESQBRACKET,']',1,1099)
-LexToken(EOL,'\n',1,1100)
-LexToken(VAR,'y',1,1106)
-LexToken(ASSIGNMENT,'=',1,1107)
-LexToken(OPENSQBRACKET,'[',1,1108)
-LexToken(CLOSESQBRACKET,']',1,1109)
-LexToken(EOL,'\n',1,1110)
-LexToken(VAR,'typ',1,1116)
-LexToken(ASSIGNMENT,'=',1,1119)
-LexToken(OPENSQBRACKET,'[',1,1120)
-LexToken(CLOSESQBRACKET,']',1,1121)
-LexToken(EOL,'\n',1,1122)
-LexToken(SELECT,'select',1,1128)
-LexToken(VAR,'job',1,1135)
-LexToken(EOL,'\n',1,1138)
-LexToken(CASE,'case',1,1143)
-LexToken(DQSTRING,'"set"',1,1152)
-LexToken(THEN,'then',1,1154)
-LexToken(EOL,'\n',1,1158)
-LexToken(VAR,'x',1,1167)
-LexToken(ASSIGNMENT,'=',1,1168)
-LexToken(VAR,'arg1',1,1169)
-LexToken(EOL,'\n',1,1173)
-LexToken(VAR,'graphics',1,1183)
-LexToken(ASSIGNMENT,'=',1,1191)
-LexToken(VAR,'arg1',1,1192)
-LexToken(DOT,'.',1,1196)
-LexToken(VAR,'graphics',1,1197)
-LexToken(EOL,'\n',1,1205)
-LexToken(VAR,'exprs',1,1215)
-LexToken(ASSIGNMENT,'=',1,1220)
-LexToken(VAR,'graphics',1,1221)
-LexToken(DOT,'.',1,1229)
-LexToken(VAR,'exprs',1,1230)
-LexToken(EOL,'\n',1,1235)
-LexToken(VAR,'model',1,1244)
-LexToken(ASSIGNMENT,'=',1,1249)
-LexToken(VAR,'arg1',1,1250)
-LexToken(DOT,'.',1,1254)
-LexToken(VAR,'model',1,1255)
-LexToken(EOL,'\n',1,1260)
-LexToken(WHILE,'while',1,1270)
-LexToken(PREVAR_BOOLEAN,'%t',1,1276)
-LexToken(DO,'do',1,1279)
-LexToken(EOL,'\n',1,1281)
-LexToken(OPENSQBRACKET,'[',1,1294)
-LexToken(VAR,'ok',1,1295)
-LexToken(COMMA,',',1,1297)
-LexToken(VAR,'R',1,1298)
-LexToken(COMMA,',',1,1299)
-LexToken(VAR,'exprs',1,1300)
-LexToken(CLOSESQBRACKET,']',1,1305)
-LexToken(ASSIGNMENT,'=',1,1306)
-LexToken(SCICOS_GETVALUE,'scicos_getvalue',1,1307)
-LexToken(OPENBRACKET,'(',1,1322)
-LexToken(DQSTRING,'"Set Resistor block parameter"',1,1352)
-LexToken(COMMA,',',1,1353)
-LexToken(DQSTRING,'"R (ohm)"',1,1377)
-LexToken(COMMA,',',1,1378)
-LexToken(VAR,'list',1,1379)
-LexToken(OPENBRACKET,'(',1,1383)
-LexToken(DQSTRING,'"vec"',1,1388)
-LexToken(COMMA,',',1,1389)
-LexToken(NUMBER,'1',1,1390)
-LexToken(CLOSEBRACKET,')',1,1391)
-LexToken(COMMA,',',1,1392)
-LexToken(VAR,'exprs',1,1393)
-LexToken(CLOSEBRACKET,')',1,1398)
-LexToken(EOL,'\n',1,1399)
-LexToken(IF,'if',1,1412)
-LexToken(NOT,'~',1,1415)
-LexToken(VAR,'ok',1,1416)
-LexToken(THEN,'then',1,1419)
-LexToken(EOL,'\n',1,1423)
-LexToken(BREAK,'break',1,1440)
-LexToken(EOL,'\n',1,1445)
-LexToken(END,'end',1,1459)
-LexToken(EOL,'\n',1,1462)
-LexToken(VAR,'model',1,1475)
-LexToken(DOT,'.',1,1480)
-LexToken(VAR,'rpar',1,1481)
-LexToken(ASSIGNMENT,'=',1,1485)
-LexToken(VAR,'R',1,1486)
-LexToken(EOL,'\n',1,1487)
-LexToken(VAR,'model',1,1500)
-LexToken(DOT,'.',1,1505)
-LexToken(VAR,'equations',1,1506)
-LexToken(DOT,'.',1,1515)
-LexToken(VAR,'parameters',1,1516)
-LexToken(OPENBRACKET,'(',1,1526)
-LexToken(NUMBER,'2',1,1527)
-LexToken(CLOSEBRACKET,')',1,1528)
-LexToken(ASSIGNMENT,'=',1,1529)
-LexToken(VAR,'list',1,1530)
-LexToken(OPENBRACKET,'(',1,1534)
-LexToken(VAR,'R',1,1535)
-LexToken(CLOSEBRACKET,')',1,1536)
-LexToken(EOL,'\n',1,1537)
-LexToken(VAR,'graphics',1,1550)
-LexToken(DOT,'.',1,1558)
-LexToken(VAR,'exprs',1,1559)
-LexToken(ASSIGNMENT,'=',1,1564)
-LexToken(VAR,'exprs',1,1565)
-LexToken(EOL,'\n',1,1570)
-LexToken(VAR,'x',1,1583)
-LexToken(DOT,'.',1,1584)
-LexToken(VAR,'graphics',1,1585)
-LexToken(ASSIGNMENT,'=',1,1593)
-LexToken(VAR,'graphics',1,1594)
-LexToken(EOL,'\n',1,1602)
-LexToken(VAR,'x',1,1616)
-LexToken(DOT,'.',1,1617)
-LexToken(VAR,'model',1,1618)
-LexToken(ASSIGNMENT,'=',1,1623)
-LexToken(VAR,'model',1,1624)
-LexToken(EOL,'\n',1,1629)
-LexToken(BREAK,'break',1,1642)
-LexToken(EOL,'\n',1,1647)
-LexToken(END,'end',1,1656)
-LexToken(EOL,'\n',1,1659)
-LexToken(CASE,'case',1,1664)
-LexToken(DQSTRING,'"define"',1,1676)
-LexToken(THEN,'then',1,1678)
-LexToken(EOL,'\n',1,1682)
-LexToken(VAR,'model',1,1691)
-LexToken(ASSIGNMENT,'=',1,1696)
-LexToken(SCICOS_MODEL,'scicos_model',1,1697)
-LexToken(OPENBRACKET,'(',1,1709)
-LexToken(CLOSEBRACKET,')',1,1710)
-LexToken(EOL,'\n',1,1711)
-LexToken(VAR,'R',1,1720)
-LexToken(ASSIGNMENT,'=',1,1721)
-LexToken(NUMBER,'0.01',1,1722)
-LexToken(EOL,'\n',1,1726)
-LexToken(VAR,'model',1,1735)
-LexToken(DOT,'.',1,1740)
-LexToken(VAR,'rpar',1,1741)
-LexToken(ASSIGNMENT,'=',1,1745)
-LexToken(VAR,'R',1,1746)
-LexToken(EOL,'\n',1,1747)
-LexToken(VAR,'model',1,1756)
-LexToken(DOT,'.',1,1761)
-LexToken(VAR,'sim',1,1762)
-LexToken(ASSIGNMENT,'=',1,1765)
-LexToken(DQSTRING,'"resistor"',1,1775)
-LexToken(EOL,'\n',1,1776)
-LexToken(VAR,'model',1,1785)
-LexToken(DOT,'.',1,1790)
-LexToken(VAR,'blocktype',1,1791)
-LexToken(ASSIGNMENT,'=',1,1800)
-LexToken(DQSTRING,'"c"',1,1803)
-LexToken(EOL,'\n',1,1804)
-LexToken(VAR,'model',1,1813)
-LexToken(DOT,'.',1,1818)
-LexToken(VAR,'dep_ut',1,1819)
-LexToken(ASSIGNMENT,'=',1,1825)
-LexToken(OPENSQBRACKET,'[',1,1826)
-LexToken(PREVAR_BOOLEAN,'%t',1,1827)
-LexToken(PREVAR_BOOLEAN,'%f',1,1830)
-LexToken(CLOSESQBRACKET,']',1,1832)
-LexToken(EOL,'\n',1,1833)
-LexToken(VAR,'mo',1,1842)
-LexToken(ASSIGNMENT,'=',1,1844)
-LexToken(VAR,'modelica',1,1845)
-LexToken(OPENBRACKET,'(',1,1853)
-LexToken(CLOSEBRACKET,')',1,1854)
-LexToken(EOL,'\n',1,1855)
-LexToken(VAR,'mo',1,1864)
-LexToken(DOT,'.',1,1866)
-LexToken(VAR,'model',1,1867)
-LexToken(ASSIGNMENT,'=',1,1872)
-LexToken(DQSTRING,'"Resistor"',1,1882)
-LexToken(EOL,'\n',1,1883)
-LexToken(VAR,'mo',1,1892)
-LexToken(DOT,'.',1,1894)
-LexToken(VAR,'inputs',1,1895)
-LexToken(ASSIGNMENT,'=',1,1901)
-LexToken(DQSTRING,'"p"',1,1904)
-LexToken(EOL,'\n',1,1905)
-LexToken(VAR,'mo',1,1915)
-LexToken(DOT,'.',1,1917)
-LexToken(VAR,'outputs',1,1918)
-LexToken(ASSIGNMENT,'=',1,1925)
-LexToken(DQSTRING,'"n"',1,1928)
-LexToken(EOL,'\n',1,1929)
-LexToken(VAR,'mo',1,1939)
-LexToken(DOT,'.',1,1941)
-LexToken(VAR,'parameters',1,1942)
-LexToken(ASSIGNMENT,'=',1,1952)
-LexToken(VAR,'list',1,1953)
-LexToken(OPENBRACKET,'(',1,1957)
-LexToken(DQSTRING,'"R"',1,1960)
-LexToken(COMMA,',',1,1961)
-LexToken(VAR,'list',1,1962)
-LexToken(OPENBRACKET,'(',1,1966)
-LexToken(VAR,'R',1,1967)
-LexToken(CLOSEBRACKET,')',1,1968)
-LexToken(CLOSEBRACKET,')',1,1969)
-LexToken(EOL,'\n',1,1970)
-LexToken(VAR,'model',1,1979)
-LexToken(DOT,'.',1,1984)
-LexToken(VAR,'equations',1,1985)
-LexToken(ASSIGNMENT,'=',1,1994)
-LexToken(VAR,'mo',1,1995)
-LexToken(EOL,'\n',1,1997)
-LexToken(VAR,'model',1,2006)
-LexToken(DOT,'.',1,2011)
-LexToken(VAR,'in',1,2012)
-LexToken(ASSIGNMENT,'=',1,2014)
-LexToken(VAR,'ones',1,2015)
-LexToken(OPENBRACKET,'(',1,2019)
-LexToken(VAR,'size',1,2020)
-LexToken(OPENBRACKET,'(',1,2024)
-LexToken(VAR,'mo',1,2025)
-LexToken(DOT,'.',1,2027)
-LexToken(VAR,'inputs',1,2028)
-LexToken(COMMA,',',1,2034)
-LexToken(DQSTRING,'"*"',1,2037)
-LexToken(CLOSEBRACKET,')',1,2038)
-LexToken(COMMA,',',1,2039)
-LexToken(NUMBER,'1',1,2040)
-LexToken(CLOSEBRACKET,')',1,2041)
-LexToken(EOL,'\n',1,2042)
-LexToken(VAR,'model',1,2051)
-LexToken(DOT,'.',1,2056)
-LexToken(VAR,'out',1,2057)
-LexToken(ASSIGNMENT,'=',1,2060)
-LexToken(VAR,'ones',1,2061)
-LexToken(OPENBRACKET,'(',1,2065)
-LexToken(VAR,'size',1,2066)
-LexToken(OPENBRACKET,'(',1,2070)
-LexToken(VAR,'mo',1,2071)
-LexToken(DOT,'.',1,2073)
-LexToken(VAR,'outputs',1,2074)
-LexToken(COMMA,',',1,2081)
-LexToken(DQSTRING,'"*"',1,2084)
-LexToken(CLOSEBRACKET,')',1,2085)
-LexToken(COMMA,',',1,2086)
-LexToken(NUMBER,'1',1,2087)
-LexToken(CLOSEBRACKET,')',1,2088)
-LexToken(EOL,'\n',1,2089)
-LexToken(VAR,'exprs',1,2098)
-LexToken(ASSIGNMENT,'=',1,2103)
-LexToken(VAR,'string',1,2104)
-LexToken(OPENBRACKET,'(',1,2110)
-LexToken(VAR,'R',1,2111)
-LexToken(CLOSEBRACKET,')',1,2112)
-LexToken(EOL,'\n',1,2113)
-LexToken(VAR,'gr_i',1,2122)
-LexToken(ASSIGNMENT,'=',1,2126)
-LexToken(OPENSQBRACKET,'[',1,2127)
-LexToken(CLOSESQBRACKET,']',1,2128)
-LexToken(EOL,'\n',1,2129)
-LexToken(VAR,'x',1,2138)
-LexToken(ASSIGNMENT,'=',1,2139)
-LexToken(VAR,'standard_define',1,2140)
-LexToken(OPENBRACKET,'(',1,2155)
-LexToken(OPENSQBRACKET,'[',1,2156)
-LexToken(NUMBER,'2',1,2157)
-LexToken(NUMBER,'1',1,2159)
-LexToken(CLOSESQBRACKET,']',1,2160)
-LexToken(COMMA,',',1,2161)
-LexToken(VAR,'model',1,2162)
-LexToken(COMMA,',',1,2167)
-LexToken(VAR,'exprs',1,2168)
-LexToken(COMMA,',',1,2173)
-LexToken(VAR,'list',1,2174)
-LexToken(OPENBRACKET,'(',1,2178)
-LexToken(VAR,'gr_i',1,2179)
-LexToken(COMMA,',',1,2183)
-LexToken(NUMBER,'0',1,2184)
-LexToken(CLOSEBRACKET,')',1,2185)
-LexToken(CLOSEBRACKET,')',1,2186)
-LexToken(EOL,'\n',1,2187)
-LexToken(VAR,'x',1,2196)
-LexToken(DOT,'.',1,2197)
-LexToken(VAR,'graphics',1,2198)
-LexToken(DOT,'.',1,2206)
-LexToken(VAR,'in_implicit',1,2207)
-LexToken(ASSIGNMENT,'=',1,2218)
-LexToken(OPENSQBRACKET,'[',1,2219)
-LexToken(DQSTRING,'"I"',1,2222)
-LexToken(CLOSESQBRACKET,']',1,2223)
-LexToken(EOL,'\n',1,2224)
-LexToken(VAR,'x',1,2233)
-LexToken(DOT,'.',1,2234)
-LexToken(VAR,'graphics',1,2235)
-LexToken(DOT,'.',1,2243)
-LexToken(VAR,'out_implicit',1,2244)
-LexToken(ASSIGNMENT,'=',1,2256)
-LexToken(OPENSQBRACKET,'[',1,2257)
-LexToken(DQSTRING,'"I"',1,2260)
-LexToken(CLOSESQBRACKET,']',1,2261)
-LexToken(EOL,'\n',1,2262)
-LexToken(END,'end',1,2267)
-LexToken(EOL,'\n',1,2270)
-LexToken(ENDFUNCTION,'endfunction',1,2271)
-LexToken(EOL,'\n',1,2282)
+/* autogenerated from "macros/Electrical/Resistor.sci" */
+function Resistor() {
+Resistor.prototype.get = function Resistor() {
+}
+Resistor.prototype.set = function Resistor() {
+x=arg1;
+graphics=arg1.graphics;
+exprs=graphics.exprs;
+model=arg1.model;
+while (true) {
+[ok,R,exprs]=scicos_getvalue("Set Resistor block parameter","R (ohm)",list("vec",1),exprs);
+if (!ok) {
+break
+}
+model.rpar=R;
+model.equations.parameters[2]=list(R);
+graphics.exprs=exprs;
+x.graphics=graphics;
+x.model=model;
+break
+}
+}
+Resistor.prototype.define = function Resistor() {
+model=scicos_model();
+R=0.01;
+model.rpar=R;
+model.sim="resistor";
+model.blocktype="c";
+model.dep_ut=[true,None];
+mo=modelica();
+mo.model="Resistor";
+mo.inputs="p";
+mo.outputs="n";
+mo.parameters=list("R",list(R));
+model.equations=mo;
+model.in=ones(size(mo.inputs,"*"),1);
+model.out=ones(size(mo.outputs,"*"),1);
+exprs=string(R);
+gr_i=[];
+x=standard_define([2,1],model,exprs,list(gr_i,0));
+x.graphics.in_implicit=["I"];
+x.graphics.out_implicit=["I"];
+}
+Resistor.prototype.details = function Resistor() {
+}
+}
diff --git a/js/Electrical/SineVoltage.js b/js/Electrical/SineVoltage.js
index 479638ef..69a9c73e 100644
--- a/js/Electrical/SineVoltage.js
+++ b/js/Electrical/SineVoltage.js
@@ -1,441 +1,50 @@
-LexToken(EOL,'\n',1,10)
-LexToken(EOL,'\n',1,13)
-LexToken(EOL,'\n',1,73)
-LexToken(EOL,'\n',1,76)
-LexToken(EOL,'\n',1,148)
-LexToken(EOL,'\n',1,220)
-LexToken(EOL,'\n',1,289)
-LexToken(EOL,'\n',1,328)
-LexToken(EOL,'\n',1,331)
-LexToken(EOL,'\n',1,398)
-LexToken(EOL,'\n',1,464)
-LexToken(EOL,'\n',1,529)
-LexToken(EOL,'\n',1,577)
-LexToken(EOL,'\n',1,580)
-LexToken(EOL,'\n',1,649)
-LexToken(EOL,'\n',1,712)
-LexToken(EOL,'\n',1,794)
-LexToken(EOL,'\n',1,797)
-LexToken(EOL,'\n',1,828)
-LexToken(EOL,'\n',1,831)
-LexToken(EOL,'\n',1,832)
-LexToken(FUNCTION,'function',1,833)
-LexToken(OPENSQBRACKET,'[',1,842)
-LexToken(VAR,'x',1,843)
-LexToken(COMMA,',',1,844)
-LexToken(VAR,'y',1,845)
-LexToken(COMMA,',',1,846)
-LexToken(VAR,'typ',1,847)
-LexToken(CLOSESQBRACKET,']',1,850)
-LexToken(ASSIGNMENT,'=',1,851)
-LexToken(VAR,'SineVoltage',1,853)
-LexToken(OPENBRACKET,'(',1,864)
-LexToken(VAR,'job',1,865)
-LexToken(COMMA,',',1,868)
-LexToken(VAR,'arg1',1,869)
-LexToken(COMMA,',',1,873)
-LexToken(VAR,'arg2',1,874)
-LexToken(CLOSEBRACKET,')',1,878)
-LexToken(EOL,'\n',1,879)
-LexToken(EOL,'\n',1,914)
-LexToken(EOL,'\n',1,967)
-LexToken(EOL,'\n',1,1044)
-LexToken(EOL,'\n',1,1095)
-LexToken(VAR,'x',1,1100)
-LexToken(ASSIGNMENT,'=',1,1101)
-LexToken(OPENSQBRACKET,'[',1,1102)
-LexToken(CLOSESQBRACKET,']',1,1103)
-LexToken(EOL,'\n',1,1104)
-LexToken(VAR,'y',1,1110)
-LexToken(ASSIGNMENT,'=',1,1111)
-LexToken(OPENSQBRACKET,'[',1,1112)
-LexToken(CLOSESQBRACKET,']',1,1113)
-LexToken(EOL,'\n',1,1114)
-LexToken(VAR,'typ',1,1120)
-LexToken(ASSIGNMENT,'=',1,1123)
-LexToken(OPENSQBRACKET,'[',1,1124)
-LexToken(CLOSESQBRACKET,']',1,1125)
-LexToken(EOL,'\n',1,1126)
-LexToken(SELECT,'select',1,1132)
-LexToken(VAR,'job',1,1139)
-LexToken(EOL,'\n',1,1142)
-LexToken(CASE,'case',1,1147)
-LexToken(DQSTRING,'"set"',1,1156)
-LexToken(THEN,'then',1,1158)
-LexToken(EOL,'\n',1,1162)
-LexToken(VAR,'x',1,1171)
-LexToken(ASSIGNMENT,'=',1,1172)
-LexToken(VAR,'arg1',1,1173)
-LexToken(EOL,'\n',1,1177)
-LexToken(VAR,'graphics',1,1187)
-LexToken(ASSIGNMENT,'=',1,1195)
-LexToken(VAR,'arg1',1,1196)
-LexToken(DOT,'.',1,1200)
-LexToken(VAR,'graphics',1,1201)
-LexToken(EOL,'\n',1,1209)
-LexToken(VAR,'exprs',1,1219)
-LexToken(ASSIGNMENT,'=',1,1224)
-LexToken(VAR,'graphics',1,1225)
-LexToken(DOT,'.',1,1233)
-LexToken(VAR,'exprs',1,1234)
-LexToken(EOL,'\n',1,1239)
-LexToken(VAR,'model',1,1248)
-LexToken(ASSIGNMENT,'=',1,1253)
-LexToken(VAR,'arg1',1,1254)
-LexToken(DOT,'.',1,1258)
-LexToken(VAR,'model',1,1259)
-LexToken(EOL,'\n',1,1264)
-LexToken(WHILE,'while',1,1274)
-LexToken(PREVAR_BOOLEAN,'%t',1,1280)
-LexToken(DO,'do',1,1283)
-LexToken(EOL,'\n',1,1285)
-LexToken(OPENSQBRACKET,'[',1,1298)
-LexToken(VAR,'ok',1,1299)
-LexToken(COMMA,',',1,1301)
-LexToken(VAR,'V',1,1302)
-LexToken(COMMA,',',1,1303)
-LexToken(VAR,'ph',1,1304)
-LexToken(COMMA,',',1,1306)
-LexToken(VAR,'frq',1,1307)
-LexToken(COMMA,',',1,1310)
-LexToken(VAR,'offset',1,1311)
-LexToken(COMMA,',',1,1317)
-LexToken(VAR,'start',1,1318)
-LexToken(COMMA,',',1,1323)
-LexToken(VAR,'exprs',1,1324)
-LexToken(CLOSESQBRACKET,']',1,1329)
-LexToken(ASSIGNMENT,'=',1,1330)
-LexToken(SCICOS_GETVALUE,'scicos_getvalue',1,1331)
-LexToken(OPENBRACKET,'(',1,1346)
-LexToken(DQSTRING,'"Set voltage source parameter"',1,1376)
-LexToken(COMMA,',',1,1377)
-LexToken(OPENSQBRACKET,'[',1,1393)
-LexToken(DQSTRING,'"Amplitude (Volt)"',1,1411)
-LexToken(SEMICOLON,';',1,1412)
-LexToken(DQSTRING,'"phase (rad)"',1,1425)
-LexToken(SEMICOLON,';',1,1426)
-LexToken(DQSTRING,'"Frequency (Hz)"',1,1442)
-LexToken(SEMICOLON,';',1,1443)
-LexToken(DQSTRING,'"Voltageoffset (V)"',1,1462)
-LexToken(SEMICOLON,';',1,1463)
-LexToken(DQSTRING,'"Timeoffset (s)"',1,1479)
-LexToken(CLOSESQBRACKET,']',1,1480)
-LexToken(COMMA,',',1,1481)
-LexToken(VAR,'list',1,1497)
-LexToken(OPENBRACKET,'(',1,1501)
-LexToken(DQSTRING,'"vec"',1,1506)
-LexToken(COMMA,',',1,1507)
-LexToken(NUMBER,'1',1,1508)
-LexToken(COMMA,',',1,1509)
-LexToken(DQSTRING,'"vec"',1,1514)
-LexToken(COMMA,',',1,1515)
-LexToken(NUMBER,'1',1,1516)
-LexToken(COMMA,',',1,1517)
-LexToken(DQSTRING,'"vec"',1,1522)
-LexToken(COMMA,',',1,1523)
-LexToken(NUMBER,'1',1,1524)
-LexToken(COMMA,',',1,1525)
-LexToken(DQSTRING,'"vec"',1,1530)
-LexToken(COMMA,',',1,1531)
-LexToken(NUMBER,'1',1,1532)
-LexToken(COMMA,',',1,1533)
-LexToken(DQSTRING,'"vec"',1,1538)
-LexToken(COMMA,',',1,1539)
-LexToken(NUMBER,'1',1,1540)
-LexToken(CLOSEBRACKET,')',1,1541)
-LexToken(COMMA,',',1,1542)
-LexToken(VAR,'exprs',1,1543)
-LexToken(CLOSEBRACKET,')',1,1548)
-LexToken(EOL,'\n',1,1549)
-LexToken(IF,'if',1,1562)
-LexToken(NOT,'~',1,1565)
-LexToken(VAR,'ok',1,1566)
-LexToken(THEN,'then',1,1569)
-LexToken(EOL,'\n',1,1573)
-LexToken(BREAK,'break',1,1590)
-LexToken(EOL,'\n',1,1595)
-LexToken(END,'end',1,1609)
-LexToken(EOL,'\n',1,1612)
-LexToken(VAR,'model',1,1625)
-LexToken(DOT,'.',1,1630)
-LexToken(VAR,'rpar',1,1631)
-LexToken(ASSIGNMENT,'=',1,1635)
-LexToken(OPENSQBRACKET,'[',1,1636)
-LexToken(VAR,'V',1,1637)
-LexToken(SEMICOLON,';',1,1638)
-LexToken(VAR,'ph',1,1639)
-LexToken(SEMICOLON,';',1,1641)
-LexToken(VAR,'frq',1,1642)
-LexToken(SEMICOLON,';',1,1645)
-LexToken(VAR,'offset',1,1646)
-LexToken(SEMICOLON,';',1,1652)
-LexToken(VAR,'start',1,1653)
-LexToken(CLOSESQBRACKET,']',1,1658)
-LexToken(EOL,'\n',1,1659)
-LexToken(VAR,'model',1,1672)
-LexToken(DOT,'.',1,1677)
-LexToken(VAR,'equations',1,1678)
-LexToken(DOT,'.',1,1687)
-LexToken(VAR,'parameters',1,1688)
-LexToken(OPENBRACKET,'(',1,1698)
-LexToken(NUMBER,'2',1,1699)
-LexToken(CLOSEBRACKET,')',1,1700)
-LexToken(ASSIGNMENT,'=',1,1701)
-LexToken(VAR,'list',1,1702)
-LexToken(OPENBRACKET,'(',1,1706)
-LexToken(VAR,'V',1,1707)
-LexToken(COMMA,',',1,1708)
-LexToken(VAR,'ph',1,1709)
-LexToken(COMMA,',',1,1711)
-LexToken(VAR,'frq',1,1712)
-LexToken(COMMA,',',1,1715)
-LexToken(VAR,'offset',1,1716)
-LexToken(COMMA,',',1,1722)
-LexToken(VAR,'start',1,1723)
-LexToken(CLOSEBRACKET,')',1,1728)
-LexToken(EOL,'\n',1,1729)
-LexToken(VAR,'graphics',1,1742)
-LexToken(DOT,'.',1,1750)
-LexToken(VAR,'exprs',1,1751)
-LexToken(ASSIGNMENT,'=',1,1756)
-LexToken(VAR,'exprs',1,1757)
-LexToken(EOL,'\n',1,1762)
-LexToken(VAR,'x',1,1775)
-LexToken(DOT,'.',1,1776)
-LexToken(VAR,'graphics',1,1777)
-LexToken(ASSIGNMENT,'=',1,1785)
-LexToken(VAR,'graphics',1,1786)
-LexToken(EOL,'\n',1,1794)
-LexToken(VAR,'x',1,1808)
-LexToken(DOT,'.',1,1809)
-LexToken(VAR,'model',1,1810)
-LexToken(ASSIGNMENT,'=',1,1815)
-LexToken(VAR,'model',1,1816)
-LexToken(EOL,'\n',1,1821)
-LexToken(BREAK,'break',1,1834)
-LexToken(EOL,'\n',1,1839)
-LexToken(END,'end',1,1848)
-LexToken(EOL,'\n',1,1851)
-LexToken(CASE,'case',1,1856)
-LexToken(DQSTRING,'"define"',1,1868)
-LexToken(THEN,'then',1,1870)
-LexToken(EOL,'\n',1,1874)
-LexToken(VAR,'model',1,1883)
-LexToken(ASSIGNMENT,'=',1,1888)
-LexToken(SCICOS_MODEL,'scicos_model',1,1889)
-LexToken(OPENBRACKET,'(',1,1901)
-LexToken(CLOSEBRACKET,')',1,1902)
-LexToken(EOL,'\n',1,1903)
-LexToken(VAR,'model',1,1912)
-LexToken(DOT,'.',1,1917)
-LexToken(VAR,'in',1,1918)
-LexToken(ASSIGNMENT,'=',1,1920)
-LexToken(OPENSQBRACKET,'[',1,1921)
-LexToken(NUMBER,'1',1,1922)
-LexToken(CLOSESQBRACKET,']',1,1923)
-LexToken(EOL,'\n',1,1924)
-LexToken(VAR,'model',1,1934)
-LexToken(DOT,'.',1,1939)
-LexToken(VAR,'out',1,1940)
-LexToken(ASSIGNMENT,'=',1,1943)
-LexToken(OPENSQBRACKET,'[',1,1944)
-LexToken(NUMBER,'1',1,1945)
-LexToken(CLOSESQBRACKET,']',1,1946)
-LexToken(EOL,'\n',1,1947)
-LexToken(VAR,'V',1,1957)
-LexToken(ASSIGNMENT,'=',1,1958)
-LexToken(NUMBER,'1',1,1959)
-LexToken(EOL,'\n',1,1960)
-LexToken(VAR,'ph',1,1969)
-LexToken(ASSIGNMENT,'=',1,1971)
-LexToken(NUMBER,'0',1,1972)
-LexToken(EOL,'\n',1,1973)
-LexToken(VAR,'frq',1,1982)
-LexToken(ASSIGNMENT,'=',1,1985)
-LexToken(NUMBER,'1',1,1986)
-LexToken(EOL,'\n',1,1987)
-LexToken(VAR,'offset',1,1996)
-LexToken(ASSIGNMENT,'=',1,2002)
-LexToken(NUMBER,'0',1,2003)
-LexToken(EOL,'\n',1,2004)
-LexToken(VAR,'start',1,2013)
-LexToken(ASSIGNMENT,'=',1,2018)
-LexToken(NUMBER,'0',1,2019)
-LexToken(EOL,'\n',1,2020)
-LexToken(VAR,'model',1,2029)
-LexToken(DOT,'.',1,2034)
-LexToken(VAR,'rpar',1,2035)
-LexToken(ASSIGNMENT,'=',1,2039)
-LexToken(OPENSQBRACKET,'[',1,2040)
-LexToken(VAR,'V',1,2041)
-LexToken(SEMICOLON,';',1,2042)
-LexToken(VAR,'ph',1,2043)
-LexToken(SEMICOLON,';',1,2045)
-LexToken(VAR,'frq',1,2046)
-LexToken(SEMICOLON,';',1,2049)
-LexToken(VAR,'offset',1,2050)
-LexToken(SEMICOLON,';',1,2056)
-LexToken(VAR,'start',1,2057)
-LexToken(CLOSESQBRACKET,']',1,2062)
-LexToken(EOL,'\n',1,2063)
-LexToken(VAR,'model',1,2072)
-LexToken(DOT,'.',1,2077)
-LexToken(VAR,'sim',1,2078)
-LexToken(ASSIGNMENT,'=',1,2081)
-LexToken(DQSTRING,'"SineVoltage"',1,2094)
-LexToken(EOL,'\n',1,2095)
-LexToken(VAR,'model',1,2104)
-LexToken(DOT,'.',1,2109)
-LexToken(VAR,'blocktype',1,2110)
-LexToken(ASSIGNMENT,'=',1,2119)
-LexToken(DQSTRING,'"c"',1,2122)
-LexToken(EOL,'\n',1,2123)
-LexToken(VAR,'model',1,2132)
-LexToken(DOT,'.',1,2137)
-LexToken(VAR,'dep_ut',1,2138)
-LexToken(ASSIGNMENT,'=',1,2144)
-LexToken(OPENSQBRACKET,'[',1,2145)
-LexToken(PREVAR_BOOLEAN,'%t',1,2146)
-LexToken(PREVAR_BOOLEAN,'%f',1,2149)
-LexToken(CLOSESQBRACKET,']',1,2151)
-LexToken(EOL,'\n',1,2152)
-LexToken(VAR,'mo',1,2161)
-LexToken(ASSIGNMENT,'=',1,2163)
-LexToken(VAR,'modelica',1,2164)
-LexToken(OPENBRACKET,'(',1,2172)
-LexToken(CLOSEBRACKET,')',1,2173)
-LexToken(EOL,'\n',1,2174)
-LexToken(VAR,'mo',1,2183)
-LexToken(DOT,'.',1,2185)
-LexToken(VAR,'model',1,2186)
-LexToken(ASSIGNMENT,'=',1,2191)
-LexToken(DQSTRING,'"SineVoltage"',1,2204)
-LexToken(EOL,'\n',1,2205)
-LexToken(VAR,'mo',1,2214)
-LexToken(DOT,'.',1,2216)
-LexToken(VAR,'inputs',1,2217)
-LexToken(ASSIGNMENT,'=',1,2223)
-LexToken(DQSTRING,'"p"',1,2226)
-LexToken(EOL,'\n',1,2227)
-LexToken(VAR,'mo',1,2237)
-LexToken(DOT,'.',1,2239)
-LexToken(VAR,'outputs',1,2240)
-LexToken(ASSIGNMENT,'=',1,2247)
-LexToken(DQSTRING,'"n"',1,2250)
-LexToken(EOL,'\n',1,2251)
-LexToken(VAR,'mo',1,2261)
-LexToken(DOT,'.',1,2263)
-LexToken(VAR,'parameters',1,2264)
-LexToken(ASSIGNMENT,'=',1,2274)
-LexToken(VAR,'list',1,2275)
-LexToken(OPENBRACKET,'(',1,2279)
-LexToken(OPENSQBRACKET,'[',1,2280)
-LexToken(DQSTRING,'"V"',1,2283)
-LexToken(SEMICOLON,';',1,2284)
-LexToken(DQSTRING,'"phase"',1,2291)
-LexToken(SEMICOLON,';',1,2292)
-LexToken(DQSTRING,'"freqHz"',1,2300)
-LexToken(SEMICOLON,';',1,2301)
-LexToken(DQSTRING,'"offset"',1,2309)
-LexToken(SEMICOLON,';',1,2310)
-LexToken(DQSTRING,'"startTime"',1,2321)
-LexToken(CLOSESQBRACKET,']',1,2322)
-LexToken(COMMA,',',1,2323)
-LexToken(VAR,'list',1,2324)
-LexToken(OPENBRACKET,'(',1,2328)
-LexToken(VAR,'V',1,2329)
-LexToken(COMMA,',',1,2330)
-LexToken(VAR,'ph',1,2331)
-LexToken(COMMA,',',1,2333)
-LexToken(VAR,'frq',1,2334)
-LexToken(COMMA,',',1,2337)
-LexToken(VAR,'offset',1,2338)
-LexToken(COMMA,',',1,2344)
-LexToken(VAR,'start',1,2345)
-LexToken(CLOSEBRACKET,')',1,2350)
-LexToken(CLOSEBRACKET,')',1,2351)
-LexToken(EOL,'\n',1,2352)
-LexToken(VAR,'model',1,2361)
-LexToken(DOT,'.',1,2366)
-LexToken(VAR,'equations',1,2367)
-LexToken(ASSIGNMENT,'=',1,2376)
-LexToken(VAR,'mo',1,2377)
-LexToken(EOL,'\n',1,2379)
-LexToken(EOL,'\n',1,2380)
-LexToken(VAR,'exprs',1,2389)
-LexToken(ASSIGNMENT,'=',1,2394)
-LexToken(OPENSQBRACKET,'[',1,2395)
-LexToken(VAR,'string',1,2396)
-LexToken(OPENBRACKET,'(',1,2402)
-LexToken(VAR,'V',1,2403)
-LexToken(CLOSEBRACKET,')',1,2404)
-LexToken(SEMICOLON,';',1,2405)
-LexToken(VAR,'string',1,2406)
-LexToken(OPENBRACKET,'(',1,2412)
-LexToken(VAR,'ph',1,2413)
-LexToken(CLOSEBRACKET,')',1,2415)
-LexToken(SEMICOLON,';',1,2416)
-LexToken(VAR,'string',1,2417)
-LexToken(OPENBRACKET,'(',1,2423)
-LexToken(VAR,'frq',1,2424)
-LexToken(CLOSEBRACKET,')',1,2427)
-LexToken(SEMICOLON,';',1,2428)
-LexToken(VAR,'string',1,2429)
-LexToken(OPENBRACKET,'(',1,2435)
-LexToken(VAR,'offset',1,2436)
-LexToken(CLOSEBRACKET,')',1,2442)
-LexToken(SEMICOLON,';',1,2443)
-LexToken(VAR,'string',1,2444)
-LexToken(OPENBRACKET,'(',1,2450)
-LexToken(VAR,'start',1,2451)
-LexToken(CLOSEBRACKET,')',1,2456)
-LexToken(CLOSESQBRACKET,']',1,2457)
-LexToken(EOL,'\n',1,2458)
-LexToken(EOL,'\n',1,2459)
-LexToken(VAR,'gr_i',1,2468)
-LexToken(ASSIGNMENT,'=',1,2472)
-LexToken(OPENSQBRACKET,'[',1,2473)
-LexToken(CLOSESQBRACKET,']',1,2474)
-LexToken(EOL,'\n',1,2475)
-LexToken(EOL,'\n',1,2476)
-LexToken(EOL,'\n',1,2477)
-LexToken(VAR,'x',1,2486)
-LexToken(ASSIGNMENT,'=',1,2487)
-LexToken(VAR,'standard_define',1,2488)
-LexToken(OPENBRACKET,'(',1,2503)
-LexToken(OPENSQBRACKET,'[',1,2504)
-LexToken(NUMBER,'2',1,2505)
-LexToken(NUMBER,'2',1,2507)
-LexToken(CLOSESQBRACKET,']',1,2508)
-LexToken(COMMA,',',1,2509)
-LexToken(VAR,'model',1,2510)
-LexToken(COMMA,',',1,2515)
-LexToken(VAR,'exprs',1,2516)
-LexToken(COMMA,',',1,2521)
-LexToken(VAR,'gr_i',1,2522)
-LexToken(CLOSEBRACKET,')',1,2526)
-LexToken(EOL,'\n',1,2527)
-LexToken(VAR,'x',1,2536)
-LexToken(DOT,'.',1,2537)
-LexToken(VAR,'graphics',1,2538)
-LexToken(DOT,'.',1,2546)
-LexToken(VAR,'in_implicit',1,2547)
-LexToken(ASSIGNMENT,'=',1,2558)
-LexToken(OPENSQBRACKET,'[',1,2559)
-LexToken(DQSTRING,'"I"',1,2562)
-LexToken(CLOSESQBRACKET,']',1,2563)
-LexToken(EOL,'\n',1,2564)
-LexToken(VAR,'x',1,2573)
-LexToken(DOT,'.',1,2574)
-LexToken(VAR,'graphics',1,2575)
-LexToken(DOT,'.',1,2583)
-LexToken(VAR,'out_implicit',1,2584)
-LexToken(ASSIGNMENT,'=',1,2596)
-LexToken(OPENSQBRACKET,'[',1,2597)
-LexToken(DQSTRING,'"I"',1,2600)
-LexToken(CLOSESQBRACKET,']',1,2601)
-LexToken(EOL,'\n',1,2602)
-LexToken(END,'end',1,2607)
-LexToken(EOL,'\n',1,2610)
-LexToken(ENDFUNCTION,'endfunction',1,2611)
-LexToken(EOL,'\n',1,2622)
+/* autogenerated from "macros/Electrical/SineVoltage.sci" */
+function SineVoltage() {
+SineVoltage.prototype.get = function SineVoltage() {
+}
+SineVoltage.prototype.set = function SineVoltage() {
+x=arg1;
+graphics=arg1.graphics;
+exprs=graphics.exprs;
+model=arg1.model;
+while (true) {
+[ok,V,ph,frq,offset,start,exprs]=scicos_getvalue("Set voltage source parameter",["Amplitude (Volt)","phase (rad)","Frequency (Hz)","Voltageoffset (V)","Timeoffset (s)"],list("vec",1,"vec",1,"vec",1,"vec",1,"vec",1),exprs);
+if (!ok) {
+break
+}
+model.rpar=[V,ph,frq,offset,start];
+model.equations.parameters[2]=list(V,ph,frq,offset,start);
+graphics.exprs=exprs;
+x.graphics=graphics;
+x.model=model;
+break
+}
+}
+SineVoltage.prototype.define = function SineVoltage() {
+model=scicos_model();
+model.in=[1];
+model.out=[1];
+V=1;
+ph=0;
+frq=1;
+offset=0;
+start=0;
+model.rpar=[V,ph,frq,offset,start];
+model.sim="SineVoltage";
+model.blocktype="c";
+model.dep_ut=[true,None];
+mo=modelica();
+mo.model="SineVoltage";
+mo.inputs="p";
+mo.outputs="n";
+mo.parameters=list(["V","phase","freqHz","offset","startTime"],list(V,ph,frq,offset,start));
+model.equations=mo;
+exprs=[string(V),string(ph),string(frq),string(offset),string(start)];
+gr_i=[];
+x=standard_define([2,2],model,exprs,gr_i);
+x.graphics.in_implicit=["I"];
+x.graphics.out_implicit=["I"];
+}
+SineVoltage.prototype.details = function SineVoltage() {
+}
+}
diff --git a/js/Electrical/Switch.js b/js/Electrical/Switch.js
index 0d0c2207..a19145a4 100644
--- a/js/Electrical/Switch.js
+++ b/js/Electrical/Switch.js
@@ -1,374 +1,48 @@
-LexToken(EOL,'\n',1,10)
-LexToken(EOL,'\n',1,13)
-LexToken(EOL,'\n',1,73)
-LexToken(EOL,'\n',1,76)
-LexToken(EOL,'\n',1,148)
-LexToken(EOL,'\n',1,220)
-LexToken(EOL,'\n',1,289)
-LexToken(EOL,'\n',1,328)
-LexToken(EOL,'\n',1,331)
-LexToken(EOL,'\n',1,398)
-LexToken(EOL,'\n',1,464)
-LexToken(EOL,'\n',1,529)
-LexToken(EOL,'\n',1,577)
-LexToken(EOL,'\n',1,580)
-LexToken(EOL,'\n',1,649)
-LexToken(EOL,'\n',1,712)
-LexToken(EOL,'\n',1,794)
-LexToken(EOL,'\n',1,797)
-LexToken(EOL,'\n',1,828)
-LexToken(EOL,'\n',1,831)
-LexToken(EOL,'\n',1,832)
-LexToken(FUNCTION,'function',1,833)
-LexToken(OPENSQBRACKET,'[',1,842)
-LexToken(VAR,'x',1,843)
-LexToken(COMMA,',',1,844)
-LexToken(VAR,'y',1,845)
-LexToken(COMMA,',',1,846)
-LexToken(VAR,'typ',1,847)
-LexToken(CLOSESQBRACKET,']',1,850)
-LexToken(ASSIGNMENT,'=',1,851)
-LexToken(VAR,'Switch',1,852)
-LexToken(OPENBRACKET,'(',1,858)
-LexToken(VAR,'job',1,859)
-LexToken(COMMA,',',1,862)
-LexToken(VAR,'arg1',1,863)
-LexToken(COMMA,',',1,867)
-LexToken(VAR,'arg2',1,868)
-LexToken(CLOSEBRACKET,')',1,872)
-LexToken(EOL,'\n',1,873)
-LexToken(EOL,'\n',1,908)
-LexToken(EOL,'\n',1,961)
-LexToken(EOL,'\n',1,1038)
-LexToken(EOL,'\n',1,1089)
-LexToken(VAR,'x',1,1094)
-LexToken(ASSIGNMENT,'=',1,1095)
-LexToken(OPENSQBRACKET,'[',1,1096)
-LexToken(CLOSESQBRACKET,']',1,1097)
-LexToken(EOL,'\n',1,1098)
-LexToken(VAR,'y',1,1104)
-LexToken(ASSIGNMENT,'=',1,1105)
-LexToken(OPENSQBRACKET,'[',1,1106)
-LexToken(CLOSESQBRACKET,']',1,1107)
-LexToken(EOL,'\n',1,1108)
-LexToken(VAR,'typ',1,1114)
-LexToken(ASSIGNMENT,'=',1,1117)
-LexToken(OPENSQBRACKET,'[',1,1118)
-LexToken(CLOSESQBRACKET,']',1,1119)
-LexToken(EOL,'\n',1,1120)
-LexToken(SELECT,'select',1,1126)
-LexToken(VAR,'job',1,1133)
-LexToken(EOL,'\n',1,1136)
-LexToken(CASE,'case',1,1141)
-LexToken(DQSTRING,'"set"',1,1150)
-LexToken(THEN,'then',1,1152)
-LexToken(EOL,'\n',1,1156)
-LexToken(VAR,'x',1,1165)
-LexToken(ASSIGNMENT,'=',1,1166)
-LexToken(VAR,'arg1',1,1167)
-LexToken(EOL,'\n',1,1171)
-LexToken(VAR,'graphics',1,1181)
-LexToken(ASSIGNMENT,'=',1,1189)
-LexToken(VAR,'arg1',1,1190)
-LexToken(DOT,'.',1,1194)
-LexToken(VAR,'graphics',1,1195)
-LexToken(EOL,'\n',1,1203)
-LexToken(VAR,'exprs',1,1213)
-LexToken(ASSIGNMENT,'=',1,1218)
-LexToken(VAR,'graphics',1,1219)
-LexToken(DOT,'.',1,1227)
-LexToken(VAR,'exprs',1,1228)
-LexToken(EOL,'\n',1,1233)
-LexToken(VAR,'model',1,1242)
-LexToken(ASSIGNMENT,'=',1,1247)
-LexToken(VAR,'arg1',1,1248)
-LexToken(DOT,'.',1,1252)
-LexToken(VAR,'model',1,1253)
-LexToken(EOL,'\n',1,1258)
-LexToken(WHILE,'while',1,1268)
-LexToken(PREVAR_BOOLEAN,'%t',1,1274)
-LexToken(DO,'do',1,1277)
-LexToken(EOL,'\n',1,1279)
-LexToken(OPENSQBRACKET,'[',1,1292)
-LexToken(VAR,'ok',1,1293)
-LexToken(COMMA,',',1,1295)
-LexToken(VAR,'Ron',1,1296)
-LexToken(COMMA,',',1,1299)
-LexToken(VAR,'Roff',1,1300)
-LexToken(COMMA,',',1,1304)
-LexToken(VAR,'exprs',1,1305)
-LexToken(CLOSESQBRACKET,']',1,1310)
-LexToken(ASSIGNMENT,'=',1,1311)
-LexToken(SCICOS_GETVALUE,'scicos_getvalue',1,1312)
-LexToken(OPENBRACKET,'(',1,1327)
-LexToken(DQSTRING,'"Set non-ideal electrical switch parameters"',1,1371)
-LexToken(COMMA,',',1,1372)
-LexToken(OPENSQBRACKET,'[',1,1388)
-LexToken(DQSTRING,'"Resistance in On state (Ohm)"',1,1418)
-LexToken(SEMICOLON,';',1,1419)
-LexToken(DQSTRING,'"Resistance in Off state (Ohm)"',1,1450)
-LexToken(CLOSESQBRACKET,']',1,1451)
-LexToken(COMMA,',',1,1452)
-LexToken(VAR,'list',1,1453)
-LexToken(OPENBRACKET,'(',1,1457)
-LexToken(DQSTRING,'"vec"',1,1462)
-LexToken(COMMA,',',1,1463)
-LexToken(NUMBER,'1',1,1464)
-LexToken(COMMA,',',1,1465)
-LexToken(DQSTRING,'"vec"',1,1470)
-LexToken(COMMA,',',1,1471)
-LexToken(NUMBER,'1',1,1472)
-LexToken(CLOSEBRACKET,')',1,1473)
-LexToken(COMMA,',',1,1474)
-LexToken(VAR,'exprs',1,1475)
-LexToken(CLOSEBRACKET,')',1,1480)
-LexToken(EOL,'\n',1,1481)
-LexToken(IF,'if',1,1494)
-LexToken(NOT,'~',1,1497)
-LexToken(VAR,'ok',1,1498)
-LexToken(THEN,'then',1,1501)
-LexToken(EOL,'\n',1,1505)
-LexToken(BREAK,'break',1,1522)
-LexToken(EOL,'\n',1,1527)
-LexToken(END,'end',1,1541)
-LexToken(EOL,'\n',1,1544)
-LexToken(VAR,'model',1,1557)
-LexToken(DOT,'.',1,1562)
-LexToken(VAR,'equations',1,1563)
-LexToken(DOT,'.',1,1572)
-LexToken(VAR,'parameters',1,1573)
-LexToken(OPENBRACKET,'(',1,1583)
-LexToken(NUMBER,'2',1,1584)
-LexToken(CLOSEBRACKET,')',1,1585)
-LexToken(ASSIGNMENT,'=',1,1586)
-LexToken(VAR,'list',1,1587)
-LexToken(OPENBRACKET,'(',1,1591)
-LexToken(VAR,'Ron',1,1592)
-LexToken(COMMA,',',1,1595)
-LexToken(VAR,'Roff',1,1596)
-LexToken(CLOSEBRACKET,')',1,1600)
-LexToken(EOL,'\n',1,1601)
-LexToken(VAR,'graphics',1,1614)
-LexToken(DOT,'.',1,1622)
-LexToken(VAR,'exprs',1,1623)
-LexToken(ASSIGNMENT,'=',1,1628)
-LexToken(VAR,'exprs',1,1629)
-LexToken(EOL,'\n',1,1634)
-LexToken(VAR,'x',1,1647)
-LexToken(DOT,'.',1,1648)
-LexToken(VAR,'graphics',1,1649)
-LexToken(ASSIGNMENT,'=',1,1657)
-LexToken(VAR,'graphics',1,1658)
-LexToken(EOL,'\n',1,1666)
-LexToken(VAR,'x',1,1680)
-LexToken(DOT,'.',1,1681)
-LexToken(VAR,'model',1,1682)
-LexToken(ASSIGNMENT,'=',1,1687)
-LexToken(VAR,'model',1,1688)
-LexToken(EOL,'\n',1,1693)
-LexToken(BREAK,'break',1,1706)
-LexToken(EOL,'\n',1,1711)
-LexToken(END,'end',1,1720)
-LexToken(EOL,'\n',1,1723)
-LexToken(CASE,'case',1,1728)
-LexToken(DQSTRING,'"define"',1,1740)
-LexToken(THEN,'then',1,1742)
-LexToken(EOL,'\n',1,1746)
-LexToken(VAR,'model',1,1755)
-LexToken(ASSIGNMENT,'=',1,1760)
-LexToken(SCICOS_MODEL,'scicos_model',1,1761)
-LexToken(OPENBRACKET,'(',1,1773)
-LexToken(CLOSEBRACKET,')',1,1774)
-LexToken(EOL,'\n',1,1775)
-LexToken(VAR,'Ron',1,1784)
-LexToken(ASSIGNMENT,'=',1,1787)
-LexToken(NUMBER,'0.01',1,1788)
-LexToken(EOL,'\n',1,1792)
-LexToken(VAR,'Roff',1,1802)
-LexToken(ASSIGNMENT,'=',1,1806)
-LexToken(NUMBER,'1e5',1,1807)
-LexToken(EOL,'\n',1,1810)
-LexToken(VAR,'S',1,1820)
-LexToken(ASSIGNMENT,'=',1,1821)
-LexToken(OPENSQBRACKET,'[',1,1822)
-LexToken(DQSTRING,'"Ron"',1,1827)
-LexToken(SEMICOLON,';',1,1828)
-LexToken(DQSTRING,'"Roff"',1,1834)
-LexToken(CLOSESQBRACKET,']',1,1835)
-LexToken(EOL,'\n',1,1836)
-LexToken(VAR,'Z',1,1846)
-LexToken(ASSIGNMENT,'=',1,1847)
-LexToken(VAR,'eval',1,1848)
-LexToken(OPENBRACKET,'(',1,1852)
-LexToken(VAR,'S',1,1853)
-LexToken(CLOSEBRACKET,')',1,1854)
-LexToken(EOL,'\n',1,1855)
-LexToken(VAR,'model',1,1865)
-LexToken(DOT,'.',1,1870)
-LexToken(VAR,'sim',1,1871)
-LexToken(ASSIGNMENT,'=',1,1874)
-LexToken(DQSTRING,'"Switch"',1,1882)
-LexToken(EOL,'\n',1,1883)
-LexToken(VAR,'model',1,1892)
-LexToken(DOT,'.',1,1897)
-LexToken(VAR,'blocktype',1,1898)
-LexToken(ASSIGNMENT,'=',1,1907)
-LexToken(DQSTRING,'"c"',1,1910)
-LexToken(EOL,'\n',1,1911)
-LexToken(VAR,'model',1,1920)
-LexToken(DOT,'.',1,1925)
-LexToken(VAR,'dep_ut',1,1926)
-LexToken(ASSIGNMENT,'=',1,1932)
-LexToken(OPENSQBRACKET,'[',1,1933)
-LexToken(PREVAR_BOOLEAN,'%t',1,1934)
-LexToken(PREVAR_BOOLEAN,'%f',1,1937)
-LexToken(CLOSESQBRACKET,']',1,1939)
-LexToken(EOL,'\n',1,1940)
-LexToken(VAR,'mo',1,1949)
-LexToken(ASSIGNMENT,'=',1,1951)
-LexToken(VAR,'modelica',1,1952)
-LexToken(OPENBRACKET,'(',1,1960)
-LexToken(CLOSEBRACKET,')',1,1961)
-LexToken(EOL,'\n',1,1962)
-LexToken(VAR,'mo',1,1971)
-LexToken(DOT,'.',1,1973)
-LexToken(VAR,'model',1,1974)
-LexToken(ASSIGNMENT,'=',1,1979)
-LexToken(VAR,'model',1,1980)
-LexToken(DOT,'.',1,1985)
-LexToken(VAR,'sim',1,1986)
-LexToken(EOL,'\n',1,1989)
-LexToken(VAR,'mo',1,1998)
-LexToken(DOT,'.',1,2000)
-LexToken(VAR,'inputs',1,2001)
-LexToken(ASSIGNMENT,'=',1,2007)
-LexToken(OPENSQBRACKET,'[',1,2008)
-LexToken(DQSTRING,'"p"',1,2011)
-LexToken(SEMICOLON,';',1,2012)
-LexToken(DQSTRING,'"inp"',1,2017)
-LexToken(CLOSESQBRACKET,']',1,2018)
-LexToken(EOL,'\n',1,2019)
-LexToken(VAR,'mo',1,2029)
-LexToken(DOT,'.',1,2031)
-LexToken(VAR,'outputs',1,2032)
-LexToken(ASSIGNMENT,'=',1,2039)
-LexToken(DQSTRING,'"n"',1,2042)
-LexToken(EOL,'\n',1,2043)
-LexToken(VAR,'mo',1,2053)
-LexToken(DOT,'.',1,2055)
-LexToken(VAR,'parameters',1,2056)
-LexToken(ASSIGNMENT,'=',1,2066)
-LexToken(VAR,'list',1,2067)
-LexToken(OPENBRACKET,'(',1,2071)
-LexToken(VAR,'S',1,2072)
-LexToken(COMMA,',',1,2073)
-LexToken(VAR,'Z',1,2074)
-LexToken(CLOSEBRACKET,')',1,2075)
-LexToken(EOL,'\n',1,2076)
-LexToken(VAR,'model',1,2086)
-LexToken(DOT,'.',1,2091)
-LexToken(VAR,'equations',1,2092)
-LexToken(ASSIGNMENT,'=',1,2101)
-LexToken(VAR,'mo',1,2102)
-LexToken(EOL,'\n',1,2104)
-LexToken(VAR,'model',1,2113)
-LexToken(DOT,'.',1,2118)
-LexToken(VAR,'in',1,2119)
-LexToken(ASSIGNMENT,'=',1,2121)
-LexToken(VAR,'ones',1,2122)
-LexToken(OPENBRACKET,'(',1,2126)
-LexToken(VAR,'size',1,2127)
-LexToken(OPENBRACKET,'(',1,2131)
-LexToken(VAR,'mo',1,2132)
-LexToken(DOT,'.',1,2134)
-LexToken(VAR,'inputs',1,2135)
-LexToken(COMMA,',',1,2141)
-LexToken(DQSTRING,'"*"',1,2144)
-LexToken(CLOSEBRACKET,')',1,2145)
-LexToken(COMMA,',',1,2146)
-LexToken(NUMBER,'1',1,2147)
-LexToken(CLOSEBRACKET,')',1,2148)
-LexToken(EOL,'\n',1,2149)
-LexToken(VAR,'model',1,2158)
-LexToken(DOT,'.',1,2163)
-LexToken(VAR,'out',1,2164)
-LexToken(ASSIGNMENT,'=',1,2167)
-LexToken(VAR,'ones',1,2168)
-LexToken(OPENBRACKET,'(',1,2172)
-LexToken(VAR,'size',1,2173)
-LexToken(OPENBRACKET,'(',1,2177)
-LexToken(VAR,'mo',1,2178)
-LexToken(DOT,'.',1,2180)
-LexToken(VAR,'outputs',1,2181)
-LexToken(COMMA,',',1,2188)
-LexToken(DQSTRING,'"*"',1,2191)
-LexToken(CLOSEBRACKET,')',1,2192)
-LexToken(COMMA,',',1,2193)
-LexToken(NUMBER,'1',1,2194)
-LexToken(CLOSEBRACKET,')',1,2195)
-LexToken(EOL,'\n',1,2196)
-LexToken(VAR,'model',1,2205)
-LexToken(DOT,'.',1,2210)
-LexToken(VAR,'rpar',1,2211)
-LexToken(ASSIGNMENT,'=',1,2215)
-LexToken(VAR,'Z',1,2216)
-LexToken(EOL,'\n',1,2217)
-LexToken(VAR,'exprs',1,2227)
-LexToken(ASSIGNMENT,'=',1,2232)
-LexToken(VAR,'string',1,2233)
-LexToken(OPENBRACKET,'(',1,2239)
-LexToken(VAR,'Z',1,2240)
-LexToken(CLOSEBRACKET,')',1,2241)
-LexToken(EOL,'\n',1,2242)
-LexToken(VAR,'gr_i',1,2252)
-LexToken(ASSIGNMENT,'=',1,2256)
-LexToken(OPENSQBRACKET,'[',1,2257)
-LexToken(CLOSESQBRACKET,']',1,2258)
-LexToken(EOL,'\n',1,2259)
-LexToken(VAR,'x',1,2269)
-LexToken(ASSIGNMENT,'=',1,2270)
-LexToken(VAR,'standard_define',1,2271)
-LexToken(OPENBRACKET,'(',1,2286)
-LexToken(OPENSQBRACKET,'[',1,2287)
-LexToken(NUMBER,'2',1,2288)
-LexToken(NUMBER,'2',1,2290)
-LexToken(CLOSESQBRACKET,']',1,2291)
-LexToken(COMMA,',',1,2292)
-LexToken(VAR,'model',1,2293)
-LexToken(COMMA,',',1,2298)
-LexToken(VAR,'exprs',1,2299)
-LexToken(COMMA,',',1,2304)
-LexToken(VAR,'list',1,2305)
-LexToken(OPENBRACKET,'(',1,2309)
-LexToken(VAR,'gr_i',1,2310)
-LexToken(COMMA,',',1,2314)
-LexToken(NUMBER,'0',1,2315)
-LexToken(CLOSEBRACKET,')',1,2316)
-LexToken(CLOSEBRACKET,')',1,2317)
-LexToken(EOL,'\n',1,2318)
-LexToken(VAR,'x',1,2327)
-LexToken(DOT,'.',1,2328)
-LexToken(VAR,'graphics',1,2329)
-LexToken(DOT,'.',1,2337)
-LexToken(VAR,'in_implicit',1,2338)
-LexToken(ASSIGNMENT,'=',1,2349)
-LexToken(OPENSQBRACKET,'[',1,2350)
-LexToken(DQSTRING,'"I"',1,2353)
-LexToken(SEMICOLON,';',1,2354)
-LexToken(DQSTRING,'"E"',1,2357)
-LexToken(CLOSESQBRACKET,']',1,2358)
-LexToken(EOL,'\n',1,2359)
-LexToken(VAR,'x',1,2368)
-LexToken(DOT,'.',1,2369)
-LexToken(VAR,'graphics',1,2370)
-LexToken(DOT,'.',1,2378)
-LexToken(VAR,'out_implicit',1,2379)
-LexToken(ASSIGNMENT,'=',1,2391)
-LexToken(OPENSQBRACKET,'[',1,2392)
-LexToken(DQSTRING,'"I"',1,2395)
-LexToken(CLOSESQBRACKET,']',1,2396)
-LexToken(EOL,'\n',1,2397)
-LexToken(END,'end',1,2402)
-LexToken(EOL,'\n',1,2405)
-LexToken(ENDFUNCTION,'endfunction',1,2406)
-LexToken(EOL,'\n',1,2417)
+/* autogenerated from "macros/Electrical/Switch.sci" */
+function Switch() {
+Switch.prototype.get = function Switch() {
+}
+Switch.prototype.set = function Switch() {
+x=arg1;
+graphics=arg1.graphics;
+exprs=graphics.exprs;
+model=arg1.model;
+while (true) {
+[ok,Ron,Roff,exprs]=scicos_getvalue("Set non-ideal electrical switch parameters",["Resistance in On state (Ohm)","Resistance in Off state (Ohm)"],list("vec",1,"vec",1),exprs);
+if (!ok) {
+break
+}
+model.equations.parameters[2]=list(Ron,Roff);
+graphics.exprs=exprs;
+x.graphics=graphics;
+x.model=model;
+break
+}
+}
+Switch.prototype.define = function Switch() {
+model=scicos_model();
+Ron=0.01;
+Roff=1e5;
+S=["Ron","Roff"];
+Z=eval(S);
+model.sim="Switch";
+model.blocktype="c";
+model.dep_ut=[true,None];
+mo=modelica();
+mo.model=model.sim;
+mo.inputs=["p","inp"];
+mo.outputs="n";
+mo.parameters=list(S,Z);
+model.equations=mo;
+model.in=ones(size(mo.inputs,"*"),1);
+model.out=ones(size(mo.outputs,"*"),1);
+model.rpar=Z;
+exprs=string(Z);
+gr_i=[];
+x=standard_define([2,2],model,exprs,list(gr_i,0));
+x.graphics.in_implicit=["I","E"];
+x.graphics.out_implicit=["I"];
+}
+Switch.prototype.details = function Switch() {
+}
+}
diff --git a/js/Electrical/VVsourceAC.js b/js/Electrical/VVsourceAC.js
index 6c124c4f..e380f412 100644
--- a/js/Electrical/VVsourceAC.js
+++ b/js/Electrical/VVsourceAC.js
@@ -1,349 +1,47 @@
-LexToken(EOL,'\n',1,10)
-LexToken(EOL,'\n',1,13)
-LexToken(EOL,'\n',1,73)
-LexToken(EOL,'\n',1,76)
-LexToken(EOL,'\n',1,148)
-LexToken(EOL,'\n',1,220)
-LexToken(EOL,'\n',1,289)
-LexToken(EOL,'\n',1,328)
-LexToken(EOL,'\n',1,331)
-LexToken(EOL,'\n',1,398)
-LexToken(EOL,'\n',1,464)
-LexToken(EOL,'\n',1,529)
-LexToken(EOL,'\n',1,577)
-LexToken(EOL,'\n',1,580)
-LexToken(EOL,'\n',1,649)
-LexToken(EOL,'\n',1,712)
-LexToken(EOL,'\n',1,794)
-LexToken(EOL,'\n',1,797)
-LexToken(EOL,'\n',1,828)
-LexToken(EOL,'\n',1,831)
-LexToken(EOL,'\n',1,832)
-LexToken(FUNCTION,'function',1,833)
-LexToken(OPENSQBRACKET,'[',1,842)
-LexToken(VAR,'x',1,843)
-LexToken(COMMA,',',1,844)
-LexToken(VAR,'y',1,845)
-LexToken(COMMA,',',1,846)
-LexToken(VAR,'typ',1,847)
-LexToken(CLOSESQBRACKET,']',1,850)
-LexToken(ASSIGNMENT,'=',1,851)
-LexToken(VAR,'VVsourceAC',1,852)
-LexToken(OPENBRACKET,'(',1,862)
-LexToken(VAR,'job',1,863)
-LexToken(COMMA,',',1,866)
-LexToken(VAR,'arg1',1,867)
-LexToken(COMMA,',',1,871)
-LexToken(VAR,'arg2',1,872)
-LexToken(CLOSEBRACKET,')',1,876)
-LexToken(EOL,'\n',1,877)
-LexToken(EOL,'\n',1,912)
-LexToken(EOL,'\n',1,965)
-LexToken(EOL,'\n',1,1042)
-LexToken(EOL,'\n',1,1093)
-LexToken(VAR,'x',1,1098)
-LexToken(ASSIGNMENT,'=',1,1099)
-LexToken(OPENSQBRACKET,'[',1,1100)
-LexToken(CLOSESQBRACKET,']',1,1101)
-LexToken(EOL,'\n',1,1102)
-LexToken(VAR,'y',1,1108)
-LexToken(ASSIGNMENT,'=',1,1109)
-LexToken(OPENSQBRACKET,'[',1,1110)
-LexToken(CLOSESQBRACKET,']',1,1111)
-LexToken(EOL,'\n',1,1112)
-LexToken(VAR,'typ',1,1118)
-LexToken(ASSIGNMENT,'=',1,1121)
-LexToken(OPENSQBRACKET,'[',1,1122)
-LexToken(CLOSESQBRACKET,']',1,1123)
-LexToken(EOL,'\n',1,1124)
-LexToken(SELECT,'select',1,1130)
-LexToken(VAR,'job',1,1137)
-LexToken(EOL,'\n',1,1140)
-LexToken(CASE,'case',1,1145)
-LexToken(DQSTRING,'"set"',1,1154)
-LexToken(THEN,'then',1,1156)
-LexToken(EOL,'\n',1,1160)
-LexToken(VAR,'x',1,1169)
-LexToken(ASSIGNMENT,'=',1,1170)
-LexToken(VAR,'arg1',1,1171)
-LexToken(EOL,'\n',1,1175)
-LexToken(VAR,'graphics',1,1185)
-LexToken(ASSIGNMENT,'=',1,1193)
-LexToken(VAR,'arg1',1,1194)
-LexToken(DOT,'.',1,1198)
-LexToken(VAR,'graphics',1,1199)
-LexToken(EOL,'\n',1,1207)
-LexToken(VAR,'exprs',1,1217)
-LexToken(ASSIGNMENT,'=',1,1222)
-LexToken(VAR,'graphics',1,1223)
-LexToken(DOT,'.',1,1231)
-LexToken(VAR,'exprs',1,1232)
-LexToken(EOL,'\n',1,1237)
-LexToken(VAR,'model',1,1246)
-LexToken(ASSIGNMENT,'=',1,1251)
-LexToken(VAR,'arg1',1,1252)
-LexToken(DOT,'.',1,1256)
-LexToken(VAR,'model',1,1257)
-LexToken(EOL,'\n',1,1262)
-LexToken(WHILE,'while',1,1272)
-LexToken(PREVAR_BOOLEAN,'%t',1,1278)
-LexToken(DO,'do',1,1281)
-LexToken(EOL,'\n',1,1283)
-LexToken(OPENSQBRACKET,'[',1,1296)
-LexToken(VAR,'ok',1,1297)
-LexToken(COMMA,',',1,1299)
-LexToken(VAR,'FR',1,1300)
-LexToken(COMMA,',',1,1302)
-LexToken(VAR,'exprs',1,1303)
-LexToken(CLOSESQBRACKET,']',1,1308)
-LexToken(ASSIGNMENT,'=',1,1309)
-LexToken(SCICOS_GETVALUE,'scicos_getvalue',1,1310)
-LexToken(OPENBRACKET,'(',1,1325)
-LexToken(DQSTRING,'"Set voltage source parameter"',1,1355)
-LexToken(COMMA,',',1,1356)
-LexToken(OPENSQBRACKET,'[',1,1372)
-LexToken(DQSTRING,'"Frequency (Hz)"',1,1388)
-LexToken(CLOSESQBRACKET,']',1,1389)
-LexToken(COMMA,',',1,1390)
-LexToken(VAR,'list',1,1406)
-LexToken(OPENBRACKET,'(',1,1410)
-LexToken(DQSTRING,'"vec"',1,1415)
-LexToken(COMMA,',',1,1416)
-LexToken(ADDITION,'-',1,1417)
-LexToken(NUMBER,'1',1,1418)
-LexToken(CLOSEBRACKET,')',1,1419)
-LexToken(COMMA,',',1,1420)
-LexToken(VAR,'exprs',1,1421)
-LexToken(CLOSEBRACKET,')',1,1426)
-LexToken(EOL,'\n',1,1427)
-LexToken(IF,'if',1,1440)
-LexToken(NOT,'~',1,1443)
-LexToken(VAR,'ok',1,1444)
-LexToken(THEN,'then',1,1447)
-LexToken(EOL,'\n',1,1451)
-LexToken(BREAK,'break',1,1468)
-LexToken(EOL,'\n',1,1473)
-LexToken(END,'end',1,1487)
-LexToken(EOL,'\n',1,1490)
-LexToken(VAR,'model',1,1503)
-LexToken(DOT,'.',1,1508)
-LexToken(VAR,'rpar',1,1509)
-LexToken(ASSIGNMENT,'=',1,1513)
-LexToken(OPENSQBRACKET,'[',1,1514)
-LexToken(VAR,'FR',1,1515)
-LexToken(CLOSESQBRACKET,']',1,1517)
-LexToken(EOL,'\n',1,1518)
-LexToken(VAR,'model',1,1531)
-LexToken(DOT,'.',1,1536)
-LexToken(VAR,'equations',1,1537)
-LexToken(DOT,'.',1,1546)
-LexToken(VAR,'parameters',1,1547)
-LexToken(OPENBRACKET,'(',1,1557)
-LexToken(NUMBER,'2',1,1558)
-LexToken(CLOSEBRACKET,')',1,1559)
-LexToken(ASSIGNMENT,'=',1,1560)
-LexToken(VAR,'list',1,1561)
-LexToken(OPENBRACKET,'(',1,1565)
-LexToken(VAR,'FR',1,1566)
-LexToken(CLOSEBRACKET,')',1,1568)
-LexToken(EOL,'\n',1,1569)
-LexToken(VAR,'graphics',1,1582)
-LexToken(DOT,'.',1,1590)
-LexToken(VAR,'exprs',1,1591)
-LexToken(ASSIGNMENT,'=',1,1596)
-LexToken(VAR,'exprs',1,1597)
-LexToken(EOL,'\n',1,1602)
-LexToken(VAR,'x',1,1615)
-LexToken(DOT,'.',1,1616)
-LexToken(VAR,'graphics',1,1617)
-LexToken(ASSIGNMENT,'=',1,1625)
-LexToken(VAR,'graphics',1,1626)
-LexToken(EOL,'\n',1,1634)
-LexToken(VAR,'x',1,1648)
-LexToken(DOT,'.',1,1649)
-LexToken(VAR,'model',1,1650)
-LexToken(ASSIGNMENT,'=',1,1655)
-LexToken(VAR,'model',1,1656)
-LexToken(EOL,'\n',1,1661)
-LexToken(BREAK,'break',1,1674)
-LexToken(EOL,'\n',1,1679)
-LexToken(END,'end',1,1688)
-LexToken(EOL,'\n',1,1691)
-LexToken(CASE,'case',1,1696)
-LexToken(DQSTRING,'"define"',1,1708)
-LexToken(THEN,'then',1,1710)
-LexToken(EOL,'\n',1,1714)
-LexToken(VAR,'model',1,1723)
-LexToken(ASSIGNMENT,'=',1,1728)
-LexToken(SCICOS_MODEL,'scicos_model',1,1729)
-LexToken(OPENBRACKET,'(',1,1741)
-LexToken(CLOSEBRACKET,')',1,1742)
-LexToken(EOL,'\n',1,1743)
-LexToken(VAR,'model',1,1752)
-LexToken(DOT,'.',1,1757)
-LexToken(VAR,'in',1,1758)
-LexToken(ASSIGNMENT,'=',1,1760)
-LexToken(OPENSQBRACKET,'[',1,1761)
-LexToken(NUMBER,'1',1,1762)
-LexToken(SEMICOLON,';',1,1763)
-LexToken(NUMBER,'1',1,1764)
-LexToken(CLOSESQBRACKET,']',1,1765)
-LexToken(EOL,'\n',1,1766)
-LexToken(VAR,'model',1,1776)
-LexToken(DOT,'.',1,1781)
-LexToken(VAR,'out',1,1782)
-LexToken(ASSIGNMENT,'=',1,1785)
-LexToken(OPENSQBRACKET,'[',1,1786)
-LexToken(NUMBER,'1',1,1787)
-LexToken(CLOSESQBRACKET,']',1,1788)
-LexToken(EOL,'\n',1,1789)
-LexToken(VAR,'VA',1,1799)
-LexToken(ASSIGNMENT,'=',1,1801)
-LexToken(NUMBER,'220',1,1802)
-LexToken(EOL,'\n',1,1805)
-LexToken(VAR,'FR',1,1814)
-LexToken(ASSIGNMENT,'=',1,1816)
-LexToken(NUMBER,'50',1,1817)
-LexToken(EOL,'\n',1,1819)
-LexToken(VAR,'model',1,1828)
-LexToken(DOT,'.',1,1833)
-LexToken(VAR,'rpar',1,1834)
-LexToken(ASSIGNMENT,'=',1,1838)
-LexToken(OPENSQBRACKET,'[',1,1839)
-LexToken(VAR,'FR',1,1840)
-LexToken(CLOSESQBRACKET,']',1,1842)
-LexToken(EOL,'\n',1,1843)
-LexToken(VAR,'model',1,1852)
-LexToken(DOT,'.',1,1857)
-LexToken(VAR,'sim',1,1858)
-LexToken(ASSIGNMENT,'=',1,1861)
-LexToken(DQSTRING,'"VVsourceAC"',1,1873)
-LexToken(EOL,'\n',1,1874)
-LexToken(VAR,'model',1,1883)
-LexToken(DOT,'.',1,1888)
-LexToken(VAR,'blocktype',1,1889)
-LexToken(ASSIGNMENT,'=',1,1898)
-LexToken(DQSTRING,'"c"',1,1901)
-LexToken(EOL,'\n',1,1902)
-LexToken(VAR,'model',1,1911)
-LexToken(DOT,'.',1,1916)
-LexToken(VAR,'dep_ut',1,1917)
-LexToken(ASSIGNMENT,'=',1,1923)
-LexToken(OPENSQBRACKET,'[',1,1924)
-LexToken(PREVAR_BOOLEAN,'%t',1,1925)
-LexToken(PREVAR_BOOLEAN,'%f',1,1928)
-LexToken(CLOSESQBRACKET,']',1,1930)
-LexToken(EOL,'\n',1,1931)
-LexToken(VAR,'mo',1,1940)
-LexToken(ASSIGNMENT,'=',1,1942)
-LexToken(VAR,'modelica',1,1943)
-LexToken(OPENBRACKET,'(',1,1951)
-LexToken(CLOSEBRACKET,')',1,1952)
-LexToken(EOL,'\n',1,1953)
-LexToken(VAR,'mo',1,1962)
-LexToken(DOT,'.',1,1964)
-LexToken(VAR,'model',1,1965)
-LexToken(ASSIGNMENT,'=',1,1970)
-LexToken(DQSTRING,'"VVsourceAC"',1,1982)
-LexToken(EOL,'\n',1,1983)
-LexToken(VAR,'mo',1,1992)
-LexToken(DOT,'.',1,1994)
-LexToken(VAR,'inputs',1,1995)
-LexToken(ASSIGNMENT,'=',1,2001)
-LexToken(OPENSQBRACKET,'[',1,2002)
-LexToken(DQSTRING,'"p"',1,2005)
-LexToken(COMMA,',',1,2006)
-LexToken(DQSTRING,'"VA"',1,2010)
-LexToken(CLOSESQBRACKET,']',1,2011)
-LexToken(EOL,'\n',1,2012)
-LexToken(VAR,'mo',1,2022)
-LexToken(DOT,'.',1,2024)
-LexToken(VAR,'outputs',1,2025)
-LexToken(ASSIGNMENT,'=',1,2032)
-LexToken(DQSTRING,'"n"',1,2035)
-LexToken(EOL,'\n',1,2036)
-LexToken(VAR,'mo',1,2046)
-LexToken(DOT,'.',1,2048)
-LexToken(VAR,'parameters',1,2049)
-LexToken(ASSIGNMENT,'=',1,2059)
-LexToken(VAR,'list',1,2060)
-LexToken(OPENBRACKET,'(',1,2064)
-LexToken(OPENSQBRACKET,'[',1,2065)
-LexToken(DQSTRING,'"f"',1,2068)
-LexToken(CLOSESQBRACKET,']',1,2069)
-LexToken(COMMA,',',1,2070)
-LexToken(VAR,'list',1,2071)
-LexToken(OPENBRACKET,'(',1,2075)
-LexToken(VAR,'FR',1,2076)
-LexToken(CLOSEBRACKET,')',1,2078)
-LexToken(CLOSEBRACKET,')',1,2079)
-LexToken(EOL,'\n',1,2080)
-LexToken(VAR,'model',1,2089)
-LexToken(DOT,'.',1,2094)
-LexToken(VAR,'equations',1,2095)
-LexToken(ASSIGNMENT,'=',1,2104)
-LexToken(VAR,'mo',1,2105)
-LexToken(EOL,'\n',1,2107)
-LexToken(EOL,'\n',1,2108)
-LexToken(VAR,'exprs',1,2117)
-LexToken(ASSIGNMENT,'=',1,2122)
-LexToken(OPENSQBRACKET,'[',1,2123)
-LexToken(VAR,'string',1,2124)
-LexToken(OPENBRACKET,'(',1,2130)
-LexToken(VAR,'FR',1,2131)
-LexToken(CLOSEBRACKET,')',1,2133)
-LexToken(CLOSESQBRACKET,']',1,2134)
-LexToken(EOL,'\n',1,2135)
-LexToken(VAR,'gr_i',1,2144)
-LexToken(ASSIGNMENT,'=',1,2148)
-LexToken(OPENSQBRACKET,'[',1,2149)
-LexToken(CLOSESQBRACKET,']',1,2150)
-LexToken(EOL,'\n',1,2151)
-LexToken(EOL,'\n',1,2152)
-LexToken(VAR,'x',1,2161)
-LexToken(ASSIGNMENT,'=',1,2162)
-LexToken(VAR,'standard_define',1,2163)
-LexToken(OPENBRACKET,'(',1,2178)
-LexToken(OPENSQBRACKET,'[',1,2179)
-LexToken(NUMBER,'2',1,2180)
-LexToken(NUMBER,'2',1,2182)
-LexToken(CLOSESQBRACKET,']',1,2183)
-LexToken(COMMA,',',1,2184)
-LexToken(VAR,'model',1,2185)
-LexToken(COMMA,',',1,2190)
-LexToken(VAR,'exprs',1,2191)
-LexToken(COMMA,',',1,2196)
-LexToken(VAR,'list',1,2197)
-LexToken(OPENBRACKET,'(',1,2201)
-LexToken(VAR,'gr_i',1,2202)
-LexToken(COMMA,',',1,2206)
-LexToken(NUMBER,'0',1,2207)
-LexToken(CLOSEBRACKET,')',1,2208)
-LexToken(CLOSEBRACKET,')',1,2209)
-LexToken(EOL,'\n',1,2210)
-LexToken(VAR,'x',1,2219)
-LexToken(DOT,'.',1,2220)
-LexToken(VAR,'graphics',1,2221)
-LexToken(DOT,'.',1,2229)
-LexToken(VAR,'in_implicit',1,2230)
-LexToken(ASSIGNMENT,'=',1,2241)
-LexToken(OPENSQBRACKET,'[',1,2242)
-LexToken(DQSTRING,'"I"',1,2245)
-LexToken(COMMA,',',1,2246)
-LexToken(DQSTRING,'"E"',1,2249)
-LexToken(CLOSESQBRACKET,']',1,2250)
-LexToken(EOL,'\n',1,2251)
-LexToken(VAR,'x',1,2260)
-LexToken(DOT,'.',1,2261)
-LexToken(VAR,'graphics',1,2262)
-LexToken(DOT,'.',1,2270)
-LexToken(VAR,'out_implicit',1,2271)
-LexToken(ASSIGNMENT,'=',1,2283)
-LexToken(OPENSQBRACKET,'[',1,2284)
-LexToken(DQSTRING,'"I"',1,2287)
-LexToken(CLOSESQBRACKET,']',1,2288)
-LexToken(EOL,'\n',1,2289)
-LexToken(END,'end',1,2294)
-LexToken(EOL,'\n',1,2297)
-LexToken(ENDFUNCTION,'endfunction',1,2298)
-LexToken(EOL,'\n',1,2309)
+/* autogenerated from "macros/Electrical/VVsourceAC.sci" */
+function VVsourceAC() {
+VVsourceAC.prototype.get = function VVsourceAC() {
+}
+VVsourceAC.prototype.set = function VVsourceAC() {
+x=arg1;
+graphics=arg1.graphics;
+exprs=graphics.exprs;
+model=arg1.model;
+while (true) {
+[ok,FR,exprs]=scicos_getvalue("Set voltage source parameter",["Frequency (Hz)"],list("vec",-1),exprs);
+if (!ok) {
+break
+}
+model.rpar=[FR];
+model.equations.parameters[2]=list(FR);
+graphics.exprs=exprs;
+x.graphics=graphics;
+x.model=model;
+break
+}
+}
+VVsourceAC.prototype.define = function VVsourceAC() {
+model=scicos_model();
+model.in=[1,1];
+model.out=[1];
+VA=220;
+FR=50;
+model.rpar=[FR];
+model.sim="VVsourceAC";
+model.blocktype="c";
+model.dep_ut=[true,None];
+mo=modelica();
+mo.model="VVsourceAC";
+mo.inputs=["p","VA"];
+mo.outputs="n";
+mo.parameters=list(["f"],list(FR));
+model.equations=mo;
+exprs=[string(FR)];
+gr_i=[];
+x=standard_define([2,2],model,exprs,list(gr_i,0));
+x.graphics.in_implicit=["I","E"];
+x.graphics.out_implicit=["I"];
+}
+VVsourceAC.prototype.details = function VVsourceAC() {
+}
+}
diff --git a/js/Electrical/VariableResistor.js b/js/Electrical/VariableResistor.js
index 97931642..b692ac66 100644
--- a/js/Electrical/VariableResistor.js
+++ b/js/Electrical/VariableResistor.js
@@ -1,227 +1,28 @@
-LexToken(EOL,'\n',1,10)
-LexToken(EOL,'\n',1,13)
-LexToken(EOL,'\n',1,73)
-LexToken(EOL,'\n',1,76)
-LexToken(EOL,'\n',1,148)
-LexToken(EOL,'\n',1,220)
-LexToken(EOL,'\n',1,289)
-LexToken(EOL,'\n',1,328)
-LexToken(EOL,'\n',1,331)
-LexToken(EOL,'\n',1,398)
-LexToken(EOL,'\n',1,464)
-LexToken(EOL,'\n',1,529)
-LexToken(EOL,'\n',1,577)
-LexToken(EOL,'\n',1,580)
-LexToken(EOL,'\n',1,649)
-LexToken(EOL,'\n',1,712)
-LexToken(EOL,'\n',1,794)
-LexToken(EOL,'\n',1,797)
-LexToken(EOL,'\n',1,828)
-LexToken(EOL,'\n',1,831)
-LexToken(EOL,'\n',1,832)
-LexToken(FUNCTION,'function',1,833)
-LexToken(OPENSQBRACKET,'[',1,842)
-LexToken(VAR,'x',1,843)
-LexToken(COMMA,',',1,844)
-LexToken(VAR,'y',1,845)
-LexToken(COMMA,',',1,846)
-LexToken(VAR,'typ',1,847)
-LexToken(CLOSESQBRACKET,']',1,850)
-LexToken(ASSIGNMENT,'=',1,851)
-LexToken(VAR,'VariableResistor',1,852)
-LexToken(OPENBRACKET,'(',1,868)
-LexToken(VAR,'job',1,869)
-LexToken(COMMA,',',1,872)
-LexToken(VAR,'arg1',1,873)
-LexToken(COMMA,',',1,877)
-LexToken(VAR,'arg2',1,878)
-LexToken(CLOSEBRACKET,')',1,882)
-LexToken(EOL,'\n',1,883)
-LexToken(EOL,'\n',1,918)
-LexToken(EOL,'\n',1,971)
-LexToken(EOL,'\n',1,1048)
-LexToken(EOL,'\n',1,1099)
-LexToken(VAR,'x',1,1104)
-LexToken(ASSIGNMENT,'=',1,1105)
-LexToken(OPENSQBRACKET,'[',1,1106)
-LexToken(CLOSESQBRACKET,']',1,1107)
-LexToken(EOL,'\n',1,1108)
-LexToken(VAR,'y',1,1114)
-LexToken(ASSIGNMENT,'=',1,1115)
-LexToken(OPENSQBRACKET,'[',1,1116)
-LexToken(CLOSESQBRACKET,']',1,1117)
-LexToken(EOL,'\n',1,1118)
-LexToken(VAR,'typ',1,1124)
-LexToken(ASSIGNMENT,'=',1,1127)
-LexToken(OPENSQBRACKET,'[',1,1128)
-LexToken(CLOSESQBRACKET,']',1,1129)
-LexToken(EOL,'\n',1,1130)
-LexToken(SELECT,'select',1,1136)
-LexToken(VAR,'job',1,1143)
-LexToken(EOL,'\n',1,1146)
-LexToken(CASE,'case',1,1151)
-LexToken(DQSTRING,'"set"',1,1160)
-LexToken(THEN,'then',1,1162)
-LexToken(EOL,'\n',1,1166)
-LexToken(VAR,'x',1,1175)
-LexToken(ASSIGNMENT,'=',1,1176)
-LexToken(VAR,'arg1',1,1177)
-LexToken(EOL,'\n',1,1181)
-LexToken(CASE,'case',1,1187)
-LexToken(DQSTRING,'"define"',1,1199)
-LexToken(THEN,'then',1,1201)
-LexToken(EOL,'\n',1,1205)
-LexToken(VAR,'model',1,1214)
-LexToken(ASSIGNMENT,'=',1,1219)
-LexToken(SCICOS_MODEL,'scicos_model',1,1220)
-LexToken(OPENBRACKET,'(',1,1232)
-LexToken(CLOSEBRACKET,')',1,1233)
-LexToken(EOL,'\n',1,1234)
-LexToken(VAR,'model',1,1243)
-LexToken(DOT,'.',1,1248)
-LexToken(VAR,'sim',1,1249)
-LexToken(ASSIGNMENT,'=',1,1252)
-LexToken(DQSTRING,'"VariableResistor"',1,1270)
-LexToken(EOL,'\n',1,1271)
-LexToken(VAR,'model',1,1280)
-LexToken(DOT,'.',1,1285)
-LexToken(VAR,'blocktype',1,1286)
-LexToken(ASSIGNMENT,'=',1,1295)
-LexToken(DQSTRING,'"c"',1,1298)
-LexToken(EOL,'\n',1,1299)
-LexToken(VAR,'model',1,1308)
-LexToken(DOT,'.',1,1313)
-LexToken(VAR,'dep_ut',1,1314)
-LexToken(ASSIGNMENT,'=',1,1320)
-LexToken(OPENSQBRACKET,'[',1,1321)
-LexToken(PREVAR_BOOLEAN,'%t',1,1322)
-LexToken(PREVAR_BOOLEAN,'%f',1,1325)
-LexToken(CLOSESQBRACKET,']',1,1327)
-LexToken(EOL,'\n',1,1328)
-LexToken(VAR,'mo',1,1337)
-LexToken(ASSIGNMENT,'=',1,1339)
-LexToken(VAR,'modelica',1,1340)
-LexToken(OPENBRACKET,'(',1,1348)
-LexToken(CLOSEBRACKET,')',1,1349)
-LexToken(EOL,'\n',1,1350)
-LexToken(VAR,'mo',1,1359)
-LexToken(DOT,'.',1,1361)
-LexToken(VAR,'model',1,1362)
-LexToken(ASSIGNMENT,'=',1,1367)
-LexToken(DQSTRING,'"VariableResistor"',1,1385)
-LexToken(EOL,'\n',1,1386)
-LexToken(VAR,'mo',1,1395)
-LexToken(DOT,'.',1,1397)
-LexToken(VAR,'inputs',1,1398)
-LexToken(ASSIGNMENT,'=',1,1404)
-LexToken(OPENSQBRACKET,'[',1,1405)
-LexToken(DQSTRING,'"p"',1,1408)
-LexToken(COMMA,',',1,1409)
-LexToken(DQSTRING,'"R"',1,1412)
-LexToken(CLOSESQBRACKET,']',1,1413)
-LexToken(EOL,'\n',1,1414)
-LexToken(VAR,'mo',1,1424)
-LexToken(DOT,'.',1,1426)
-LexToken(VAR,'outputs',1,1427)
-LexToken(ASSIGNMENT,'=',1,1434)
-LexToken(DQSTRING,'"n"',1,1437)
-LexToken(EOL,'\n',1,1438)
-LexToken(VAR,'model',1,1448)
-LexToken(DOT,'.',1,1453)
-LexToken(VAR,'equations',1,1454)
-LexToken(ASSIGNMENT,'=',1,1463)
-LexToken(VAR,'mo',1,1464)
-LexToken(EOL,'\n',1,1466)
-LexToken(VAR,'model',1,1475)
-LexToken(DOT,'.',1,1480)
-LexToken(VAR,'in',1,1481)
-LexToken(ASSIGNMENT,'=',1,1483)
-LexToken(VAR,'ones',1,1484)
-LexToken(OPENBRACKET,'(',1,1488)
-LexToken(VAR,'size',1,1489)
-LexToken(OPENBRACKET,'(',1,1493)
-LexToken(VAR,'mo',1,1494)
-LexToken(DOT,'.',1,1496)
-LexToken(VAR,'inputs',1,1497)
-LexToken(COMMA,',',1,1503)
-LexToken(DQSTRING,'"*"',1,1506)
-LexToken(CLOSEBRACKET,')',1,1507)
-LexToken(COMMA,',',1,1508)
-LexToken(NUMBER,'1',1,1509)
-LexToken(CLOSEBRACKET,')',1,1510)
-LexToken(EOL,'\n',1,1511)
-LexToken(VAR,'model',1,1520)
-LexToken(DOT,'.',1,1525)
-LexToken(VAR,'out',1,1526)
-LexToken(ASSIGNMENT,'=',1,1529)
-LexToken(VAR,'ones',1,1530)
-LexToken(OPENBRACKET,'(',1,1534)
-LexToken(VAR,'size',1,1535)
-LexToken(OPENBRACKET,'(',1,1539)
-LexToken(VAR,'mo',1,1540)
-LexToken(DOT,'.',1,1542)
-LexToken(VAR,'outputs',1,1543)
-LexToken(COMMA,',',1,1550)
-LexToken(DQSTRING,'"*"',1,1553)
-LexToken(CLOSEBRACKET,')',1,1554)
-LexToken(COMMA,',',1,1555)
-LexToken(NUMBER,'1',1,1556)
-LexToken(CLOSEBRACKET,')',1,1557)
-LexToken(EOL,'\n',1,1558)
-LexToken(VAR,'exprs',1,1567)
-LexToken(ASSIGNMENT,'=',1,1572)
-LexToken(OPENSQBRACKET,'[',1,1573)
-LexToken(CLOSESQBRACKET,']',1,1574)
-LexToken(EOL,'\n',1,1575)
-LexToken(VAR,'gr_i',1,1584)
-LexToken(ASSIGNMENT,'=',1,1588)
-LexToken(OPENSQBRACKET,'[',1,1589)
-LexToken(CLOSESQBRACKET,']',1,1590)
-LexToken(EOL,'\n',1,1591)
-LexToken(VAR,'x',1,1600)
-LexToken(ASSIGNMENT,'=',1,1601)
-LexToken(VAR,'standard_define',1,1602)
-LexToken(OPENBRACKET,'(',1,1617)
-LexToken(OPENSQBRACKET,'[',1,1618)
-LexToken(NUMBER,'2',1,1619)
-LexToken(NUMBER,'2',1,1621)
-LexToken(CLOSESQBRACKET,']',1,1622)
-LexToken(COMMA,',',1,1623)
-LexToken(VAR,'model',1,1624)
-LexToken(COMMA,',',1,1629)
-LexToken(VAR,'exprs',1,1630)
-LexToken(COMMA,',',1,1635)
-LexToken(VAR,'list',1,1636)
-LexToken(OPENBRACKET,'(',1,1640)
-LexToken(VAR,'gr_i',1,1641)
-LexToken(COMMA,',',1,1645)
-LexToken(NUMBER,'0',1,1646)
-LexToken(CLOSEBRACKET,')',1,1647)
-LexToken(CLOSEBRACKET,')',1,1648)
-LexToken(EOL,'\n',1,1649)
-LexToken(VAR,'x',1,1658)
-LexToken(DOT,'.',1,1659)
-LexToken(VAR,'graphics',1,1660)
-LexToken(DOT,'.',1,1668)
-LexToken(VAR,'in_implicit',1,1669)
-LexToken(ASSIGNMENT,'=',1,1680)
-LexToken(OPENSQBRACKET,'[',1,1681)
-LexToken(DQSTRING,'"I"',1,1684)
-LexToken(COMMA,',',1,1685)
-LexToken(DQSTRING,'"E"',1,1688)
-LexToken(CLOSESQBRACKET,']',1,1689)
-LexToken(EOL,'\n',1,1690)
-LexToken(VAR,'x',1,1699)
-LexToken(DOT,'.',1,1700)
-LexToken(VAR,'graphics',1,1701)
-LexToken(DOT,'.',1,1709)
-LexToken(VAR,'out_implicit',1,1710)
-LexToken(ASSIGNMENT,'=',1,1722)
-LexToken(OPENSQBRACKET,'[',1,1723)
-LexToken(DQSTRING,'"I"',1,1726)
-LexToken(CLOSESQBRACKET,']',1,1727)
-LexToken(EOL,'\n',1,1728)
-LexToken(END,'end',1,1733)
-LexToken(EOL,'\n',1,1736)
-LexToken(ENDFUNCTION,'endfunction',1,1737)
-LexToken(EOL,'\n',1,1748)
+/* autogenerated from "macros/Electrical/VariableResistor.sci" */
+function VariableResistor() {
+VariableResistor.prototype.get = function VariableResistor() {
+}
+VariableResistor.prototype.set = function VariableResistor() {
+x=arg1;
+}
+VariableResistor.prototype.define = function VariableResistor() {
+model=scicos_model();
+model.sim="VariableResistor";
+model.blocktype="c";
+model.dep_ut=[true,None];
+mo=modelica();
+mo.model="VariableResistor";
+mo.inputs=["p","R"];
+mo.outputs="n";
+model.equations=mo;
+model.in=ones(size(mo.inputs,"*"),1);
+model.out=ones(size(mo.outputs,"*"),1);
+exprs=[];
+gr_i=[];
+x=standard_define([2,2],model,exprs,list(gr_i,0));
+x.graphics.in_implicit=["I","E"];
+x.graphics.out_implicit=["I"];
+}
+VariableResistor.prototype.details = function VariableResistor() {
+}
+}
diff --git a/js/Electrical/VoltageSensor.js b/js/Electrical/VoltageSensor.js
index d56667e9..6889a7e7 100644
--- a/js/Electrical/VoltageSensor.js
+++ b/js/Electrical/VoltageSensor.js
@@ -1,203 +1,28 @@
-LexToken(EOL,'\n',1,10)
-LexToken(EOL,'\n',1,13)
-LexToken(EOL,'\n',1,73)
-LexToken(EOL,'\n',1,76)
-LexToken(EOL,'\n',1,148)
-LexToken(EOL,'\n',1,220)
-LexToken(EOL,'\n',1,289)
-LexToken(EOL,'\n',1,328)
-LexToken(EOL,'\n',1,331)
-LexToken(EOL,'\n',1,398)
-LexToken(EOL,'\n',1,464)
-LexToken(EOL,'\n',1,529)
-LexToken(EOL,'\n',1,577)
-LexToken(EOL,'\n',1,580)
-LexToken(EOL,'\n',1,649)
-LexToken(EOL,'\n',1,712)
-LexToken(EOL,'\n',1,794)
-LexToken(EOL,'\n',1,797)
-LexToken(EOL,'\n',1,828)
-LexToken(EOL,'\n',1,831)
-LexToken(EOL,'\n',1,832)
-LexToken(FUNCTION,'function',1,833)
-LexToken(OPENSQBRACKET,'[',1,842)
-LexToken(VAR,'x',1,843)
-LexToken(COMMA,',',1,844)
-LexToken(VAR,'y',1,845)
-LexToken(COMMA,',',1,846)
-LexToken(VAR,'typ',1,847)
-LexToken(CLOSESQBRACKET,']',1,850)
-LexToken(ASSIGNMENT,'=',1,851)
-LexToken(VAR,'VoltageSensor',1,852)
-LexToken(OPENBRACKET,'(',1,865)
-LexToken(VAR,'job',1,866)
-LexToken(COMMA,',',1,869)
-LexToken(VAR,'arg1',1,870)
-LexToken(COMMA,',',1,874)
-LexToken(VAR,'arg2',1,875)
-LexToken(CLOSEBRACKET,')',1,879)
-LexToken(EOL,'\n',1,880)
-LexToken(VAR,'x',1,885)
-LexToken(ASSIGNMENT,'=',1,886)
-LexToken(OPENSQBRACKET,'[',1,887)
-LexToken(CLOSESQBRACKET,']',1,888)
-LexToken(EOL,'\n',1,889)
-LexToken(VAR,'y',1,895)
-LexToken(ASSIGNMENT,'=',1,896)
-LexToken(OPENSQBRACKET,'[',1,897)
-LexToken(CLOSESQBRACKET,']',1,898)
-LexToken(EOL,'\n',1,899)
-LexToken(VAR,'typ',1,905)
-LexToken(ASSIGNMENT,'=',1,908)
-LexToken(OPENSQBRACKET,'[',1,909)
-LexToken(CLOSESQBRACKET,']',1,910)
-LexToken(EOL,'\n',1,911)
-LexToken(SELECT,'select',1,917)
-LexToken(VAR,'job',1,924)
-LexToken(EOL,'\n',1,927)
-LexToken(CASE,'case',1,932)
-LexToken(DQSTRING,'"set"',1,941)
-LexToken(THEN,'then',1,943)
-LexToken(EOL,'\n',1,947)
-LexToken(VAR,'x',1,956)
-LexToken(ASSIGNMENT,'=',1,957)
-LexToken(VAR,'arg1',1,958)
-LexToken(EOL,'\n',1,962)
-LexToken(CASE,'case',1,968)
-LexToken(DQSTRING,'"define"',1,980)
-LexToken(THEN,'then',1,982)
-LexToken(EOL,'\n',1,986)
-LexToken(VAR,'model',1,995)
-LexToken(ASSIGNMENT,'=',1,1000)
-LexToken(SCICOS_MODEL,'scicos_model',1,1001)
-LexToken(OPENBRACKET,'(',1,1013)
-LexToken(CLOSEBRACKET,')',1,1014)
-LexToken(EOL,'\n',1,1015)
-LexToken(VAR,'model',1,1024)
-LexToken(DOT,'.',1,1029)
-LexToken(VAR,'in',1,1030)
-LexToken(ASSIGNMENT,'=',1,1032)
-LexToken(NUMBER,'1',1,1033)
-LexToken(EOL,'\n',1,1034)
-LexToken(VAR,'model',1,1044)
-LexToken(DOT,'.',1,1049)
-LexToken(VAR,'out',1,1050)
-LexToken(ASSIGNMENT,'=',1,1053)
-LexToken(OPENSQBRACKET,'[',1,1054)
-LexToken(NUMBER,'1',1,1055)
-LexToken(SEMICOLON,';',1,1056)
-LexToken(NUMBER,'1',1,1058)
-LexToken(CLOSESQBRACKET,']',1,1059)
-LexToken(EOL,'\n',1,1060)
-LexToken(VAR,'model',1,1070)
-LexToken(DOT,'.',1,1075)
-LexToken(VAR,'sim',1,1076)
-LexToken(ASSIGNMENT,'=',1,1079)
-LexToken(DQSTRING,'"VoltageSensor"',1,1094)
-LexToken(EOL,'\n',1,1095)
-LexToken(VAR,'model',1,1104)
-LexToken(DOT,'.',1,1109)
-LexToken(VAR,'blocktype',1,1110)
-LexToken(ASSIGNMENT,'=',1,1119)
-LexToken(DQSTRING,'"c"',1,1122)
-LexToken(EOL,'\n',1,1123)
-LexToken(VAR,'model',1,1132)
-LexToken(DOT,'.',1,1137)
-LexToken(VAR,'dep_ut',1,1138)
-LexToken(ASSIGNMENT,'=',1,1144)
-LexToken(OPENSQBRACKET,'[',1,1145)
-LexToken(PREVAR_BOOLEAN,'%t',1,1146)
-LexToken(PREVAR_BOOLEAN,'%f',1,1149)
-LexToken(CLOSESQBRACKET,']',1,1151)
-LexToken(EOL,'\n',1,1152)
-LexToken(VAR,'mo',1,1161)
-LexToken(ASSIGNMENT,'=',1,1163)
-LexToken(VAR,'modelica',1,1164)
-LexToken(OPENBRACKET,'(',1,1172)
-LexToken(CLOSEBRACKET,')',1,1173)
-LexToken(EOL,'\n',1,1174)
-LexToken(VAR,'mo',1,1183)
-LexToken(DOT,'.',1,1185)
-LexToken(VAR,'model',1,1186)
-LexToken(ASSIGNMENT,'=',1,1191)
-LexToken(DQSTRING,'"VoltageSensor"',1,1206)
-LexToken(EOL,'\n',1,1207)
-LexToken(VAR,'mo',1,1216)
-LexToken(DOT,'.',1,1218)
-LexToken(VAR,'inputs',1,1219)
-LexToken(ASSIGNMENT,'=',1,1225)
-LexToken(DQSTRING,'"p"',1,1228)
-LexToken(EOL,'\n',1,1229)
-LexToken(VAR,'mo',1,1239)
-LexToken(DOT,'.',1,1241)
-LexToken(VAR,'outputs',1,1242)
-LexToken(ASSIGNMENT,'=',1,1249)
-LexToken(OPENSQBRACKET,'[',1,1250)
-LexToken(DQSTRING,'"n"',1,1253)
-LexToken(SEMICOLON,';',1,1254)
-LexToken(DQSTRING,'"v"',1,1257)
-LexToken(CLOSESQBRACKET,']',1,1258)
-LexToken(EOL,'\n',1,1259)
-LexToken(VAR,'model',1,1268)
-LexToken(DOT,'.',1,1273)
-LexToken(VAR,'equations',1,1274)
-LexToken(ASSIGNMENT,'=',1,1283)
-LexToken(VAR,'mo',1,1284)
-LexToken(EOL,'\n',1,1286)
-LexToken(VAR,'exprs',1,1295)
-LexToken(ASSIGNMENT,'=',1,1300)
-LexToken(OPENSQBRACKET,'[',1,1301)
-LexToken(CLOSESQBRACKET,']',1,1302)
-LexToken(EOL,'\n',1,1303)
-LexToken(VAR,'gr_i',1,1312)
-LexToken(ASSIGNMENT,'=',1,1316)
-LexToken(OPENSQBRACKET,'[',1,1317)
-LexToken(CLOSESQBRACKET,']',1,1318)
-LexToken(EOL,'\n',1,1319)
-LexToken(VAR,'x',1,1328)
-LexToken(ASSIGNMENT,'=',1,1329)
-LexToken(VAR,'standard_define',1,1330)
-LexToken(OPENBRACKET,'(',1,1345)
-LexToken(OPENSQBRACKET,'[',1,1346)
-LexToken(NUMBER,'2',1,1347)
-LexToken(NUMBER,'2',1,1349)
-LexToken(CLOSESQBRACKET,']',1,1350)
-LexToken(COMMA,',',1,1351)
-LexToken(VAR,'model',1,1352)
-LexToken(COMMA,',',1,1357)
-LexToken(VAR,'exprs',1,1358)
-LexToken(COMMA,',',1,1363)
-LexToken(VAR,'list',1,1364)
-LexToken(OPENBRACKET,'(',1,1368)
-LexToken(VAR,'gr_i',1,1369)
-LexToken(COMMA,',',1,1373)
-LexToken(NUMBER,'0',1,1374)
-LexToken(CLOSEBRACKET,')',1,1375)
-LexToken(CLOSEBRACKET,')',1,1376)
-LexToken(EOL,'\n',1,1377)
-LexToken(VAR,'x',1,1386)
-LexToken(DOT,'.',1,1387)
-LexToken(VAR,'graphics',1,1388)
-LexToken(DOT,'.',1,1396)
-LexToken(VAR,'in_implicit',1,1397)
-LexToken(ASSIGNMENT,'=',1,1408)
-LexToken(OPENSQBRACKET,'[',1,1409)
-LexToken(DQSTRING,'"I"',1,1412)
-LexToken(CLOSESQBRACKET,']',1,1413)
-LexToken(EOL,'\n',1,1414)
-LexToken(VAR,'x',1,1423)
-LexToken(DOT,'.',1,1424)
-LexToken(VAR,'graphics',1,1425)
-LexToken(DOT,'.',1,1433)
-LexToken(VAR,'out_implicit',1,1434)
-LexToken(ASSIGNMENT,'=',1,1446)
-LexToken(OPENSQBRACKET,'[',1,1447)
-LexToken(DQSTRING,'"I"',1,1450)
-LexToken(SEMICOLON,';',1,1451)
-LexToken(DQSTRING,'"E"',1,1454)
-LexToken(CLOSESQBRACKET,']',1,1455)
-LexToken(EOL,'\n',1,1456)
-LexToken(END,'end',1,1461)
-LexToken(EOL,'\n',1,1464)
-LexToken(ENDFUNCTION,'endfunction',1,1465)
-LexToken(EOL,'\n',1,1476)
+/* autogenerated from "macros/Electrical/VoltageSensor.sci" */
+function VoltageSensor() {
+VoltageSensor.prototype.get = function VoltageSensor() {
+}
+VoltageSensor.prototype.set = function VoltageSensor() {
+x=arg1;
+}
+VoltageSensor.prototype.define = function VoltageSensor() {
+model=scicos_model();
+model.in=1;
+model.out=[1,1];
+model.sim="VoltageSensor";
+model.blocktype="c";
+model.dep_ut=[true,None];
+mo=modelica();
+mo.model="VoltageSensor";
+mo.inputs="p";
+mo.outputs=["n","v"];
+model.equations=mo;
+exprs=[];
+gr_i=[];
+x=standard_define([2,2],model,exprs,list(gr_i,0));
+x.graphics.in_implicit=["I"];
+x.graphics.out_implicit=["I","E"];
+}
+VoltageSensor.prototype.details = function VoltageSensor() {
+}
+}
diff --git a/js/Electrical/VsourceAC.js b/js/Electrical/VsourceAC.js
index 5b282081..37b70b89 100644
--- a/js/Electrical/VsourceAC.js
+++ b/js/Electrical/VsourceAC.js
@@ -1,365 +1,47 @@
-LexToken(EOL,'\n',1,10)
-LexToken(EOL,'\n',1,13)
-LexToken(EOL,'\n',1,73)
-LexToken(EOL,'\n',1,76)
-LexToken(EOL,'\n',1,148)
-LexToken(EOL,'\n',1,220)
-LexToken(EOL,'\n',1,289)
-LexToken(EOL,'\n',1,328)
-LexToken(EOL,'\n',1,331)
-LexToken(EOL,'\n',1,398)
-LexToken(EOL,'\n',1,464)
-LexToken(EOL,'\n',1,529)
-LexToken(EOL,'\n',1,577)
-LexToken(EOL,'\n',1,580)
-LexToken(EOL,'\n',1,649)
-LexToken(EOL,'\n',1,712)
-LexToken(EOL,'\n',1,794)
-LexToken(EOL,'\n',1,797)
-LexToken(EOL,'\n',1,828)
-LexToken(EOL,'\n',1,831)
-LexToken(EOL,'\n',1,832)
-LexToken(FUNCTION,'function',1,833)
-LexToken(OPENSQBRACKET,'[',1,842)
-LexToken(VAR,'x',1,843)
-LexToken(COMMA,',',1,844)
-LexToken(VAR,'y',1,845)
-LexToken(COMMA,',',1,846)
-LexToken(VAR,'typ',1,847)
-LexToken(CLOSESQBRACKET,']',1,850)
-LexToken(ASSIGNMENT,'=',1,851)
-LexToken(VAR,'VsourceAC',1,852)
-LexToken(OPENBRACKET,'(',1,861)
-LexToken(VAR,'job',1,862)
-LexToken(COMMA,',',1,865)
-LexToken(VAR,'arg1',1,866)
-LexToken(COMMA,',',1,870)
-LexToken(VAR,'arg2',1,871)
-LexToken(CLOSEBRACKET,')',1,875)
-LexToken(EOL,'\n',1,876)
-LexToken(EOL,'\n',1,911)
-LexToken(EOL,'\n',1,964)
-LexToken(EOL,'\n',1,1041)
-LexToken(EOL,'\n',1,1092)
-LexToken(VAR,'x',1,1097)
-LexToken(ASSIGNMENT,'=',1,1098)
-LexToken(OPENSQBRACKET,'[',1,1099)
-LexToken(CLOSESQBRACKET,']',1,1100)
-LexToken(EOL,'\n',1,1101)
-LexToken(VAR,'y',1,1107)
-LexToken(ASSIGNMENT,'=',1,1108)
-LexToken(OPENSQBRACKET,'[',1,1109)
-LexToken(CLOSESQBRACKET,']',1,1110)
-LexToken(EOL,'\n',1,1111)
-LexToken(VAR,'typ',1,1117)
-LexToken(ASSIGNMENT,'=',1,1120)
-LexToken(OPENSQBRACKET,'[',1,1121)
-LexToken(CLOSESQBRACKET,']',1,1122)
-LexToken(EOL,'\n',1,1123)
-LexToken(SELECT,'select',1,1129)
-LexToken(VAR,'job',1,1136)
-LexToken(EOL,'\n',1,1139)
-LexToken(CASE,'case',1,1144)
-LexToken(DQSTRING,'"set"',1,1153)
-LexToken(THEN,'then',1,1155)
-LexToken(EOL,'\n',1,1159)
-LexToken(VAR,'x',1,1168)
-LexToken(ASSIGNMENT,'=',1,1169)
-LexToken(VAR,'arg1',1,1170)
-LexToken(EOL,'\n',1,1174)
-LexToken(VAR,'graphics',1,1184)
-LexToken(ASSIGNMENT,'=',1,1192)
-LexToken(VAR,'arg1',1,1193)
-LexToken(DOT,'.',1,1197)
-LexToken(VAR,'graphics',1,1198)
-LexToken(EOL,'\n',1,1206)
-LexToken(VAR,'exprs',1,1216)
-LexToken(ASSIGNMENT,'=',1,1221)
-LexToken(VAR,'graphics',1,1222)
-LexToken(DOT,'.',1,1230)
-LexToken(VAR,'exprs',1,1231)
-LexToken(EOL,'\n',1,1236)
-LexToken(VAR,'model',1,1245)
-LexToken(ASSIGNMENT,'=',1,1250)
-LexToken(VAR,'arg1',1,1251)
-LexToken(DOT,'.',1,1255)
-LexToken(VAR,'model',1,1256)
-LexToken(EOL,'\n',1,1261)
-LexToken(WHILE,'while',1,1271)
-LexToken(PREVAR_BOOLEAN,'%t',1,1277)
-LexToken(DO,'do',1,1280)
-LexToken(EOL,'\n',1,1282)
-LexToken(OPENSQBRACKET,'[',1,1295)
-LexToken(VAR,'ok',1,1296)
-LexToken(COMMA,',',1,1298)
-LexToken(VAR,'VA',1,1299)
-LexToken(COMMA,',',1,1301)
-LexToken(VAR,'FR',1,1302)
-LexToken(COMMA,',',1,1304)
-LexToken(VAR,'exprs',1,1305)
-LexToken(CLOSESQBRACKET,']',1,1310)
-LexToken(ASSIGNMENT,'=',1,1311)
-LexToken(SCICOS_GETVALUE,'scicos_getvalue',1,1312)
-LexToken(OPENBRACKET,'(',1,1327)
-LexToken(DQSTRING,'"Set voltage source parameter"',1,1357)
-LexToken(COMMA,',',1,1358)
-LexToken(OPENSQBRACKET,'[',1,1374)
-LexToken(DQSTRING,'"Amplitude (Volt)"',1,1392)
-LexToken(SEMICOLON,';',1,1393)
-LexToken(DQSTRING,'"Frequency (Hz)"',1,1409)
-LexToken(CLOSESQBRACKET,']',1,1410)
-LexToken(COMMA,',',1,1411)
-LexToken(VAR,'list',1,1427)
-LexToken(OPENBRACKET,'(',1,1431)
-LexToken(DQSTRING,'"vec"',1,1436)
-LexToken(COMMA,',',1,1437)
-LexToken(ADDITION,'-',1,1438)
-LexToken(NUMBER,'1',1,1439)
-LexToken(COMMA,',',1,1440)
-LexToken(DQSTRING,'"vec"',1,1445)
-LexToken(COMMA,',',1,1446)
-LexToken(ADDITION,'-',1,1447)
-LexToken(NUMBER,'1',1,1448)
-LexToken(CLOSEBRACKET,')',1,1449)
-LexToken(COMMA,',',1,1450)
-LexToken(VAR,'exprs',1,1451)
-LexToken(CLOSEBRACKET,')',1,1456)
-LexToken(EOL,'\n',1,1457)
-LexToken(IF,'if',1,1470)
-LexToken(NOT,'~',1,1473)
-LexToken(VAR,'ok',1,1474)
-LexToken(THEN,'then',1,1477)
-LexToken(EOL,'\n',1,1481)
-LexToken(BREAK,'break',1,1498)
-LexToken(EOL,'\n',1,1503)
-LexToken(END,'end',1,1517)
-LexToken(EOL,'\n',1,1520)
-LexToken(VAR,'model',1,1533)
-LexToken(DOT,'.',1,1538)
-LexToken(VAR,'rpar',1,1539)
-LexToken(ASSIGNMENT,'=',1,1543)
-LexToken(OPENSQBRACKET,'[',1,1544)
-LexToken(VAR,'VA',1,1545)
-LexToken(SEMICOLON,';',1,1547)
-LexToken(VAR,'FR',1,1548)
-LexToken(CLOSESQBRACKET,']',1,1550)
-LexToken(EOL,'\n',1,1551)
-LexToken(VAR,'model',1,1564)
-LexToken(DOT,'.',1,1569)
-LexToken(VAR,'equations',1,1570)
-LexToken(DOT,'.',1,1579)
-LexToken(VAR,'parameters',1,1580)
-LexToken(OPENBRACKET,'(',1,1590)
-LexToken(NUMBER,'2',1,1591)
-LexToken(CLOSEBRACKET,')',1,1592)
-LexToken(ASSIGNMENT,'=',1,1593)
-LexToken(VAR,'list',1,1594)
-LexToken(OPENBRACKET,'(',1,1598)
-LexToken(VAR,'VA',1,1599)
-LexToken(COMMA,',',1,1601)
-LexToken(VAR,'FR',1,1602)
-LexToken(CLOSEBRACKET,')',1,1604)
-LexToken(EOL,'\n',1,1605)
-LexToken(VAR,'graphics',1,1618)
-LexToken(DOT,'.',1,1626)
-LexToken(VAR,'exprs',1,1627)
-LexToken(ASSIGNMENT,'=',1,1632)
-LexToken(VAR,'exprs',1,1633)
-LexToken(EOL,'\n',1,1638)
-LexToken(VAR,'x',1,1651)
-LexToken(DOT,'.',1,1652)
-LexToken(VAR,'graphics',1,1653)
-LexToken(ASSIGNMENT,'=',1,1661)
-LexToken(VAR,'graphics',1,1662)
-LexToken(EOL,'\n',1,1670)
-LexToken(VAR,'x',1,1684)
-LexToken(DOT,'.',1,1685)
-LexToken(VAR,'model',1,1686)
-LexToken(ASSIGNMENT,'=',1,1691)
-LexToken(VAR,'model',1,1692)
-LexToken(EOL,'\n',1,1697)
-LexToken(BREAK,'break',1,1710)
-LexToken(EOL,'\n',1,1715)
-LexToken(END,'end',1,1724)
-LexToken(EOL,'\n',1,1727)
-LexToken(CASE,'case',1,1732)
-LexToken(DQSTRING,'"define"',1,1744)
-LexToken(THEN,'then',1,1746)
-LexToken(EOL,'\n',1,1750)
-LexToken(VAR,'model',1,1759)
-LexToken(ASSIGNMENT,'=',1,1764)
-LexToken(SCICOS_MODEL,'scicos_model',1,1765)
-LexToken(OPENBRACKET,'(',1,1777)
-LexToken(CLOSEBRACKET,')',1,1778)
-LexToken(EOL,'\n',1,1779)
-LexToken(VAR,'model',1,1788)
-LexToken(DOT,'.',1,1793)
-LexToken(VAR,'in',1,1794)
-LexToken(ASSIGNMENT,'=',1,1796)
-LexToken(OPENSQBRACKET,'[',1,1797)
-LexToken(NUMBER,'1',1,1798)
-LexToken(CLOSESQBRACKET,']',1,1799)
-LexToken(EOL,'\n',1,1800)
-LexToken(VAR,'model',1,1810)
-LexToken(DOT,'.',1,1815)
-LexToken(VAR,'out',1,1816)
-LexToken(ASSIGNMENT,'=',1,1819)
-LexToken(OPENSQBRACKET,'[',1,1820)
-LexToken(NUMBER,'1',1,1821)
-LexToken(CLOSESQBRACKET,']',1,1822)
-LexToken(EOL,'\n',1,1823)
-LexToken(VAR,'VA',1,1833)
-LexToken(ASSIGNMENT,'=',1,1835)
-LexToken(NUMBER,'220',1,1836)
-LexToken(EOL,'\n',1,1839)
-LexToken(VAR,'FR',1,1848)
-LexToken(ASSIGNMENT,'=',1,1850)
-LexToken(NUMBER,'50',1,1851)
-LexToken(EOL,'\n',1,1853)
-LexToken(VAR,'model',1,1862)
-LexToken(DOT,'.',1,1867)
-LexToken(VAR,'rpar',1,1868)
-LexToken(ASSIGNMENT,'=',1,1872)
-LexToken(OPENSQBRACKET,'[',1,1873)
-LexToken(VAR,'VA',1,1874)
-LexToken(SEMICOLON,';',1,1876)
-LexToken(VAR,'FR',1,1877)
-LexToken(CLOSESQBRACKET,']',1,1879)
-LexToken(EOL,'\n',1,1880)
-LexToken(VAR,'model',1,1889)
-LexToken(DOT,'.',1,1894)
-LexToken(VAR,'sim',1,1895)
-LexToken(ASSIGNMENT,'=',1,1898)
-LexToken(DQSTRING,'"VsourceAC"',1,1909)
-LexToken(EOL,'\n',1,1910)
-LexToken(VAR,'model',1,1919)
-LexToken(DOT,'.',1,1924)
-LexToken(VAR,'blocktype',1,1925)
-LexToken(ASSIGNMENT,'=',1,1934)
-LexToken(DQSTRING,'"c"',1,1937)
-LexToken(EOL,'\n',1,1938)
-LexToken(VAR,'model',1,1947)
-LexToken(DOT,'.',1,1952)
-LexToken(VAR,'dep_ut',1,1953)
-LexToken(ASSIGNMENT,'=',1,1959)
-LexToken(OPENSQBRACKET,'[',1,1960)
-LexToken(PREVAR_BOOLEAN,'%t',1,1961)
-LexToken(PREVAR_BOOLEAN,'%f',1,1964)
-LexToken(CLOSESQBRACKET,']',1,1966)
-LexToken(EOL,'\n',1,1967)
-LexToken(VAR,'mo',1,1976)
-LexToken(ASSIGNMENT,'=',1,1978)
-LexToken(VAR,'modelica',1,1979)
-LexToken(OPENBRACKET,'(',1,1987)
-LexToken(CLOSEBRACKET,')',1,1988)
-LexToken(EOL,'\n',1,1989)
-LexToken(VAR,'mo',1,1998)
-LexToken(DOT,'.',1,2000)
-LexToken(VAR,'model',1,2001)
-LexToken(ASSIGNMENT,'=',1,2006)
-LexToken(DQSTRING,'"VsourceAC"',1,2017)
-LexToken(EOL,'\n',1,2018)
-LexToken(VAR,'mo',1,2027)
-LexToken(DOT,'.',1,2029)
-LexToken(VAR,'inputs',1,2030)
-LexToken(ASSIGNMENT,'=',1,2036)
-LexToken(DQSTRING,'"p"',1,2039)
-LexToken(EOL,'\n',1,2040)
-LexToken(VAR,'mo',1,2050)
-LexToken(DOT,'.',1,2052)
-LexToken(VAR,'outputs',1,2053)
-LexToken(ASSIGNMENT,'=',1,2060)
-LexToken(DQSTRING,'"n"',1,2063)
-LexToken(EOL,'\n',1,2064)
-LexToken(VAR,'mo',1,2074)
-LexToken(DOT,'.',1,2076)
-LexToken(VAR,'parameters',1,2077)
-LexToken(ASSIGNMENT,'=',1,2087)
-LexToken(VAR,'list',1,2088)
-LexToken(OPENBRACKET,'(',1,2092)
-LexToken(OPENSQBRACKET,'[',1,2093)
-LexToken(DQSTRING,'"VA"',1,2097)
-LexToken(SEMICOLON,';',1,2098)
-LexToken(DQSTRING,'"f"',1,2101)
-LexToken(CLOSESQBRACKET,']',1,2102)
-LexToken(COMMA,',',1,2103)
-LexToken(VAR,'list',1,2104)
-LexToken(OPENBRACKET,'(',1,2108)
-LexToken(VAR,'VA',1,2109)
-LexToken(COMMA,',',1,2111)
-LexToken(VAR,'FR',1,2112)
-LexToken(CLOSEBRACKET,')',1,2114)
-LexToken(CLOSEBRACKET,')',1,2115)
-LexToken(EOL,'\n',1,2116)
-LexToken(VAR,'model',1,2125)
-LexToken(DOT,'.',1,2130)
-LexToken(VAR,'equations',1,2131)
-LexToken(ASSIGNMENT,'=',1,2140)
-LexToken(VAR,'mo',1,2141)
-LexToken(EOL,'\n',1,2143)
-LexToken(EOL,'\n',1,2144)
-LexToken(VAR,'exprs',1,2153)
-LexToken(ASSIGNMENT,'=',1,2158)
-LexToken(OPENSQBRACKET,'[',1,2159)
-LexToken(VAR,'string',1,2160)
-LexToken(OPENBRACKET,'(',1,2166)
-LexToken(VAR,'VA',1,2167)
-LexToken(CLOSEBRACKET,')',1,2169)
-LexToken(SEMICOLON,';',1,2170)
-LexToken(VAR,'string',1,2171)
-LexToken(OPENBRACKET,'(',1,2177)
-LexToken(VAR,'FR',1,2178)
-LexToken(CLOSEBRACKET,')',1,2180)
-LexToken(CLOSESQBRACKET,']',1,2181)
-LexToken(EOL,'\n',1,2182)
-LexToken(VAR,'gr_i',1,2191)
-LexToken(ASSIGNMENT,'=',1,2195)
-LexToken(OPENSQBRACKET,'[',1,2196)
-LexToken(CLOSESQBRACKET,']',1,2197)
-LexToken(EOL,'\n',1,2198)
-LexToken(EOL,'\n',1,2199)
-LexToken(VAR,'x',1,2208)
-LexToken(ASSIGNMENT,'=',1,2209)
-LexToken(VAR,'standard_define',1,2210)
-LexToken(OPENBRACKET,'(',1,2225)
-LexToken(OPENSQBRACKET,'[',1,2226)
-LexToken(NUMBER,'2',1,2227)
-LexToken(NUMBER,'2',1,2229)
-LexToken(CLOSESQBRACKET,']',1,2230)
-LexToken(COMMA,',',1,2231)
-LexToken(VAR,'model',1,2232)
-LexToken(COMMA,',',1,2237)
-LexToken(VAR,'exprs',1,2238)
-LexToken(COMMA,',',1,2243)
-LexToken(VAR,'list',1,2244)
-LexToken(OPENBRACKET,'(',1,2248)
-LexToken(VAR,'gr_i',1,2249)
-LexToken(COMMA,',',1,2253)
-LexToken(NUMBER,'0',1,2254)
-LexToken(CLOSEBRACKET,')',1,2255)
-LexToken(CLOSEBRACKET,')',1,2256)
-LexToken(EOL,'\n',1,2257)
-LexToken(VAR,'x',1,2266)
-LexToken(DOT,'.',1,2267)
-LexToken(VAR,'graphics',1,2268)
-LexToken(DOT,'.',1,2276)
-LexToken(VAR,'in_implicit',1,2277)
-LexToken(ASSIGNMENT,'=',1,2288)
-LexToken(OPENSQBRACKET,'[',1,2289)
-LexToken(DQSTRING,'"I"',1,2292)
-LexToken(CLOSESQBRACKET,']',1,2293)
-LexToken(EOL,'\n',1,2294)
-LexToken(VAR,'x',1,2303)
-LexToken(DOT,'.',1,2304)
-LexToken(VAR,'graphics',1,2305)
-LexToken(DOT,'.',1,2313)
-LexToken(VAR,'out_implicit',1,2314)
-LexToken(ASSIGNMENT,'=',1,2326)
-LexToken(OPENSQBRACKET,'[',1,2327)
-LexToken(DQSTRING,'"I"',1,2330)
-LexToken(CLOSESQBRACKET,']',1,2331)
-LexToken(EOL,'\n',1,2332)
-LexToken(END,'end',1,2337)
-LexToken(EOL,'\n',1,2340)
-LexToken(ENDFUNCTION,'endfunction',1,2341)
-LexToken(EOL,'\n',1,2352)
+/* autogenerated from "macros/Electrical/VsourceAC.sci" */
+function VsourceAC() {
+VsourceAC.prototype.get = function VsourceAC() {
+}
+VsourceAC.prototype.set = function VsourceAC() {
+x=arg1;
+graphics=arg1.graphics;
+exprs=graphics.exprs;
+model=arg1.model;
+while (true) {
+[ok,VA,FR,exprs]=scicos_getvalue("Set voltage source parameter",["Amplitude (Volt)","Frequency (Hz)"],list("vec",-1,"vec",-1),exprs);
+if (!ok) {
+break
+}
+model.rpar=[VA,FR];
+model.equations.parameters[2]=list(VA,FR);
+graphics.exprs=exprs;
+x.graphics=graphics;
+x.model=model;
+break
+}
+}
+VsourceAC.prototype.define = function VsourceAC() {
+model=scicos_model();
+model.in=[1];
+model.out=[1];
+VA=220;
+FR=50;
+model.rpar=[VA,FR];
+model.sim="VsourceAC";
+model.blocktype="c";
+model.dep_ut=[true,None];
+mo=modelica();
+mo.model="VsourceAC";
+mo.inputs="p";
+mo.outputs="n";
+mo.parameters=list(["VA","f"],list(VA,FR));
+model.equations=mo;
+exprs=[string(VA),string(FR)];
+gr_i=[];
+x=standard_define([2,2],model,exprs,list(gr_i,0));
+x.graphics.in_implicit=["I"];
+x.graphics.out_implicit=["I"];
+}
+VsourceAC.prototype.details = function VsourceAC() {
+}
+}