spinner simplified implementation