created some interfaces and improved some characters