use `instanceof` ?