some wierd bugs waiting to solve.