fixed some bug and runable