templatize ZeroCrossRate