public static function getInstance(string $model_class, $where)
    {
        $database = $model_class::getDatabase();
        $primary_key = $database->get(
            $model_class::TABLE,
            $model_class::PRIMARY_KEY,
            $model_class::processWhere($where)
        );
        if ($primary_key) {
            $path = array_merge([$model_class], $primary_key);
            $get_model = Utils\Utils::arrayPathGet(self::$models, $path);
            if ($get_model === null) {
                return new $model_class($primary_key);
            }
            return $get_model;
        }
    }