main interface built, may be revamped later.