add guard and spork support