decouple error and tick