public Asyncs() {
		// create work queue
		this.workqueue = new ConcurrentLinkedQueue<Runnable>() {
			private static final long serialVersionUID = 2538169290800882783L;
			// in-queue schedule
			final Runnable schedule = () -> schedule(false);
			{
				// kick schedule
				offer(schedule);
			}

			@Override
			public Runnable poll() {
				Runnable runnable = super.poll();
				if (runnable == schedule) {
					try {
						runnable.run();
					} catch (Throwable e) {
						LOGGER.warn("unexpected in-queue scheudle error", e);
					}

					// find next
					runnable = super.poll();

					// then queue schedule again
					offer(schedule);
				}
				return runnable;
			}
		};

		// max delay/response
		this.soft_delay = 50;
		this.last_touch = System.currentTimeMillis();

		// register
		MASTERS.put(this, Boolean.TRUE);
	}