some interface design bugs fixing