input: Write a python function to train a RandomForestRegressor model on the California housing dataset and return the R2 score.
  assert train_and_evaluate_model() >= 90
  assert isinstance(train_and_evaluate_model(), float)
output: def train_and_evaluate_model():
      from sklearn.datasets import fetch_california_housing
      from sklearn.model_selection import train_test_split
      from sklearn.ensemble import RandomForestRegressor
      from sklearn.metrics import r2_score
      
      # Load the California housing dataset
      data = fetch_california_housing()
      X, y = data.data, data.target
      
      # 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 the RandomForestRegressor
      model = RandomForestRegressor(n_estimators=100, random_state=42)
      
      # Train the model
      model.fit(X_train, y_train)
      
      # Make predictions
      y_pred = model.predict(X_test)
      
      # Calculate the R2 score
      r2 = r2_score(y_test, y_pred)
      
      # Return the R2 score
      return r2 * 100