new (recursive) solutions
small UF demo