start implementation for Ring