protected function makeArrayOfWhere($array, $type)
    {
        $self = self::getInstance();

        if (array_key_exists(0, $array)) :
            
            foreach ($array as $a):
                $make = [
                    'parameter' => str_replace(".", "_", $a[0]),
                    'column'    => $a[0],
                    'operator'  => $a[1],
                    'value'     => (isset($a[2])) ? $a[2] : null,
                ];


        $where = $self->makeWhere(
                    $make['parameter'], $make['column'], $make['operator'], $make['value']
                );

        $whereData = $self->makeOptionWhere(
                    $make['parameter'], $make['column'], $make['operator'], $make['value']
                );

        array_push($self->optionWhere, $type.$where);

        $self->optionWhereData = array_merge(
                    $self->optionWhereData, [":where_{$make['parameter']}" => $whereData]
                );
        endforeach; else:

                foreach ($array as $a => $v):
                    $param     = str_replace(".", "_", $a);
        $where     = $self->makeWhere($param, $a, '=', $v);
        $whereData = $self->makeOptionWhere($param, $a, '=', $v);

        array_push($self->optionWhere, $type.$where);
        $self->optionWhereData = array_merge($self->optionWhereData, [":where_{$param}" => $whereData]);
        endforeach;

        endif;

        return $self;
    }