fix almost all bugs