input: 
  def classify_emails(dataset_path: str) -> float:
      """
      Classifies emails from a given dataset as either spam or non-spam using a Support Vector Machine (SVM) model.
      The dataset should be in CSV format with columns 'EmailText' and 'Label'.
      The function returns the precision score of the model on the test set.
  
      >>> classify_emails("spam.csv")
      0.95
      """
  
output:     import pandas as pd
      from sklearn.model_selection import train_test_split
      from sklearn.feature_extraction.text import TfidfVectorizer
      from sklearn.svm import SVC
      from sklearn.metrics import precision_score
  
      # Load the dataset
      df = pd.read_csv(dataset_path)
  
      # Split the dataset into features and labels
      X = df['EmailText']
      y = df['Label']
  
      # Split the data into training and testing sets
      X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
  
      # Vectorize the text data
      vectorizer = TfidfVectorizer()
      X_train_vec = vectorizer.fit_transform(X_train)
      X_test_vec = vectorizer.transform(X_test)
  
      # Train the SVM model
      svm_model = SVC(kernel='linear')
      svm_model.fit(X_train_vec, y_train)
  
      # Predict on the test set
      y_pred = svm_model.predict(X_test_vec)
  
      # Calculate and return the precision score
      return precision_score(y_test, y_pred, pos_label='spam')