adding interfaces to gui improvement