re-implement inspect feature