remove the todo and below cases or implement the empty ones