SlideShare une entreprise Scribd logo
1  sur  14
Télécharger pour lire hors ligne
SPADE
Javi Palanca
Goals
Simulate different pick-up
strategies for a taxi fleet
Based on agents (SPADE)
Using Agreement
Technologies
Free sandbox
code: https://github.com/javipalanca/taxi_simulator
doc: https://taxi-simulator.readthedocs.io
Taxi Simulator
Agents
TaxiAgent PassengerAgent
CoordinatorAgent
TAXI_WAITING	
TAXI_WAITING_FOR_APPROVAL	
TAXI_MOVING_TO_PASSENGER	
TAXI_IN_PASSENGER_PLACE	
TAXI_MOVING_TO_DESTINY	
PASSENGER_WAITING	
PASSENGER_ASSIGNED	
PASSENGER_IN_TAXI	
PASSENGER_IN_DEST
Request Protocol
TaxiAgent
PassengerAgent CoordinatorAgent
REQUEST_PERFORMATIVE
REQUEST_PERFORMATIVE
PROPOSE_PERFORMATIVE
CANCEL_PERFORMATIVE
ACCEPT_PERFORMATIVE
REFUSE_PERFORMATIVE
GOTO TRAVEL_PROTOCOL pick_up_passenger()
CANCEL_PERFORMATIVE
Strategy Pattern
TaxiAgent
PassengerAgent
CoordinatorAgent
TaxiStrategyBehaviour
PassengerStrategyBehaviour
CoordinatorStrategyBehaviour
def	send_proposal(self,	passenger_id,	content=None)						
def	cancel_proposal(self,	passenger_id,	content=None)					
def	pick_up_passenger(self,	passenger_id,	origin,	dest)		
def	send_request(self,	content=None)	
def	accept_taxi(self,	taxi_aid)							
def	refuse_taxi(self,	taxi_aid)							
def	timeout_receive(self,	timeout=5)			
REQUEST_PROTOCOL
_process(self)
_process(self)
_process(self)
Install
$ pip install --user virtualenv
# Create virtual environment with python 2.7
$ virtualenv --python=`which python2.7` taxi_demo
$ cd taxi_demo/
$ source bin/activate
(taxi-demo)$
# Install taxi simulator
(taxi-demo)$ pip install taxi_simulator
# Run taxi simulator
(taxi-demo)$ taxi_simulator --help
Usage(taxi-demo)$ taxi_simulator --help
Usage: taxi_simulator [OPTIONS]
Console script for taxi_simulator.
Options:
-t, --taxi TEXT Taxi strategy class (default:
AcceptAlwaysStrategyBehaviour).
-p, --passenger TEXT Passenger strategy class (default:
AcceptFirstRequestTaxiBehaviour).
-c, --coordinator TEXT Coordinator strategy class (default:
DelegateRequestTaxiBehaviour).
--port INTEGER Web interface port (default: 9000).
-nt, --num-taxis INTEGER Number of initial taxis to create (default:
0).
-np, --num-passengers INTEGER Number of initial passengers to create
(default: 0).
--name TEXT Coordinator agent name (default:
coordinator).
--passwd TEXT Coordinator agent password (default:
coordinator_passwd).
-bp, --backend-port INTEGER Backend port (default: 5000).
-v, --verbose Show verbose debug.
--help Show this message and exit.
Run
(taxi-demo)$ taxi_simulator --port 9999
INFO:root:XMPP server running.
INFO:root:Running SPADE platform.
INFO:root:Creating 0 taxis and 0 passengers.
INFO:CoordinatorAgent:Coordinator agent running
INFO:CoordinatorAgent:Web interface running at http://127.0.0.1:9999/app
INFO:werkzeug: * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
Open http://127.0.0.1:9999/app
Default Strategies: Coordinator
class	DelegateRequestTaxiBehaviour(CoordinatorStrategyBehaviour):	
				def	_process(self):	
								msg	=	self._receive(block=True)	
								msg.removeReceiver(coordinator_aid)	
								for	taxi	in	self.myAgent.taxi_agents.values():	
												msg.addReceiver(taxi.getAID())	
												self.myAgent.send(msg)	
												self.logger.debug("Coordinator	sent	request	to	taxi	{}".format(taxi.getName()))
