You are provided with the Titanic passenger data as a CSV file 1. Write a web service that exposes the following functionality a. Return a histogram (bar chart) of Fare prices in percentiles i. X axis for percent ii. Y axis for counting how many of the prices falls under each percentile b. Given a Passengerld return all passenger data in Json format c. Given a Passengerld and attribute list, return only requested attribute list from passenger data in Json format d. Return a list of all passengers in Json format e. Show the web service APIs using Swagger (an OpenAPI implementation) Notes: a. You can use any library of your choice to complete the task in Python or Java b. Show how you test your code, find edge cases and handle exceptions accordingly c. Use clean coding principles (Pvthon/s/a) to write your code 2. Use sqlite3 s a data source a. Add support for multiple data source types to question 1 b. Read which data source to use from config file: CSV or SQLITE c. Question 1 functionality should stay the same (code may change) 3. Bonus tasks 1. Expose the service as a docker container 2. Expose the data source that contains Titanic data as a docker container 3. Show how we can get question 1 functionality with the 2 containers 4. Use docker desktop to deploy the above on docker desktop Kubernetes 5. Compose a Helm chart definition for the deployment