(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.FMSynth = f()}})(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o") { outlets.push(node); } else if (typeof nextNode.frequency === "object") { node.connect(nextNode.frequency); } else { node.connect(nextNode); } token = nextToken; node = nextNode; }); }); if (outlets.length === 0) { throw new TypeError("no output"); } return outlets; } function isValidAlgorithm(algorithm, numOfOperators) { var X = String.fromCharCode(64 + numOfOperators); var re = new RegExp("^[A-" + X + "]-(?:[A-" + X + "]-)*[>A-" + X + "]$", "i"); return algorithm.indexOf(">") !== -1 && algorithm.replace(/\s+/g, "").split(";").every(function (algorithm) { return re.test(algorithm); }); } exports["default"] = { build: build, isValidAlgorithm: isValidAlgorithm }; module.exports = exports["default"]; },{"./algorithms":4}],4:[function(require,module,exports){ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = { 1: ["A->"], 2: ["B-A->", "B->; A->"], 3: ["C-B-A->", "C-A; B-A; A->", "C-B->; C-A->", "C-B->; A->", "C->; B->; A->"], 4: ["D-C-B-A->", "D-B; C-B; B-A->", "D-A->; C-B-A; A->", "D-C; D-B; C-A->; B-A->", "D-C; C-A->; C-B->", "D-C-B->; A->", "D-A; C-A; B-A; A->", "D-C->; B-A->", "D-C->; D-B->; D-A->", "D-C->; B->; A->", "D->; C->; B->; A->"] }; module.exports = exports["default"]; },{}],5:[function(require,module,exports){ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } var _FMSynth = require("./FMSynth"); var _FMSynth2 = _interopRequireDefault(_FMSynth); exports["default"] = _FMSynth2["default"]; module.exports = exports["default"]; },{"./FMSynth":2}]},{},[1])(1) });