added lists operator overloading optional parameters