input: Write a python function to calculate and return summary statistics of a CSV file using pandas.
  assert calculate_summary_statistics('data1.csv') == {
      'count': {'A': 10, 'B': 10, 'C': 10},
      'mean': {'A': 5.5, 'B': 5.5, 'C': 5.5},
      'std': {'A': 2.872, 'B': 2.872, 'C': 2.872},
      'min': {'A': 1, 'B': 1, 'C': 1},
      'max': {'A': 10, 'B': 10, 'C': 10},
      'quantiles': {0.25: {'A': 3.25, 'B': 3.25, 'C': 3.25}, 0.5: {'A': 5.5, 'B': 5.5, 'C': 5.5}, 0.75: {'A': 7.75, 'B': 7.75, 'C': 7.75}}
  }
  assert calculate_summary_statistics('data2.csv') == {
      'count': {'X': 5, 'Y': 5},
      'mean': {'X': 14.4, 'Y': 23.2},
      'std': {'X': 7.416, 'Y': 8.941},
      'min': {'X': 5, 'Y': 15},
      'max': {'X': 25, 'Y': 35},
      'quantiles': {0.25: {'X': 10, 'Y': 18}, 0.5: {'X': 15, 'Y': 25}, 0.75: {'X': 20, 'Y': 30}}
  }
output: def calculate_summary_statistics(file_path):
      import pandas as pd
  
      df = pd.read_csv(file_path)
      
      summary = {
          'count': df.count().to_dict(),
          'mean': df.mean().to_dict(),
          'std': df.std().round(3).to_dict(),
          'min': df.min().to_dict(),
          'max': df.max().to_dict(),
          'quantiles': {
              0.25: df.quantile(0.25).to_dict(),
              0.5: df.quantile(0.5).to_dict(),
              0.75: df.quantile(0.75).to_dict()
          }
      }
      
      return summary