improved ball class