added abstracts for KwArgs and variable args, can be used later to translate them to *args and **kwargs