Default Strategies: Taxi
class	AcceptAlwaysStrategyBehaviour(TaxiStrategyBehaviour):	
				def	_process(self):	
								msg	=	self._receive(block=True)	
								content	=	json.loads(msg.getContent())	
								performative	=	msg.getPerformative()	
								self.logger.debug("Taxi	{}	received	request	protocol	from	passenger	{}.".format(self.myAgent.agent_id,	
																																																																																								content["passenger_id"]))	
								if	performative	==	REQUEST_PERFORMATIVE:	
												if	self.myAgent.status	==	TAXI_WAITING:	
																self.send_proposal(content["passenger_id"],	{})	
																self.myAgent.status	=	TAXI_WAITING_FOR_APPROVAL	
																self.logger.debug("Taxi	{}	sent	proposal	to	passenger	{}.".format(self.myAgent.agent_id,	
																																																																																		content["passenger_id"]))	
								elif	performative	==	ACCEPT_PERFORMATIVE:	
												if	self.myAgent.status	==	TAXI_WAITING_FOR_APPROVAL:	
																self.logger.debug("Taxi	{}	got	accept	from	{}".format(self.myAgent.agent_id,	
																																																																						content["passenger_id"]))	
																self.pick_up_passenger(content["passenger_id"],	content["origin"],	content["dest"])	
												else:	
																self.cancel_proposal(content["passenger_id"],	{})	
								elif	performative	==	REFUSE_PERFORMATIVE:	
												self.logger.debug("Taxi	{}	got	refusal	from	{}".format(self.myAgent.agent_id,	
																																																																			content["passenger_id"]))	
												self.myAgent.status	=	TAXI_WAITING
Default Strategies: Passenger
class	AcceptFirstRequestTaxiBehaviour(PassengerStrategyBehaviour):	
				def	_process(self):	
								if	self.myAgent.status	==	PASSENGER_WAITING:	
												self.send_request(content={})	
								msg	=	self.timeout_receive(timeout=5)	
								if	msg:	
												performative	=	msg.getPerformative()	
												if	performative	==	PROPOSE_PERFORMATIVE:	
																taxi_aid	=	msg.getSender()	
																if	self.myAgent.status	==	PASSENGER_WAITING:	
																				self.logger.debug("Passenger	{}	received	proposal	from	{}".format(self.myAgent.agent_id,	
																																																																																						taxi_aid.getName()))	
																				self.accept_taxi(taxi_aid)	
																else:	
																				self.refuse_taxi(taxi_aid)	
												elif	performative	==	CANCEL_PERFORMATIVE:	
																self.myAgent.status	=	PASSENGER_WAITING
Utils
def	build_aid(agent_id):	
				return	aid(name=agent_id	+	"@127.0.0.1",	addresses=["xmpp://"	+	agent_id	+	"@127.0.0.1"])	
coordinator_aid	=	build_aid("coordinator")	
def	random_position():	
			...	
			return	[lat,	lon]	
def	are_close(coord1,	coord2,	tolerance=10):	
				return	vincenty(coord1,	coord2).meters	<	tolerance	
def	request_path(ori,	dest):	
				...	
				return	path,	distance,	duration	
from	geopy	import	vincenty	
vincenty(coord1,	coord2).meters
Exercices
from	taxi_simulator.coordinator	import	CoordinatorStrategyBehaviour	
from	taxi_simulator.passenger	import	PassengerStrategyBehaviour	
from	taxi_simulator.taxi	import	TaxiStrategyBehaviour	
################################################################	
#																																																														#	
#																					Coordinator	Strategy																					#	
#																																																														#	
################################################################	
class	MyCoordinatorStrategy(CoordinatorStrategyBehaviour):	
				def	_process(self):	
							#	Your	code	here	
################################################################	
#																																																														#	
#																									Taxi	Strategy																								#	
#																																																														#	
################################################################	
class	MyTaxiStrategy(TaxiStrategyBehaviour):	
				def	_process(self):	
							#	Your	code	here	
################################################################	
#																																																														#	
#																							Passenger	Strategy																					#	
#																																																														#	
################################################################	
class	MyPassengerStrategy(PassengerStrategyBehaviour):	
				def	_process(self):	
							#	Your	code	here	
1. Closest taxi strategy 



2. Dynamic closest taxi

strategy

(cancelling ongoing taxis)
my_strategies.py
(taxi-demo)$ taxi_simulator --port 9999 --coordinator my_strategies.MyCoordinatorStrategy
--taxi my_strategies.MyTaxiStrategy --passenger my_strategies.MyPassengerStrategy

Contenu connexe

Similaire à Taxi Simulator

