optimization to avoid instantiation