input: def predict_football_match_winner(data: pd.DataFrame) -> 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.
      The input data should contain 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',
      and the target is 'winner'. The function returns the accuracy score of the model.
      
      >>> data = pd.DataFrame({
      ...     'home_team_goals': [2, 3, 1],
      ...     'away_team_goals': [1, 2, 0],
      ...     'home_team_possession': [0.6, 0.5, 0.4],
      ...     'away_team_possession': [0.4, 0.5, 0.6],
      ...     'home_team_shots': [10, 12, 8],
      ...     'away_team_shots': [5, 6, 4],
      ...     'home_team_yellow_cards': [1, 2, 3],
      ...     'away_team_yellow_cards': [2, 1, 0],
      ...     'home_team_red_cards': [0, 1, 0],
      ...     'away_team_red_cards': [1, 0, 0],
      ...     'winner': ['home', 'away', 'home']
      ... })
      >>> predict_football_match_winner(data)
      1.0
      """
output:     from sklearn.model_selection import train_test_split
      from sklearn.ensemble import RandomForestClassifier
      from sklearn.metrics import accuracy_score
  
      # Define features and target
      X = data[['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']]
      y = data['winner']
  
      # 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)
  
      # Initialize and train the model
      model = RandomForestClassifier(random_state=42)
      model.fit(X_train, y_train)
  
      # Predict and calculate accuracy
      y_pred = model.predict(X_test)
      accuracy = accuracy_score(y_test, y_pred)
  
      return accuracy