implement workaround