added type inspection function
added todo