Add explicit generic functions