use more modern features