required diff libraries