STEP Annual Conference 2018 - Merry Scott, Liftshare Smart Parking and Scoping
STEP Annual Conference 2018 - Merry Scott, Liftshare Smart Parking and Scoping STEP Annual Conference 2018 - Merry Scott, Liftshare Smart Parking and Scoping
STEP Annual Conference 2018 - Merry Scott, Liftshare Smart Parking and Scoping STEP_scotland
 
Automatic car parking system with and without password report
Automatic car parking system with and without password reportAutomatic car parking system with and without password report
Automatic car parking system with and without password reportSOHIL PATEL
 
On demand taxi service mobile app platform
On demand taxi service mobile  app platformOn demand taxi service mobile  app platform
On demand taxi service mobile app platformHarikrishna Patel
 
LSCM ASSIGNMENT 2.docx
LSCM ASSIGNMENT 2.docxLSCM ASSIGNMENT 2.docx
LSCM ASSIGNMENT 2.docxraymondcyril1
 
Travel api integration
Travel api integrationTravel api integration
Travel api integrationLeenaSajo
 
Custom PHP Web Development Company
Custom PHP Web Development CompanyCustom PHP Web Development Company
Custom PHP Web Development CompanyManekTech
 
WordPress Web Development | ManekTech
WordPress Web Development | ManekTechWordPress Web Development | ManekTech
WordPress Web Development | ManekTechManekTech
 
Angularjs Web Application Development
 Angularjs Web Application Development Angularjs Web Application Development
Angularjs Web Application DevelopmentManekTech
 
Opensource Technology
Opensource TechnologyOpensource Technology
Opensource TechnologyManekTech
 
Hands-On Lab: Quickly and Easily Monitor Applications using CA Application Pe...
Hands-On Lab: Quickly and Easily Monitor Applications using CA Application Pe...Hands-On Lab: Quickly and Easily Monitor Applications using CA Application Pe...
Hands-On Lab: Quickly and Easily Monitor Applications using CA Application Pe...CA Technologies
 
Psa car easy apps
Psa car easy appsPsa car easy apps
Psa car easy appsFabMob
 
Car Parking Management Software At Watermelon Parking.pptx
Car Parking Management Software At Watermelon Parking.pptxCar Parking Management Software At Watermelon Parking.pptx
Car Parking Management Software At Watermelon Parking.pptxwatermelonparking9
 
Intelligent Parking Management System.pptx
Intelligent Parking Management System.pptxIntelligent Parking Management System.pptx
Intelligent Parking Management System.pptxwatermelonparking9
 
The Role Of Artificial Intelligence in Taxi Booking App Development
The Role Of Artificial Intelligence in Taxi Booking App DevelopmentThe Role Of Artificial Intelligence in Taxi Booking App Development
The Role Of Artificial Intelligence in Taxi Booking App DevelopmentV3cube
 
Dev summer2016 - Automation code as Production code
Dev summer2016 - Automation code as Production codeDev summer2016 - Automation code as Production code
Dev summer2016 - Automation code as Production codeKostas Mamalis (CSM CSPO)
 
Automated Car Parking Solutions
Automated Car Parking SolutionsAutomated Car Parking Solutions
Automated Car Parking SolutionsWatermelonParking
 
[WSO2 Integration Summit Bern 2019] API-led Integration
[WSO2 Integration Summit Bern 2019] API-led Integration[WSO2 Integration Summit Bern 2019] API-led Integration
[WSO2 Integration Summit Bern 2019] API-led IntegrationWSO2
 
hSenid Mobile presentation at TADHack
hSenid Mobile presentation at TADHackhSenid Mobile presentation at TADHack
hSenid Mobile presentation at TADHackAlan Quayle
 
5 years Business Plan for EParivahan.com
5 years Business Plan for EParivahan.com5 years Business Plan for EParivahan.com
5 years Business Plan for EParivahan.comDEEPRAJ PATHAK
 

Similaire à Taxi Simulator (20)

STEP Annual Conference 2018 - Merry Scott, Liftshare Smart Parking and Scoping
STEP Annual Conference 2018 - Merry Scott, Liftshare Smart Parking and Scoping STEP Annual Conference 2018 - Merry Scott, Liftshare Smart Parking and Scoping
STEP Annual Conference 2018 - Merry Scott, Liftshare Smart Parking and Scoping
 
Automatic car parking system with and without password report
Automatic car parking system with and without password reportAutomatic car parking system with and without password report
Automatic car parking system with and without password report
 
