




"""simple docstring"""

import unittest

from transformers import MODEL_FOR_ZERO_SHOT_OBJECT_DETECTION_MAPPING, is_vision_available, pipeline
from transformers.testing_utils import (
    is_pipeline_test,
    nested_simplify,
    require_tf,
    require_torch,
    require_vision,
    slow,
)

from .test_pipelines_common import ANY


if is_vision_available():
		from PIL import Image
else:

		class        lowercase      :







						@staticmethod
						def 					a_  (							*_lowerCamelCase   :					Tuple      ,     **_lowerCamelCase   :					List[str]       ):



							"""simple docstring"""

							pass

@is_pipeline_test
@require_vision
@require_torch
class        lowercase      (    unittest.TestCase):
				__lowerCAmelCase    :    Any         =   MODEL_FOR_ZERO_SHOT_OBJECT_DETECTION_MAPPING







				def 					a_  (							self   :					Optional[int]      ,     _lowerCamelCase   :					List[str]      ,     _lowerCamelCase   :					int      ,     _lowerCamelCase   :					List[str]       ):



					"""simple docstring"""

					A_  :				Any	   =		pipeline(
					    '''zero-shot-object-detection'''      ,     model='''hf-internal-testing/tiny-random-owlvit-object-detection'''       )

					A_  :				List[Any]	   =		[
					    {
					        '''image''': '''./tests/fixtures/tests_samples/COCO/000000039769.png''',
					        '''candidate_labels''': ['''cat''', '''remote''', '''couch'''],
					    }
					]
					return object_detector, examples







				def 					a_  (							self   :					Tuple      ,     _lowerCamelCase   :					Tuple      ,     _lowerCamelCase   :					Optional[int]       ):



					"""simple docstring"""

					A_  :				Union[str, Any]	   =		object_detector(examples[0]      ,     threshold=0.0       )

					A_  :				Optional[Any]	   =		len(_lowerCamelCase       )
					self.assertGreater(_lowerCamelCase      ,     0       )
					self.assertEqual(
					    _lowerCamelCase      ,     [
					        {
					            '''score''': ANY(_lowerCamelCase       ),
					            '''label''': ANY(_lowerCamelCase       ),
					            '''box''': {'''xmin''': ANY(_lowerCamelCase       ), '''ymin''': ANY(_lowerCamelCase       ), '''xmax''': ANY(_lowerCamelCase       ), '''ymax''': ANY(_lowerCamelCase       )},
					        }
					        for i in range(_lowerCamelCase       )
					    ]      ,     )







				@require_tf
				@unittest.skip('''Zero Shot Object Detection not implemented in TF'''       )
				def 					a_  (							self   :					int       ):



					"""simple docstring"""

					pass







				@require_torch
				def 					a_  (							self   :					Any       ):



					"""simple docstring"""

					A_  :				List[Any]	   =		pipeline(
					    '''zero-shot-object-detection'''      ,     model='''hf-internal-testing/tiny-random-owlvit-object-detection'''       )

					A_  :				Union[str, Any]	   =		object_detector(
					    '''./tests/fixtures/tests_samples/COCO/000000039769.png'''      ,     candidate_labels=['''cat''', '''remote''', '''couch''']      ,     threshold=0.64      ,     )

					self.assertEqual(
					    nested_simplify(_lowerCamelCase      ,     decimals=4       )      ,     [
					        {'''score''': 0.7235, '''label''': '''cat''', '''box''': {'''xmin''': 2_04, '''ymin''': 1_67, '''xmax''': 2_32, '''ymax''': 1_90}},
					        {'''score''': 0.7218, '''label''': '''remote''', '''box''': {'''xmin''': 2_04, '''ymin''': 1_67, '''xmax''': 2_32, '''ymax''': 1_90}},
					        {'''score''': 0.7184, '''label''': '''couch''', '''box''': {'''xmin''': 2_04, '''ymin''': 1_67, '''xmax''': 2_32, '''ymax''': 1_90}},
					        {'''score''': 0.6748, '''label''': '''remote''', '''box''': {'''xmin''': 5_71, '''ymin''': 83, '''xmax''': 5_98, '''ymax''': 1_03}},
					        {'''score''': 0.6656, '''label''': '''cat''', '''box''': {'''xmin''': 5_71, '''ymin''': 83, '''xmax''': 5_98, '''ymax''': 1_03}},
					        {'''score''': 0.6614, '''label''': '''couch''', '''box''': {'''xmin''': 5_71, '''ymin''': 83, '''xmax''': 5_98, '''ymax''': 1_03}},
					        {'''score''': 0.6456, '''label''': '''remote''', '''box''': {'''xmin''': 4_94, '''ymin''': 1_05, '''xmax''': 5_21, '''ymax''': 1_27}},
					        {'''score''': 0.642, '''label''': '''remote''', '''box''': {'''xmin''': 67, '''ymin''': 2_74, '''xmax''': 93, '''ymax''': 2_97}},
					        {'''score''': 0.6419, '''label''': '''cat''', '''box''': {'''xmin''': 4_94, '''ymin''': 1_05, '''xmax''': 5_21, '''ymax''': 1_27}},
					    ]      ,     )

					A_  :				List[str]	   =		object_detector(
					    [
					        {
					            '''image''': '''./tests/fixtures/tests_samples/COCO/000000039769.png''',
					            '''candidate_labels''': ['''cat''', '''remote''', '''couch'''],
					        }
					    ]      ,     threshold=0.64      ,     )

					self.assertEqual(
					    nested_simplify(_lowerCamelCase      ,     decimals=4       )      ,     [
					        [
					            {'''score''': 0.7235, '''label''': '''cat''', '''box''': {'''xmin''': 2_04, '''ymin''': 1_67, '''xmax''': 2_32, '''ymax''': 1_90}},
					            {'''score''': 0.7218, '''label''': '''remote''', '''box''': {'''xmin''': 2_04, '''ymin''': 1_67, '''xmax''': 2_32, '''ymax''': 1_90}},
					            {'''score''': 0.7184, '''label''': '''couch''', '''box''': {'''xmin''': 2_04, '''ymin''': 1_67, '''xmax''': 2_32, '''ymax''': 1_90}},
					            {'''score''': 0.6748, '''label''': '''remote''', '''box''': {'''xmin''': 5_71, '''ymin''': 83, '''xmax''': 5_98, '''ymax''': 1_03}},
					            {'''score''': 0.6656, '''label''': '''cat''', '''box''': {'''xmin''': 5_71, '''ymin''': 83, '''xmax''': 5_98, '''ymax''': 1_03}},
					            {'''score''': 0.6614, '''label''': '''couch''', '''box''': {'''xmin''': 5_71, '''ymin''': 83, '''xmax''': 5_98, '''ymax''': 1_03}},
					            {'''score''': 0.6456, '''label''': '''remote''', '''box''': {'''xmin''': 4_94, '''ymin''': 1_05, '''xmax''': 5_21, '''ymax''': 1_27}},
					            {'''score''': 0.642, '''label''': '''remote''', '''box''': {'''xmin''': 67, '''ymin''': 2_74, '''xmax''': 93, '''ymax''': 2_97}},
					            {'''score''': 0.6419, '''label''': '''cat''', '''box''': {'''xmin''': 4_94, '''ymin''': 1_05, '''xmax''': 5_21, '''ymax''': 1_27}},
					        ]
					    ]      ,     )







				@require_torch
				@slow
				def 					a_  (							self   :					List[Any]       ):



					"""simple docstring"""

					A_  :				str	   =		pipeline('''zero-shot-object-detection'''       )

					A_  :				Tuple	   =		object_detector(
					    '''http://images.cocodataset.org/val2017/000000039769.jpg'''      ,     candidate_labels=['''cat''', '''remote''', '''couch''']      ,     )
					self.assertEqual(
					    nested_simplify(_lowerCamelCase      ,     decimals=4       )      ,     [
					        {'''score''': 0.2868, '''label''': '''cat''', '''box''': {'''xmin''': 3_24, '''ymin''': 20, '''xmax''': 6_40, '''ymax''': 3_73}},
					        {'''score''': 0.277, '''label''': '''remote''', '''box''': {'''xmin''': 40, '''ymin''': 72, '''xmax''': 1_77, '''ymax''': 1_15}},
					        {'''score''': 0.2537, '''label''': '''cat''', '''box''': {'''xmin''': 1, '''ymin''': 55, '''xmax''': 3_15, '''ymax''': 4_72}},
					        {'''score''': 0.1474, '''label''': '''remote''', '''box''': {'''xmin''': 3_35, '''ymin''': 74, '''xmax''': 3_71, '''ymax''': 1_87}},
					        {'''score''': 0.1208, '''label''': '''couch''', '''box''': {'''xmin''': 4, '''ymin''': 0, '''xmax''': 6_42, '''ymax''': 4_76}},
					    ]      ,     )

					A_  :				int	   =		object_detector(
					    [
					        {
					            '''image''': '''http://images.cocodataset.org/val2017/000000039769.jpg''',
					            '''candidate_labels''': ['''cat''', '''remote''', '''couch'''],
					        },
					        {
					            '''image''': '''http://images.cocodataset.org/val2017/000000039769.jpg''',
					            '''candidate_labels''': ['''cat''', '''remote''', '''couch'''],
					        },
					    ]      ,     )
					self.assertEqual(
					    nested_simplify(_lowerCamelCase      ,     decimals=4       )      ,     [
					        [
					            {'''score''': 0.2868, '''label''': '''cat''', '''box''': {'''xmin''': 3_24, '''ymin''': 20, '''xmax''': 6_40, '''ymax''': 3_73}},
					            {'''score''': 0.277, '''label''': '''remote''', '''box''': {'''xmin''': 40, '''ymin''': 72, '''xmax''': 1_77, '''ymax''': 1_15}},
					            {'''score''': 0.2537, '''label''': '''cat''', '''box''': {'''xmin''': 1, '''ymin''': 55, '''xmax''': 3_15, '''ymax''': 4_72}},
					            {'''score''': 0.1474, '''label''': '''remote''', '''box''': {'''xmin''': 3_35, '''ymin''': 74, '''xmax''': 3_71, '''ymax''': 1_87}},
					            {'''score''': 0.1208, '''label''': '''couch''', '''box''': {'''xmin''': 4, '''ymin''': 0, '''xmax''': 6_42, '''ymax''': 4_76}},
					        ],
					        [
					            {'''score''': 0.2868, '''label''': '''cat''', '''box''': {'''xmin''': 3_24, '''ymin''': 20, '''xmax''': 6_40, '''ymax''': 3_73}},
					            {'''score''': 0.277, '''label''': '''remote''', '''box''': {'''xmin''': 40, '''ymin''': 72, '''xmax''': 1_77, '''ymax''': 1_15}},
					            {'''score''': 0.2537, '''label''': '''cat''', '''box''': {'''xmin''': 1, '''ymin''': 55, '''xmax''': 3_15, '''ymax''': 4_72}},
					            {'''score''': 0.1474, '''label''': '''remote''', '''box''': {'''xmin''': 3_35, '''ymin''': 74, '''xmax''': 3_71, '''ymax''': 1_87}},
					            {'''score''': 0.1208, '''label''': '''couch''', '''box''': {'''xmin''': 4, '''ymin''': 0, '''xmax''': 6_42, '''ymax''': 4_76}},
					        ],
					    ]      ,     )







				@require_tf
				@unittest.skip('''Zero Shot Object Detection not implemented in TF'''       )
				def 					a_  (							self   :					Optional[int]       ):



					"""simple docstring"""

					pass







				@require_torch
				@slow
				def 					a_  (							self   :					Dict       ):



					"""simple docstring"""

					A_  :				Any	   =		0.2
					A_  :				Any	   =		pipeline('''zero-shot-object-detection'''       )

					A_  :				Dict	   =		object_detector(
					    '''http://images.cocodataset.org/val2017/000000039769.jpg'''      ,     candidate_labels=['''cat''', '''remote''', '''couch''']      ,     threshold=_lowerCamelCase      ,     )
					self.assertEqual(
					    nested_simplify(_lowerCamelCase      ,     decimals=4       )      ,     [
					        {'''score''': 0.2868, '''label''': '''cat''', '''box''': {'''xmin''': 3_24, '''ymin''': 20, '''xmax''': 6_40, '''ymax''': 3_73}},
					        {'''score''': 0.277, '''label''': '''remote''', '''box''': {'''xmin''': 40, '''ymin''': 72, '''xmax''': 1_77, '''ymax''': 1_15}},
					        {'''score''': 0.2537, '''label''': '''cat''', '''box''': {'''xmin''': 1, '''ymin''': 55, '''xmax''': 3_15, '''ymax''': 4_72}},
					    ]      ,     )







				@require_torch
				@slow
				def 					a_  (							self   :					List[str]       ):



					"""simple docstring"""

					A_  :				int	   =		2
					A_  :				List[Any]	   =		pipeline('''zero-shot-object-detection'''       )

					A_  :				Dict	   =		object_detector(
					    '''http://images.cocodataset.org/val2017/000000039769.jpg'''      ,     candidate_labels=['''cat''', '''remote''', '''couch''']      ,     top_k=_lowerCamelCase      ,     )
					self.assertEqual(
					    nested_simplify(_lowerCamelCase      ,     decimals=4       )      ,     [
					        {'''score''': 0.2868, '''label''': '''cat''', '''box''': {'''xmin''': 3_24, '''ymin''': 20, '''xmax''': 6_40, '''ymax''': 3_73}},
					        {'''score''': 0.277, '''label''': '''remote''', '''box''': {'''xmin''': 40, '''ymin''': 72, '''xmax''': 1_77, '''ymax''': 1_15}},
					    ]      ,     )











"""simple docstring"""

import requests
from bsa import BeautifulSoup

def 		lowercase_      (		_UpperCAmelCase = "https://www.worldometers.info/coronavirus"	):




	"""simple docstring"""






	A_  :				str	   =		BeautifulSoup(requests.get(_UpperCAmelCase	).text  ,      '''html.parser'''	)
	A_  :				Union[str, Any]	   =		soup.findAll('''h1'''	)
	A_  :				Union[str, Any]	   =		soup.findAll('''div'''  ,      {'''class''': '''maincounter-number'''}	)
	keys += soup.findAll('''span'''  ,      {'''class''': '''panel-title'''}	)
	values += soup.findAll('''div'''  ,      {'''class''': '''number-table-main'''}	)
	return {key.text.strip(): value.text.strip() for key, value in zip(_UpperCAmelCase  ,      _UpperCAmelCase	)}


if __name__ == "__main__":
		print('\033[1m' + 'COVID-19 Status of the World' + '\033[0m\n')
		for key, value in world_covidaa_stats().items():
				print(f'{key}\n{value}\n')





