input: Write a python function to train a linear SVM classifier and predict the class for new data points.
  assert train_and_predict_svm(np.array([[1,2,3], [-1,2,5], [-1,2,7], [5,5,5], [3,3,3], [5,5,7]]), np.array([0, 0, 0, 1, 0, 1]), np.array([[2,2,2], [4,4,4]]))==[0, 1]
  assert train_and_predict_svm(np.array([[1,1,1], [2,2,2], [3,3,3], [4,4,4]]), np.array([0, 0, 1, 1]), np.array([[1,1,1], [3,3,3]]))==[0, 1]
  assert train_and_predict_svm(np.array([[0,0,0], [1,1,1], [2,2,2], [3,3,3]]), np.array([0, 0, 1, 1]), np.array([[0,0,0], [2,2,2]]))==[0, 1]
output: def train_and_predict_svm(X_train, y_train, X_test):
      from sklearn import svm
      # Create a linear SVM classifier
      clf = svm.SVC(kernel='linear')
      # Train the classifier
      clf.fit(X_train, y_train)
      # Predict the class for new data points
      predictions = clf.predict(X_test)
      return predictions.tolist()