add get_supported_types function
add SMlib/utils/external package