add instanceOf and equalType into Gene for advanced typing