'''
Created on 31-Jan-2021

@author: bthakur

AM.sum(7, -12)
AM.sum(7, -12, method_type = 2)

'''
from xv.util import UnicodeShapeHelper
from bs4 import BeautifulSoup

from ._count import Count
from ._sum import Sum
from ._multiply import Multiply
from ._suminmemory import SumInMemory
from ._lcm import Lcm
from ._primes import Prime

class Arithmetic:
    _DEFAULT_IMAGE_NAME = 'GIRL'
    _DEFAULT_SECTION_TAG = 'div'
    _DEFAULT_ROW_TAG = 'h2'
    
    def __init__(self):
        pass

    @classmethod
    def count(cls, *args):
        return Count()._count(*args)

    @classmethod
    def sum(cls, *args, **kwargs):
        return Arithmetic.add(*args, **kwargs)

    @classmethod
    def add(cls, *args, **kwargs):
        return Sum()._add(*args, **kwargs)

    @classmethod
    def multiply(cls, *args, **kwargs):
        return Multiply()._multiply(*args, **kwargs)

    @classmethod
    def lcm(cls, *args, **kwargs):
        return Lcm()._lcm(*args, **kwargs)

    @classmethod
    def prime(cls, start = 2, end = None, size = None, show = True):
        return Prime()._prime(start, end, size, show = show)

    
    @classmethod
    def addInMemory(cls, *args):
        return Arithmetic.sumInMemory(*args)
    
    @classmethod
    def sumInMemory(cls, *args):
        return SumInMemory()._add(*args)

    pass
#class Arithmetic:
        
if __name__ == "__main__":
    print(Arithmetic.count())
    pass

