and Demonstration Software
Agent-Based Computational Economics (ACE),
Agent-Based Modeling (ABM), and
Complex Adaptive Systems (CAS)
- Last Updated: 20 July 2017
- Site maintained by:
- Department of Economics
- Iowa State University
- Ames, Iowa 50011-1070
tesfatsi AT iastate.edu
ACE Website Homepage
ACE/ABM/CAS General Software and Agent-Based Toolkits
ACE Course 308 (Self-Study eBook)
Software Release Disclaimer:
- All software provided below is unsupported and provided as-is, without
warranty of any kind, unless otherwise specified by the provider.
Computational laboratories (CLs) are computational frameworks that
permit the study of complex system behaviors by means of controlled and
replicable experiments. Agent-based Computational Economics (ACE) is
the computational study of economic processes modeled as dynamic systems of
interacting agents. ACE researchers generally conduct their studies in the
context of CLs. To date, however, there does not seem to have been any
systematic attempt to encourage the web-publication of these CLs at a
centralized accessible site for general ACE research and teaching purposes.
The CLs and demonstration software linked at this site cover ACE applications
as well as general agent-based modeling (ABM) and complex adaptive systems (CAS) applications of possible
interest to ACE researchers. The ultimate goal of this site is to facilitate
the understanding of the ACE methodology by permitting people to obtain
hands-on experience running simple ACE/ABM/CAS experiments under different
parameter settings with no original programming required and with rapid
visual feedback of findings. Not all of the CLs and demos listed below
currently possess these desired attributes, but they constitute a useful
start towards the goal.
ACE Comp Labs and Demos
- Adaptive Modeler - Agent-Based Financial Market Simulation Platform (Proprietary, Free Evaluation Version)
developed by Jim Witkam (Altreva, Inc.),
creates agent-based market simulation models for price forecasting of real world stocks, currencies or other market traded securities. The agent-based model simulates a financial market consisting of thousands of agents whose (technical) trading rules evolve through a special adaptive form of genetic programming. The evolution of trading rules combined with market pricing dynamics drives the agent population to learn to recognize and anticipate recurring price patterns while adapting to changing market behavior. Forecasts can be based on either the behavior of all agents or on a dynamic group of the best performing agents. For ACE researchers this application may be of interest to study the behavior and emergent predictive abilities of an agent-based market model that includes information from a real-world market. Several model initialization options are included such as a user configurable genetic programming engine for the creation of trading rules. Simulation of zero intelligence trading is also supported. Various population statistics and other data can be visualized in charts, distribution histograms and scatter plots, all in real-time. Data can be exported to CSV files for further analysis in other applications. A free (non-expiring) evaluation version with extensive documentation can be downloaded from the Adaptive Modeler homepage, above. Adaptive Modeler is targeted for Windows platforms and requires an installation of Microsoft .Net 2.0 or higher.
- Agent-Based Modelling: The BehaviourComposer (U of Oxford, Free)
is a tool for teaching agent-based modeling (ABM). Not only does it enable students to explore their subjects more deeply through ABM but it also provides them with a first step towards learning computer programming for building models. It is currently being used not only in Biology, but also in business studies and in the study of religion in society. For a short easy guide to the BehaviourComposer visit the
Modelling4All YouTube Channel
and watch the video tutorial.
AMES Wholesale Power Market Test Bed (Java)
AMES Wholesale Power Market Test Bed,
developed entirely in Java by an interdisciplinary team of researchers at Iowa State University,
is an extensible and modular agent-based computational laboratory for studying the
dynamic efficiency and reliability of wholesale power markets restructured in
accordance with guidelines issued by the U.S. Federal Energy Regulatory Commission.
The framework models strategically-learning traders interacting over time in an ISO-managed
wholesale power market operating over an AC transmission grid subject to
congestion effects. Congestion on the grid is managed by means of locational
marginal prices derived from optimal power flow solutions.
- AMES is a free open-source tool suitable for research, teaching, and training
applications. It is designed for the intensive experimental study of small to medium-sized systems. A graphical
user interface permits the creation, modification, analysis and storage of scenarios,
parameter initialization and editing, specification of behavioral rules (e.g.
learning methods) for market participants, and output reports through table and chart displays.
AMES is an acronym for Agent-based Modeling of Electricity Systems.
- JAMEL: Java Agent-based MacroEconomic Laboratory
JAMEL (Java Agent-based MacroEconomic Laboratory),
developed by Pascal Seppecher (GREQAM), is a cross-platform macroeconomic simulator developed in Java. Applications to date include the study of macroeconomic systems with endogenous money, with productivity shocks, with expenditure shocks, with a flexible labor market, and with a minimum wage. [NOTE: The first time this page is opened, there is a delay due to the loading of a Java applet.]
- Keynesian Agent-Based Economic Modelling (Borland Pascal)
(Aalborg University, Denmark) has developed a software program in
object-oriented Pascal (Borland Pascal 7.0) to study the interaction of
macro- and microeconomics in a Keynesian world where emphasis is placed on
the production circuit rather than on market clearing. Agents, governed by
simple decision rules, act on markets for consumption goods, investment
goods, labour, and financial assets. The role of credit is given special
attention, and the user is, among other things, allowed to turn on or off the
credit squeeze. The software program, along with a paper explaining the
program, are available for downloading (as zip files) from her home page.
- Landscape Dynamics: Evolutionary Games (NetLogo Applets)
- Daniel Friedman and Ralph Abraham (University of California, Santa Cruz) maintain a site
to showcase some of their efforts to develop a mathematical modeling and computer
simulation technology based on evolutionary games with continuous spaces of strategies.
Applications to economic systems, such as financial markets, are stressed.
NetLogo applets for models developed to date can be found under the "Models"
section at this site.
- Market Demos (Visual Basic)
- Valentino Piana (Director, Economics Web Institute, Italy)
maintains a site devoted to downloadable
interactive market simulation models,
including "Race to Market," "You are an Exporter," "You are a
Monopolist," "The Standard Monopoly Theory," The IS-LM Model" (by Masaru
Uzawa), and "Graphical Representations of Cost Functions."
- Multi-Agent Economy Simulation (Java)
- Erich Kutschinski and Thoman Uthmann (University of Mainz, Germany)
together with Daniel Polani (University of Hertfordshire, UK) have packaged
and made publicly available the
DMarks II software
to accompany their article "Learning Competitive Pricing Strategies by
Multi-Agent Reinforcement Learning," Journal of Economic Dynamics and
Control, Volume 27 (2003), 2207-2218. Materials provided at this site
include the source and compiled code, javadoc, some scripts showing how to
run simulations, and a powerpoint presentation. The article is available
- Santa Fe Artificial Stock Market (Swarm and Objective C)
- The Santa Fe Institute (SFI) has open-sourced the Santa Fe Artificial
Stock Market (ASM) simulation model, originally developed by a number of SFI
researchers in Objective C using the Swarm toolkit. The
latest ASM-Swarm file releases
can be downloaded from an ASM sourceforge page and repository maintained by
Paul E. Johnson (Political Science, University of Kansas, Lawrence).
- Small-World Trade Network Demo (NetLogo)
Small-World Trade Network Demo
(Professor of Economics, Miami University, Oxford, Ohio) implements a trade model designed by
Allen Wilhite (Computational Economics, 2001).
The purpose of the Wilhite trade model is to examine the effects of small-world network structure on the market efficiency of bilateral trade. The Small-World Trade Network Demo can be either be run in a web browser or downloaded as a NetLogo file to run locally using NetLogo 4.0.3 (or higher).
Possible network structures available for testing include globally (completely) connected, locally connected, locally disconnected, and small-world (local connectivity with global reach). See, also,
Notes on the Wilhite Trade Model.
- Sugarscape (Object Pascal, NetLogo, MASON)
- Joshua Epstein and Rob Axtell have developed an agent-based computational
for the study of human social phenomena such as
trade, migration, group formation, combat, interaction with an environment,
transmission of culture, propagation of disease, and population dynamics.
See J. Epstein and R. Axtell, Growing Artificial Societies: Social
Science from the Bottom Up, MIT Press/Brookings, MA, 1996.
- A brief
of the Epstein-Axtell monograph by L. Tesfatsion appears in
"Review of J. M. Epstein and R. Axtell, Growing Artificial
Societies: Social Science from the Bottom Up,"
Journal of Economic Literature XXXVI (March 1998), pp.
- A CD-ROM edition of the monograph is available; for ordering
information, contact the
Brookings Institution Press.
- The CD-ROM edition operates on both Macintosh and Windows platforms
and contains the complete text as well as the Sugarscape animations,
which can be viewed in their entirety.
- The original Object Pascal source
code for Sugarscape is not publicly posted (interested
readers should contact the authors for availability information).
Tony Bigbee has released a Java-based open source replication of the classic Sugarscape model, called
that is implemented using George Mason University's MASON agent-based simulation toolkit. Most, but not all, of the Sugarscape rules are implemented.
- TNG Lab: A Computational Laboratory for
Evolutionary Trade Networks (WinDesktop, C++/Visual Basic)
- The Trade Network Game Laboratory (TNG Lab) is a
computational laboratory for exploring the evolution of trade networks among
strategically interacting traders (buyers, sellers, and dealers) operating under
variously specified market protocols.
The TNG Lab blends and extends standard matching theory and sequential game theory in that each trader
jointly determines over time both whom to seek trades with (partner selection) and how to behave
in any trade interactions that take place (strategy selection).
- Once a trade partnership is determined, the partners engage in a bilateral trade interaction modeled as
a symmetric 2-person game (e.g., Prisoner's Dilemma, Chicken, Stag Hunt).
The traders use genetic algorithm learning to evolve
their trading strategies over time based on outcomes from their past trade interactions.
The TNG Lab has a clear easily-operated Graphical User Interface (GUI)
that permits users to experiment with alternative settings for key parameters pertaining to learning, payoffs,
types and numbers of agents, and the physics controlling network displays.
The formation/evolution of trade networks is visualized by means of run-time animations, run-time
charts, and run-time data displays.
- Automatic installation software for the TNG Lab, together with tutorials and
research articles, can be obtained at the
TNG Home Page.
- Winner's Curse Applet
- Mike Shor (Owen Graduate School of Management, Vanderbilt University)
has developed a
Winner's Curse Applet
that permits users to experimentally explore the well-known "winner's curse"
problem in common-value auctions. The Winner's Curse is the observation that
winners in such auctions typically turn out to pay too much relative to true
valuation. They win because they are overly optimistic.
- Zero-Intelligence Trading Demo (Java Applet/NegLogo Model)
- Mark McBride (Economics Department, Miami University, Ohio) has developed
Zero-Intelligence Trading Demonstration Software
that is based upon the double-auction trading experiments
conducted with "Zero-Intelligence (ZI)" traders by Gode and Sunder (Journal of Political Economy, 1993).
A Java Applet is available at this site that permits you to run ZI trading experiments in a Java-enabled browser
(Java 1.4.X or later). Alternatively, a NetLogo model can be downloaded for running on a personal computer
with a NetLogo
3.1.1 (or later) installation.
General ABM/CAS Comp Labs and Demos
- Artificial Life Resource Site: Zooland
- From 1995-2004 Jörg Heitkötter maintained an extensive, annotated, and carefully categorized site titled
Artificial Life Resource Site: Zooland
that includes demos for many of the most famous early alife models.
- Artificial Life (Java Applets)
- Tim Tyler provides collections of interactive Java applet demonstrations
focusing on artificial life and texture generation at a Web site titled
Lotus Artificial Life
Axelrod Tournament Demo (WinDesktop, C#/.Net)
- In 1979, Robert Axelrod (University of Michigan, Ann Arbor) posed an
intriguing question: What type of strategy (if any) ensures good
individual performance over the long haul when one is engaging in repeated
Prisoner's Dilemma game play in round-robin fashion with multiple strangers
whose strategies are not known in advance? Axelrod explored this question by
conducting a computer tournament with strategies solicited from game
experts from all over the world.
- Chris Cook (Computer Science Department, Iowa State University,
Ames) has developed the Axelrod Tournament Demo, a computational laboratory
that captures and extends the salient aspects of Axelrod's 1979 tournament.
The Axelrod Tournament permits a user to specify as treatment factors the
number of tournament iterations, the total number of agents (strategies)
comprising the initial tournament population, the types of agents in this
population, and the form of payoff matrix for each agent type. The latter
feature extends Axelrod's original tournament by permitting matched agents to
engage in a wide variety of two-player games (Chicken, Stag Hunt, etc.)
depending on their specified types. The user can then observe the
comparative performance over time of each agent, and each agent type, by
means of run-time graphical and text displays.
- Cook's Axelrod Tournament Demo is
available as freeware under the GNU Public License. Automatic installation
software for this computational laboratory, together with more detailed
information about its capabilities and implementation, can be obtained at
The Axelrod Tournament: Demonstration Software (html).
- Biomorphs: Simulation of Biological Evolution
- In The Blind WatchMaker (W.W. Norton and Co., New York, 1987),
Richard Dawkins introduces the concept of "biomorphs," i.e., encapsulated
software programs capable of breeding. Those bred within a particular
"pedigree" have a precisely known relationship to each other and a precisely
known genetic make-up. Dawkins (Appendix, p. 15) claims that these features
make biomorphs "ideally suited to verifying methods of taxonomy, and also to
teaching the principles of taxonomy."
- A large variety of interactive biomorph demos are available on-line. For
a simple example, see the demo at
Richard Dawkins' Biomorphs.
An interactive biomorph demo with interesting additional features can be
Introduction to Biomorphs.
- Boids: Simulation of Flocking Creatures (Java Applets)
- Craig Reynolds (Sony, Research and Development Group) maintains a web
featuring his simulations of flocking creatures called "boids." His basic
flocking model consists of three simple steering behaviors possessed by each
individual boid that govern how each boid maneuvers itself based on the
positions and velocities of its nearby flockmates. As illustrated by the
Java applets at this site, the model results in amazingly life-like
collective flocking dynamics. Also available at this site is a link to work
by Reynolds on an interactive system permitting user interaction with large
groups of autonomous characters. The characters respond in real time to the
user's interaction as well as to each other and their environment.
- Cellular Automata Lab (WinDesktop)
- From the CelLab User Guide: "The first edition of
was developed by Rudy Rucker and John Walker in 1988 and 1989 when both were
working in the Autodesk research lab... Celab allows you to explore cellular
automata on your own personal computer, running under MS-DOS or Windows. You
can define your own rules by writing short programs in Java, C, BASIC, or
Pascal, create patterns of cells and color palettes, then run the rule and
observe its evolution on the screen. We supply a wide variety of
ready-to-run rules, simulating processes as varied as heat flow, diffusion of
gases, annealing of metal, behavior of tubeworms on the ocean floor, chemical
reactions, and ecosystems of artificial life. Complete source code for all
of these rule definitions in included in both Java and Pascal, allowing you
to use our rule definitions as the point of departure for your own
experiments. Advanced users can customize the cellular automata simulator by
writing custom evaluators in assembly language for DOS or Windows, or as a
DLL written in C for the Windows-based simulator."
- Rudy Rucker is Professor
of Mathematics and Computer Science at San Jose State University. John
Walker is founder and former president of Autodesk, Inc.
- Cellular Automata: Mirek's Cellebration (Windows)
Mirek's Cellebration (MCell)
is a freeware computer program for running one-dimensional and two-dimensional cellular automata. It is written by Mirek Wójtowicz and runs on a Windows platform. It has support for many rules in fifteen different families: "Life", "Generations", "Weighted Life", "Vote for Life", "Rules tables", "Cyclic CA", "1-D binary CA", "1-D totalistic CA", "Neumenn binary", "General binary", "Large than Life", "Margolus neighborhood", "User DLLs", "Special rules", and "Weighted Generations". The latest versions allow users to rewind to previous generations of any open cellular automata, undo changes made to the grid, and find periodic patterns automatically. Extensive CA materials, downloadable source code, and code documentation are available at the above MCell site.
- Complex Adaptive Systems Demos (Mac)
- Robert Goldstone (Department of Psychology, Indiana University) maintains
a site that provides
Complex Adaptive Systems Demonstration Software
for an undergraduate course he teaches on complex adaptive systems. The
software programs available at this site, designed to be run on Macintosh
computers, permit students to explore complex systems interactively by
setting experimental parameters, conducting experiments, and instantly seeing
the results of the experiments.
- Complexity Class Materials
- Scotte Page (Complex Systems, Political Science, and Economics, U of Michigan) has posted
Complexity Class Materials
for an undergraduate course on complexity modeling and game theory.
- Complexity Workshop (Tutorials/Demos)
Owen Densmore has developed a
aimed at researchers and business people who are
computer and complexity novices. These tutorials use two
generally available modeling systems,
Both tutorials begin with how to download and install the software and access
the documentation and "demo" models. They both then lead the reader through
building a very simple model of the buttons phase transition presented in
Stuart Kauffman's book At Home in the Universe. Repast and NetLogo
are chosen for their synergy: a project will typically explore several
potential models using NetLogo as a "what-if" environment, then graduate to
RePast for its performance and access to more advanced features such as
Geographical Information Systems. The initial NetLogo simulations provide
additional value by being easily put into web pages as applets.
- Emergence: Interactive Tutorial
- Mitchel Resnick and Brian Silverman (Epistemology and Learning
Group, MIT Media Laboratory) have developed an interactive tutorial on
The authors examine how objects and patterns can arise from simple
interactions in ways that are surprising and counterintuitive.
- Note: A Java-enabled browser is required to run the applets
accompanying this tutorial.
Evolution of Cooperation and the Prisoner's Dilemma
Complexity of Cooperation Website
provides software and documentation (as well as other resources)
related to two books by
(a) The Complexity of Cooperation: Agent-Based Models of Competition and
Collaboration, Princeton University Press, 1997; and (b) The Evolution
of Cooperation, Basic Books, 1994.
- Game of Life (Java Applet)
- Paul Callahan maintains a site called
What is the Game of Life?.
This site explains and presents, in interactive form, a delightful game
invented by John Conway in the 1970s demonstrating that even very simple
rules can lead to extremely complicated outcomes.
- Game of Life (WinDesktop)
- Johan Bontes (University of Wisconsin) maintains a site titled
where people can go to download and install Game of Life freeware for Windows
Win9x/NT/2000/XP. Bontes describes Life32 as the "best, fastest, most
user-friendly life player around."
- Hunter-Gatherer Artificial Society (WinDesktop, C#/.Net)
- Andrew Schlei (Computer Science Department, Iowa State University,
Ames) has developed an interactive demo of a spatial hunter-gatherer society,
called Hunters. The Hunters demo, targeted for the Microsoft desktop,
has an easily manipulated graphical user interface. A population of
hunter-gatherer agents, called hunters, must secure food in order to survive.
Food can be gathered at food sources randomly located throughout the hunters
two-dimensional cellular world. The Hunter agents have three possible food
strategies: (1) Gather food and hoard it for later consumption; (2) attack and
steal food from other agents they encounter; or (3) share food with other
agents they encounter. The behavior of Hunter agents is governed by two
factors: individual learning; and evolution of the population in accordance
with natural selection principles.
- Andrew Schlei has released his Hunters demo as freeware under the
GNU Public License. Automatic installation software for his Hunters demo can
be obtained at
The Hunters Home Page.
Also available at this site is a more detailed description of the Hunters
world, a description of the Hunter demo's capabilities, instructions for using
the automatic installation software, a link for accessing the Hunters demo
source code (Visual C++), and copyright information.
- Mandelbrot and Julia Sets (On-Line)
- David Joyce (Department of Mathematics and Computer Science, Clark
University, Worcester, MA) maintains an interactive website where interested
parties can create and view images of
Mandelbrot and Julia Sets.
The website also includes an archive of recently created images as well as
pointers to related websites.
- Mophological Simulations: Karl Sim's Interactive Works (On-Line)
- Karl Sims (GenArts, Inc., Cambridge, Massachusetts) has created a
variety of interactive computer displays involving the evolution of 3D
animated forms. For more information, visit
Karl Sims' Home Page.
- NetLogo Agent-Based Modeling: The Modelling4All Project (On-Line)
at the University of Oxford has built the Behaviour Composer, a web-based application for building and running NetLogo agent-based models. NetLogo models are broken down into "micro-behaviours". Each micro-behaviour lives on its own web page. The Behaviour Composer can be used from any browser. In it one browses for micro-behaviours, assembles them into prototypes (similar to NetLogo breeds), and the service generates a complete NetLogo program that can be run as an applet or downloaded into NetLogo. To facilitate the modularity of micro-behaviours we have added to NetLogo scheduling primitives and support for simultaneous updates.
The software has been especially successful in a classroom setting where students are able to assemble, run, experiment with, and analyse serious models without first learning NetLogo programming.
The site and web-based tools are free to all. The source code is open.
- NetLogo Models
- The Center for Connected Learning (Northwestern University, Evanston,
Illinois) maintains a
NetLogo User Community Models Site
that provides links to models contributed from the NetLogo user community to
be shared with other NetLogo users. The models cover a wide range of topics
in biology, chemistry, physics, and the social sciences. For example, the
social science models include a simple version of the Schelling Segregation
Model and various prisoner's dilemma models.
- Newton Basins (On-Line)
Nonlinear equations F(x)=0 typically have multiple solutions x. Newton's
method for finding solutions to nonlinear equations is a successive
approximation technique with the property that different starting points can
converge to different solutions. A Newton basin is a set of starting
points for Newton's method that all lead to one particular solution. It
turns out that Newton basins are "fractals" in the complex plane with
beautifully intricate boundaries that can be visualized by applying distinct
colorations to starting points converging to distinct solutions (or to no
solution). David Joyce (Department of Mathematics and Computer Science,
Clark University, Worcester, MA) maintains an interactive website where
interested parties can create and view images of
- Political Simulation (Win or Mac Excel)
- Political Sim was created to make the power of voting rules easy to
understand through visual displays. Political Sim lets players experiment
with forty-one flavors of democratic voting, from Australia to Zuidland.
Political Sim can be downloaded in self-extracting compressed files for use
with Windows Excel or Macintosh Excel. For more information, visit
- Predator-Prey and Social Game Simulations (Java Applet)
- William F. Harms (Seattle, Washington) has developed an interactive
predator-prey ecological simulation (Java applet). He has also developed
interactive simulations for several of the dynamic games described in Brian
Skyrms' book Evolution of the Social Contract (Cambridge University
Press, 1996). The latter games include: divide the cake; the ultimatum game;
correlated equilibria games; and signalling games. For more information,
- Prisoner's Dilemma Game (On-Line)
- The University of Toronto maintains an
Interactive Tutorial on the Prisoner's Dilemma Game.
- Sand Pile Model (Applet)
- Sergei Maslov (Biology Department, Brookhaven National Laboratory, Long Island, NY) has developed an applet implementing the
Bak-Tang-Wiesenfeld (BTW) Sandpile Model.
- Schelling Segregation Model (WinDesktop, C#/.Net)
- Chris Cook (Computer Science Department, Iowa State University,
Ames) has developed an interactive demo of the Schelling Segregation Model
(SSM), due to Thomas Schelling (Micromotives and Macrobehavior,
Norton, 1978). The SSM demo, targeted for the Microsoft desktop, has an
easily manipulated graphical user interface. Agents are located on a chess
board with 64 locations. The user determines the population mix from among
three agent types (red, green, and blue), or chooses from among various
default settings. The user can also specify a "happiness rule" for each
agent type or select a default setting. The happiness rule determines when
an agent is happy with his current board location, taking into account both
the number and the types of his neighbors. If unhappy, the agent either
attempts to move to a more desirable board location or exits the board
- Chris Cook has released his SSM demo as freeware under the GNU
Public License. Automatic installation software for his SSM demo can be
The Schelling Segregation Model: Demonstration Software
Also available at this site is a more detailed description of the SSM, a
description of the SSM demo's capabilities, instructions for using the
automatic installation software, a link for accessing the SSM demo
source code (C#/.Net), and copyright information.
- Schelling Segregation Model (Repast)
- Lars-Eric Cederman (ETH) maintains a
Schelling Segregation Model Demo (Repast).
Materials available at this site include documentation and software downloads.
- Segregation Simulators (WinDesktop and Java
- Mark Fossett (Department of Sociology, Texas A&M University) has
an interactive software program simulating the dynamics of residential
segregation by ethnic and socioeconomic status. Program files and
documentation files for downloading, installing, and running VLAB-RESI are
available at this site. Fossett has also developed two
more limited Java applet versions of his software program called
SimSeg Lite I and SimSeg Lite II, also available at this site,
that can be run on-line via a java-enabled browser.
- Tierra (C Source Code)
- Tierra is a digital universe developed by
(University of Oklahoma, Norman, OK) in which self-replicating machine code
programs evolve by natural selection in an open-ended arms race between hosts
and parasites. A general description of Tierra, together with detailed
instructions for downloading and running the Tierra source code, can be
obtained at the
Tierra Home Page.
Copyright © Leigh Tesfatsion. All Rights Reserved.