modify API for upward compatibility