code cleanup; todo update