some small fixed and implemented