r (var newToken in insert) {
								if (insert.hasOwnProperty(newToken)) {
									grammar[newToken] = insert[newToken];
								}
							}

							return grammar;
						}

						var ret = {};

						for (var token in grammar) {

							if (grammar.hasOwnProperty(token)) {

								if (token == before) {

									for (var newToken in insert) {

										if (insert.hasOwnProperty(newToken)) {
											ret[newToken] = insert[newToken];
										}
									}
								}

								ret[token] = grammar[token