add type walker