public static function of($builder, $classname = null)
    {
        $datatables          = app(Datatables::class);
        $datatables->builder = $builder;
        $engine              = ($builder instanceof QueryBuilder) ? $datatables->usingQueryBuilder($builder) : ($builder instanceof Collection ? $datatables->usingCollection($builder) : $datatables->usingEloquent($builder));
        $engine->setCalledClass($classname);
        return $engine;
    }