checkpoint
fix new problems after rebase