input: def predict_winning_team(data_path: str) -> float:
      """Develop a ML model in Python for predicting the winning team of football matches using data from the past 5 years of the Premier League.
      Use the following features: 'home_team_goals', 'away_team_goals', 'home_team_possession', 'away_team_possession',
      'home_team_shots', 'away_team_shots', 'home_team_yellow_cards', 'away_team_yellow_cards',
      'home_team_red_cards', 'away_team_red_cards'.
      Use the target variable 'winner'.
      Split the data into training and test sets, train a GradientBoostingClassifier, and return the model's score.
      
      >>> predict_winning_team('data.csv')
      Model score: 0.85
      """
output:     import pandas as pd
      from sklearn.model_selection import train_test_split
      from sklearn.ensemble import GradientBoostingClassifier
      from sklearn.metrics import accuracy_score
  
      # Load the data
      data = pd.read_csv(data_path)
  
      # Define features and target
      features = ['home_team_goals', 'away_team_goals', 'home_team_possession', 'away_team_possession',
                  'home_team_shots', 'away_team_shots', 'home_team_yellow_cards', 'away_team_yellow_cards',
                  'home_team_red_cards', 'away_team_red_cards']
      target = 'winner'
  
      X = data[features]
      y = data[target]
  
      # Split the data into training and test sets
      X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
  
      # Train the model
      model = GradientBoostingClassifier(random_state=42)
      model.fit(X_train, y_train)
  
      # Predict and evaluate the model
      y_pred = model.predict(X_test)
      score = accuracy_score(y_test, y_pred)
  
      return score