![](https://private-user-images.githubusercontent.com/63912668/320198971-b197374d-82af-4fac-acc5-56c315603cce.jpg?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjA3NTE3MzAsIm5iZiI6MTcyMDc1MTQzMCwicGF0aCI6Ii82MzkxMjY2OC8zMjAxOTg5NzEtYjE5NzM3NGQtODJhZi00ZmFjLWFjYzUtNTZjMzE1NjAzY2NlLmpwZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MTIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzEyVDAyMzAzMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTMwMjRmZDZmYjM4MGNlNTIzMWFhYmExODFiOTZjYjI2MjFmMDMwZjYxMTg4NzhkMWNlYWI5NjUyYjA3Njg2NzAmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.Yv9OJU0OCeGULztjJ2wf_TACWycFfc7KrFVHDXDEQUs)
- Flutter (Riverpod, GoRouter, Dio, Freezed, Firebase)
- Node.js (TypeScript, Express, Mongoose, FFmpeg)
- MongoDB
- User authentication system like login, signup and forgot password
- Upload posts with multiple images and videos
- Post image or video can be selected from device gallery
- Tag other people in posts
- Users can like, save posts
- Users can see other profiles with their posts and their tagged posts
- Users can comment on posts
- Users can like a comment
- Users can share post to other users
- Users can view complete history of liked and saved posts
- Users can follow other users
- Users can see their followers & following list
- Users can remove follower
- Users can upload stories with gallery images or device camera
- Private account feature can protect privacy of user by hiding their posts
- Follow will be sent as request to private accounts
- Push notifications using FCM
- Realtime messaging with Stream SDK
git clone https://github.com/jagadeesh-k-2802/instagram-clone-flutter
cd server && npm i
- Configure all required environment variables in
server/config/config.env.example
- Remove
.example
from the filename it should beconfig.env
- Install MongoDB Locally on Your System or use Cloud hosted connection string
- Download Firebase Admin Private Key JSON file and rename it it to
firebase-admin.json
- Place the JSON file inside server/config/
npm run dev
to start the node serverdart pub global activate flutterfire_cli
Install flutterfire CLInpm install -g firebase-tools
Install firebase CLI using NPMcd mobile && flutterfire configure
Configure firebase using your own firebase project- Place your stream sdk api key in
./mobile/config/env.example.json
- Run this command
dart run build_runner build
to generate freezed JSON model files - open
./mobile
inside your code editor and run flutter app with the environment json file
![](https://private-user-images.githubusercontent.com/63912668/310135660-c0943829-be25-4818-9f0d-bcf3dd04907a.jpg?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjA3NTE3MzAsIm5iZiI6MTcyMDc1MTQzMCwicGF0aCI6Ii82MzkxMjY2OC8zMTAxMzU2NjAtYzA5NDM4MjktYmUyNS00ODE4LTlmMGQtYmNmM2RkMDQ5MDdhLmpwZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MTIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzEyVDAyMzAzMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTU4OTAxOGNjNzU1YTY2MWMxYWU0ZWRkMDhmNTE5NzJiZjk4OWNjYjExODVjMDQ3YTYwZWY1MjRlNjFiYzg5NjkmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.eYjJRhlDeFghG9vO_bAxbPkDMBA6fR2K4IpKKrvs-iw)
![](https://private-user-images.githubusercontent.com/63912668/310122365-0ada6226-1768-4cdb-a3a9-ba31154e2f39.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjA3NTE3MzAsIm5iZiI6MTcyMDc1MTQzMCwicGF0aCI6Ii82MzkxMjY2OC8zMTAxMjIzNjUtMGFkYTYyMjYtMTc2OC00Y2RiLWEzYTktYmEzMTE1NGUyZjM5LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MTIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzEyVDAyMzAzMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTAxZWNlZDFmY2QwNzJlZjA4YzUyN2UwNDU3Y2M1NTIwZTVlMWE5MjdlYmY3ZWE2YzZkY2RhMWRkOGVmMzgzMTImWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.2zqI1F08YTsWeMmttFzcA7LWLd9ZIsmgYdMP7xGButk)
![](https://private-user-images.githubusercontent.com/63912668/310122378-8adbba29-f984-4c32-998e-d75fe375c5c7.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjA3NTE3MzAsIm5iZiI6MTcyMDc1MTQzMCwicGF0aCI6Ii82MzkxMjY2OC8zMTAxMjIzNzgtOGFkYmJhMjktZjk4NC00YzMyLTk5OGUtZDc1ZmUzNzVjNWM3LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MTIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzEyVDAyMzAzMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTM1MzQzMGFmYjdmOWVhYzk1MjBhYzRkYTIwZmE0MGViY2ExN2E4OTU5ODEwZWFiZTg3YzY3ZjE5OGVmZmYwZjMmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.ytl8lyUhyWZ0KytCjvMS8PvbFEw2G9ge3qurvGKVx1k)
![](https://private-user-images.githubusercontent.com/63912668/310122354-dbeaf944-f6ba-4142-99b4-8daf93cd383a.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjA3NTE3MzAsIm5iZiI6MTcyMDc1MTQzMCwicGF0aCI6Ii82MzkxMjY2OC8zMTAxMjIzNTQtZGJlYWY5NDQtZjZiYS00MTQyLTk5YjQtOGRhZjkzY2QzODNhLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MTIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzEyVDAyMzAzMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTliZDJhOWEzYmE3MWVlYjZmNTVjNmZjNGRmZGE5YmJiMTUxNGQ0MTRmY2JiOWIxYzU0MTMyNDQ4NWRkYzkzYTAmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.nZ3bAJBoN6HpogmJ37-aPeUOr83ryIEpTTUEMYlIy3o)
![](https://private-user-images.githubusercontent.com/63912668/310123454-c5ce11cb-4acb-480b-81c6-87d2be7b1064.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjA3NTE3MzAsIm5iZiI6MTcyMDc1MTQzMCwicGF0aCI6Ii82MzkxMjY2OC8zMTAxMjM0NTQtYzVjZTExY2ItNGFjYi00ODBiLTgxYzYtODdkMmJlN2IxMDY0LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MTIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzEyVDAyMzAzMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTI2NTNhNjEyNzdlNjY0OTFlNTEwMmNlZWRmZDNjZWUxOTFlNzk5ZDYxMTVmYzRlOWVlMjE5MWE2ZjdiNjA4ZWEmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.mnmv_uKAWstXt-f5S9yy67gMQybZhHOfGj90GrpbQ0o)
![](https://private-user-images.githubusercontent.com/63912668/310124192-6485977b-533b-4ed6-aac2-712a1c308fe7.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjA3NTE3MzAsIm5iZiI6MTcyMDc1MTQzMCwicGF0aCI6Ii82MzkxMjY2OC8zMTAxMjQxOTItNjQ4NTk3N2ItNTMzYi00ZWQ2LWFhYzItNzEyYTFjMzA4ZmU3LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MTIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzEyVDAyMzAzMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTRkODI1OWYwYmVjMzQwNjBjNWMzNjZhM2UwZTQwNWY1MTA5OTNmZTUxMjY1YzZkMmRhNmZkMWVlZDE3M2U4ZTkmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.dSQRja-zGKi1QY_iP0w9f5SUzV1vAERwS9F8V2pQJR4)
![](https://private-user-images.githubusercontent.com/63912668/310123561-70b2d372-d54a-43e5-82c6-ebc45c796f4a.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjA3NTE3MzAsIm5iZiI6MTcyMDc1MTQzMCwicGF0aCI6Ii82MzkxMjY2OC8zMTAxMjM1NjEtNzBiMmQzNzItZDU0YS00M2U1LTgyYzYtZWJjNDVjNzk2ZjRhLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MTIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzEyVDAyMzAzMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTE0YTZhYjZkY2VkMTI3ZGY3Nzg0ZGYyMDVlZWMxZGI4MmMwNzkzNWE1YzhhNDA4YzU2NmY3NmUzZDliM2I0Y2ImWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.vEnQgkHCQQP40Cl9WBOOKX7mA7AyqnPsu87w_RtkVXw)
![](https://private-user-images.githubusercontent.com/63912668/310123557-cb4c846d-f821-4972-9ab8-3e6cd72cd1e7.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjA3NTE3MzAsIm5iZiI6MTcyMDc1MTQzMCwicGF0aCI6Ii82MzkxMjY2OC8zMTAxMjM1NTctY2I0Yzg0NmQtZjgyMS00OTcyLTlhYjgtM2U2Y2Q3MmNkMWU3LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MTIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzEyVDAyMzAzMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTVlOWQ5MTBiOTc1Zjk4YmMxYTZkZGFlZjYyZGJhMGQ0NjA0YzVmZGJiYzAxZjVjMzkxZDM4NmViZDcwNGUyMzgmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.uIET5yrL6-j2MGQ7jAYpBT8w9uoRAu7MguSp4t0p684)
![](https://private-user-images.githubusercontent.com/63912668/310123445-9a62107f-1aea-46a7-b0f5-12872160efd2.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjA3NTE3MzAsIm5iZiI6MTcyMDc1MTQzMCwicGF0aCI6Ii82MzkxMjY2OC8zMTAxMjM0NDUtOWE2MjEwN2YtMWFlYS00NmE3LWIwZjUtMTI4NzIxNjBlZmQyLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MTIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzEyVDAyMzAzMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTkyNjU1ODFiNWIxOGIxM2E2M2I1MTY1ZDMxNzkzZmQyMGUzMTg3ZjJhODYyMTdkMmU4YTNlNmI0ZWY1M2I1YWYmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.neR71JyYgui760s8NGTbXsaT1OeXr4adoO0orUJ8KHQ)
![](https://private-user-images.githubusercontent.com/63912668/310124178-a3398cba-c2a4-4d79-a073-a53986fd93ff.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjA3NTE3MzAsIm5iZiI6MTcyMDc1MTQzMCwicGF0aCI6Ii82MzkxMjY2OC8zMTAxMjQxNzgtYTMzOThjYmEtYzJhNC00ZDc5LWEwNzMtYTUzOTg2ZmQ5M2ZmLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MTIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzEyVDAyMzAzMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTVlMGUwYzAzZjZiNTM0ZTAyZWI2YmYzYWEzYmU4MDM0ZTIxOWY3ZWY2NjYwNjg3ZDQyNWZhY2VjZWVjNzk2NWMmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.XaDPOAPcmwOsm4ApNnOfo3JTStAVOx-xpDRShjOBy3Y)
![](https://private-user-images.githubusercontent.com/63912668/310124350-e3953453-716a-4bf2-8b32-388e7a8f4b7c.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjA3NTE3MzAsIm5iZiI6MTcyMDc1MTQzMCwicGF0aCI6Ii82MzkxMjY2OC8zMTAxMjQzNTAtZTM5NTM0NTMtNzE2YS00YmYyLThiMzItMzg4ZTdhOGY0YjdjLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MTIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzEyVDAyMzAzMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTEwYWU1YWVkNTQ4ZDQ3ZDVhMjY1MDYyNGZiODI4ZGQ5YTQwZmUyYzY1Yzg2ODJhMTU3MWJlMjQwZTJmYTczMjkmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.2IqYocVkJGkshZzRDmVciKBdkFVmI7qfA6Bc5kzpGUA)
![](https://private-user-images.githubusercontent.com/63912668/310123443-2e303fc0-abb6-457c-a245-2a805a2e7536.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjA3NTE3MzAsIm5iZiI6MTcyMDc1MTQzMCwicGF0aCI6Ii82MzkxMjY2OC8zMTAxMjM0NDMtMmUzMDNmYzAtYWJiNi00NTdjLWEyNDUtMmE4MDVhMmU3NTM2LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MTIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzEyVDAyMzAzMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWYxMTYzZjQwMzdjYTMyNjQ5NWVjZDhmODhhMGQyNmM5NWIwZDI5YTg5MmVkNDhjMzVkYWQzOTQwZTU0MGU5OTQmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.Bm1rJLWPeGj_9JkoXuEbBLCmmH7uEJNDxaUDwch2VwM)
![](https://private-user-images.githubusercontent.com/63912668/310124370-fcdd449e-bcdb-41ad-ad05-e6a7fe9a121a.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjA3NTE3MzAsIm5iZiI6MTcyMDc1MTQzMCwicGF0aCI6Ii82MzkxMjY2OC8zMTAxMjQzNzAtZmNkZDQ0OWUtYmNkYi00MWFkLWFkMDUtZTZhN2ZlOWExMjFhLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MTIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzEyVDAyMzAzMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWMxYzI3YTUyYWNhZmM3MGIyNDVmMDljMWE5MTg1MGNlMjEzYzg2Y2I2OTdlYWQzNjllMjUyNzAzYTk5YWFjMzImWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.F11GE6XXzlgglg1qHzct_WIPz9r1-KKENUhuKP8fepM)
![](https://private-user-images.githubusercontent.com/63912668/310123575-0ce98431-977e-476c-932a-35b80a0bc586.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjA3NTE3MzAsIm5iZiI6MTcyMDc1MTQzMCwicGF0aCI6Ii82MzkxMjY2OC8zMTAxMjM1NzUtMGNlOTg0MzEtOTc3ZS00NzZjLTkzMmEtMzViODBhMGJjNTg2LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MTIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzEyVDAyMzAzMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWQwOThjOWM4YzE5YmJhNDI3MjhiZjE2MTIzZTg2YTZlOGMxMzJiY2Q5Y2UzMTlkOGVkOWNlNmRiOWEyY2M2YTgmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.RSu89jyaOhxumkSDKavy6YfycnEP71voibpNiEokJ7Y)
![](https://private-user-images.githubusercontent.com/63912668/310124456-bbdfd7e6-0edd-4918-84ed-625780c20682.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjA3NTE3MzAsIm5iZiI6MTcyMDc1MTQzMCwicGF0aCI6Ii82MzkxMjY2OC8zMTAxMjQ0NTYtYmJkZmQ3ZTYtMGVkZC00OTE4LTg0ZWQtNjI1NzgwYzIwNjgyLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MTIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzEyVDAyMzAzMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTg1NDc3NTVmNDJhODNlNWJhOWVhMTIyNTBiMTgzMDExOWZmYzA0M2UwZmYwODc3ODg0MjU1YmRiNTkzZDZjOTUmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.GtyHgvu4MzZWugAAyrBQGBEhMW1lHHyeb6EAraIhFv0)
![](https://private-user-images.githubusercontent.com/63912668/310124517-e657d156-7c31-4130-a426-ccda920255a5.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjA3NTE3MzAsIm5iZiI6MTcyMDc1MTQzMCwicGF0aCI6Ii82MzkxMjY2OC8zMTAxMjQ1MTctZTY1N2QxNTYtN2MzMS00MTMwLWE0MjYtY2NkYTkyMDI1NWE1LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MTIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzEyVDAyMzAzMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWMzMGY5MTg5ZGI3YmQ3MjMzYjQyYjc4ZjM2YjJkMDFlYTgzYTdmNWQ0MTFkNWJlYzZmNTgwMDMwYjg3NDYxMTYmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.OIrlmpQwiUGM4Xo5fO5HQhaa32cRfwkTOTxzRUDQRyM)
![](https://private-user-images.githubusercontent.com/63912668/310123569-d9331306-99e8-421d-9129-a920ce7afd43.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjA3NTE3MzAsIm5iZiI6MTcyMDc1MTQzMCwicGF0aCI6Ii82MzkxMjY2OC8zMTAxMjM1NjktZDkzMzEzMDYtOTllOC00MjFkLTkxMjktYTkyMGNlN2FmZDQzLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MTIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzEyVDAyMzAzMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTA0NWU5OWE0YzViMDJjMzE0NWQ4NTA1Njc4YzE0MDAxNmNjZTI1ZjE3YWI5YjQ0YzMzYTdhYTY0ODZjZWU4YzUmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.yfVgrCrL1tEbAtu8Udcg08M6rJW3Cpgh9kA-ewTty0U)
![](https://private-user-images.githubusercontent.com/63912668/310124912-a1a4cffb-acba-4819-922d-8037b3cf4add.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjA3NTE3MzAsIm5iZiI6MTcyMDc1MTQzMCwicGF0aCI6Ii82MzkxMjY2OC8zMTAxMjQ5MTItYTFhNGNmZmItYWNiYS00ODE5LTkyMmQtODAzN2IzY2Y0YWRkLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MTIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzEyVDAyMzAzMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWEyZDcyOTg2OTljYzQ1N2FkZjljMGQ0NmU2ZjIzZWFkODdlYThhNzAzYTJiNjJmOTdjNzFjY2QxY2VjMmVkOTImWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.olTY7Y81_6w8MMF8yazjcWYw0HVh6VaKWEMTOkacX20)
![](https://private-user-images.githubusercontent.com/63912668/310125232-06fbd3bd-f3a2-446c-ad6f-53c424f0e159.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjA3NTE3MzAsIm5iZiI6MTcyMDc1MTQzMCwicGF0aCI6Ii82MzkxMjY2OC8zMTAxMjUyMzItMDZmYmQzYmQtZjNhMi00NDZjLWFkNmYtNTNjNDI0ZjBlMTU5LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MTIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzEyVDAyMzAzMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWYwODQzZjFjZDk4ZjI4NzM5YjZlOGJkYTA3ZWM4MjZlYjNkMzdlODQwMDJiNDkzYmU4YjAxMTQ2YWQ5ZThmNmQmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.PtAXr2fo_Socs5dP2HpVBRzRKLgbgOuWCo4CXZEFUC8)
![](https://private-user-images.githubusercontent.com/63912668/310123522-dfd1300d-d0d6-41fc-bef9-379b89cd7ada.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjA3NTE3MzAsIm5iZiI6MTcyMDc1MTQzMCwicGF0aCI6Ii82MzkxMjY2OC8zMTAxMjM1MjItZGZkMTMwMGQtZDBkNi00MWZjLWJlZjktMzc5Yjg5Y2Q3YWRhLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MTIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzEyVDAyMzAzMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTA5ZWIxODA5OTgyOTg4MDJmZTg0NGQ3MjNkODRjM2UwNDU3ZmE2NWM5MGI2OGY3YTZkZDY2MTI2MjIwMjE2YzEmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.qw9XU2vW5F2Vlobgi5yWnwCjkkfSg1ESd3bbb3BvetI)
![](https://private-user-images.githubusercontent.com/63912668/310124730-24dbaf50-35f7-4c5f-890f-7460d7265162.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjA3NTE3MzAsIm5iZiI6MTcyMDc1MTQzMCwicGF0aCI6Ii82MzkxMjY2OC8zMTAxMjQ3MzAtMjRkYmFmNTAtMzVmNy00YzVmLTg5MGYtNzQ2MGQ3MjY1MTYyLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MTIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzEyVDAyMzAzMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTE0OGMwZjExOTA5NGU2M2I5ZmI4ZDk5YjUwNDM1MjgxOGNiZDk5YTViNDMxNGU1ZDhkN2ZlYzZhNWNmYTViNmQmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.LkokXJFp8IMi-REwWtH406OMgfyx4KVOWCQqar05XPY)
![](https://private-user-images.githubusercontent.com/63912668/310124773-29ffa396-f435-4f63-9feb-25346a5e9b6c.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjA3NTE3MzAsIm5iZiI6MTcyMDc1MTQzMCwicGF0aCI6Ii82MzkxMjY2OC8zMTAxMjQ3NzMtMjlmZmEzOTYtZjQzNS00ZjYzLTlmZWItMjUzNDZhNWU5YjZjLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MTIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzEyVDAyMzAzMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWZkMzUzODRhOTRjZTdiMTYxYWU0ZTNlMTEyMGQyZTIyZmE0NjIwMTJlMmVhYmI4ZmJiYWMzNGI5NTc5YWE3OWYmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.EuYXPSRDk0K0gKkAvsFSnSU0HnnXfxMjn_YHjDWtoqU)
![](https://private-user-images.githubusercontent.com/63912668/310123418-c2e4bf77-01fb-4eec-b697-2b0e84615b4a.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjA3NTE3MzAsIm5iZiI6MTcyMDc1MTQzMCwicGF0aCI6Ii82MzkxMjY2OC8zMTAxMjM0MTgtYzJlNGJmNzctMDFmYi00ZWVjLWI2OTctMmIwZTg0NjE1YjRhLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MTIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzEyVDAyMzAzMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWU4ZGRhZDg0ZjYzZjVmYmYzZmNlNTMyNjY2MTMxM2I2MWI5ZWNlYWYyNjA2MTdiNDljZDVjZjQ5MDY5ZmJkOTcmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.nGjeAGns7RVoWl5MOUuLctE6EYv7Ak24jPxB-4gaxWY)
![](https://private-user-images.githubusercontent.com/63912668/310124894-32c17d82-e219-47f2-b631-b726bc8bb424.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjA3NTE3MzAsIm5iZiI6MTcyMDc1MTQzMCwicGF0aCI6Ii82MzkxMjY2OC8zMTAxMjQ4OTQtMzJjMTdkODItZTIxOS00N2YyLWI2MzEtYjcyNmJjOGJiNDI0LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA3MTIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwNzEyVDAyMzAzMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTU1Mzk5MzFlYWE2OWMzMjZjMTJlNTg5YjM0MDFkMzk1Njg4ZjAxODM1OTAyNTc5MGMwMmQ1NGIxNDM0NmZiM2MmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.YrSOmo5KiywzE84Tv4FVcae6FS-RAUBuGZ8IADWFCuI)