private void send(Event event) {
		try {
			TreeMap<Integer, IEventHandler> map = listeners.get(event
					.getClass());
			if (map == null) {
				return;
			}
			for (int i : map.keySet()) {
				IEventHandler handler = map.get(i);
				Method method = handler.getClass().getDeclaredMethod(
						"on" + event.getEventName(), Event.class);
				method.invoke(handler, event);
			}
		} catch (InvocationTargetException e) {
			plugin.error((Exception) e.getCause());
		} catch (Exception e) {
			plugin.error(e);
		}
	}