On demand taxi service mobile app platform
On demand taxi service mobile  app platformOn demand taxi service mobile  app platform
On demand taxi service mobile app platform
 
LSCM ASSIGNMENT 2.docx
LSCM ASSIGNMENT 2.docxLSCM ASSIGNMENT 2.docx
LSCM ASSIGNMENT 2.docx
 
Travel api integration
Travel api integrationTravel api integration
Travel api integration
 
Custom PHP Web Development Company
Custom PHP Web Development CompanyCustom PHP Web Development Company
Custom PHP Web Development Company
 
WordPress Web Development | ManekTech
WordPress Web Development | ManekTechWordPress Web Development | ManekTech
WordPress Web Development | ManekTech
 
Angularjs Web Application Development
 Angularjs Web Application Development Angularjs Web Application Development
Angularjs Web Application Development
 
Opensource Technology
Opensource TechnologyOpensource Technology
Opensource Technology
 
Hands-On Lab: Quickly and Easily Monitor Applications using CA Application Pe...
Hands-On Lab: Quickly and Easily Monitor Applications using CA Application Pe...Hands-On Lab: Quickly and Easily Monitor Applications using CA Application Pe...
Hands-On Lab: Quickly and Easily Monitor Applications using CA Application Pe...
 
Psa car easy apps
Psa car easy appsPsa car easy apps
Psa car easy apps
 
Car Parking Management Software At Watermelon Parking.pptx
Car Parking Management Software At Watermelon Parking.pptxCar Parking Management Software At Watermelon Parking.pptx
Car Parking Management Software At Watermelon Parking.pptx
 
Mobile based app
Mobile based appMobile based app
Mobile based app
 
Intelligent Parking Management System.pptx
Intelligent Parking Management System.pptxIntelligent Parking Management System.pptx
Intelligent Parking Management System.pptx
 
The Role Of Artificial Intelligence in Taxi Booking App Development
The Role Of Artificial Intelligence in Taxi Booking App DevelopmentThe Role Of Artificial Intelligence in Taxi Booking App Development
The Role Of Artificial Intelligence in Taxi Booking App Development
 
Dev summer2016 - Automation code as Production code
Dev summer2016 - Automation code as Production codeDev summer2016 - Automation code as Production code
Dev summer2016 - Automation code as Production code
 
Automated Car Parking Solutions
Automated Car Parking SolutionsAutomated Car Parking Solutions
Automated Car Parking Solutions
 
[WSO2 Integration Summit Bern 2019] API-led Integration
[WSO2 Integration Summit Bern 2019] API-led Integration[WSO2 Integration Summit Bern 2019] API-led Integration
[WSO2 Integration Summit Bern 2019] API-led Integration
 
hSenid Mobile presentation at TADHack
hSenid Mobile presentation at TADHackhSenid Mobile presentation at TADHack
hSenid Mobile presentation at TADHack
 
5 years Business Plan for EParivahan.com
5 years Business Plan for EParivahan.com5 years Business Plan for EParivahan.com
5 years Business Plan for EParivahan.com
 

Dernier

WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfonteinmasabamasaba
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...masabamasaba
 
WSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaSWSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaSWSO2
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...SelfMade bd
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...masabamasaba
 
WSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - KeynoteWSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - KeynoteWSO2
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2
 
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Bert Jan Schrijver
 
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With SimplicityWSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With SimplicityWSO2
 
WSO2CON 2024 - How to Run a Security Program
WSO2CON 2024 - How to Run a Security ProgramWSO2CON 2024 - How to Run a Security Program
WSO2CON 2024 - How to Run a Security ProgramWSO2
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2
 
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in sowetomasabamasaba
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisamasabamasaba
 
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...WSO2
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024VictoriaMetrics
 
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...masabamasaba
 
Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxArtyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxAnnaArtyushina1
 
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...chiefasafspells
 

Dernier (20)

WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
 
WSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaSWSO2CON 2024 Slides - Open Source to SaaS
WSO2CON 2024 Slides - Open Source to SaaS
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
 
WSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - KeynoteWSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - Keynote
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?
 
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
 
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With SimplicityWSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
 
WSO2CON 2024 - How to Run a Security Program
WSO2CON 2024 - How to Run a Security ProgramWSO2CON 2024 - How to Run a Security Program
WSO2CON 2024 - How to Run a Security Program
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
 
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
 
Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxArtyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptx
 
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
 

Taxi Simulator