Features used to implement this example: