some improvement in speed