<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def get(self, name=None, provider='AwsEKS', print_output=True):
 """List all cluster. """

        # Create cluster object
        Cluster = getattr(providers, provider)
        cluster = Cluster(name)

        self.kubeconf.open()
        if name is None:
            clusters = self.kubeconf.get_clusters()
            print("Running Clusters:")
            for cluster in clusters:
                print(f"  - {cluster['name']}")
        else:
            # Check that cluster exists.
            if self.check_cluster_exists(name) is False:
                raise JhubctlError("Cluster name not found in availabe clusters.")

            cluster = self.kubeconf.get_cluster(name=cluster.cluster_name)
            pprint.pprint(cluster, depth=4)