abstrace task