/**
  * invoke to any method in this class
  * @param $name
  * @param $args
  */
 public function __call($name, $args)
 {
     return $this->context->__call($name, $args);
     /*if(!method_exists($this, $name) && method_exists($this->wc_product, $name)) {
           return call_user_func_array(array($this->wc_product, $name), $args);
       }*/
 }
 /**
  * class construct method
  * @param $object
  */
 function __construct($object)
 {
     //$object = new WC_Customer();
     parent::__construct($object);
     //
 }
 public function get_object()
 {
     return parent::get_object() ? parent::get_object() : WC();
 }