instanceof@tg says to YSITD
就是在自己重新造輪子R