message interface
fix conflict