v3: better ui