should reconsider the init of gmt class