e(0, from),
								    after = str.slice(to);

								var args = [i, delNum];

								if (before) {
									args.push(before);
								}

								var wrapped = new Token(token, inside? _.tokenize(match, inside) : match, alias, match, greedy);

								args.push(wrapped);

								if (after) {
									args.push(after);
								}

								Array.prototype.splice.apply(strarr, args);
							}
						}
					}

					return strarr;
				},

				hooks: {
					all: {},

					add: function (name, callback) {
					