US Pat. No. 9,305,280

AIRBORNE FULFILLMENT CENTER UTILIZING UNMANNED AERIAL VEHICLES FOR ITEM DELIVERY

Amazon Technologies, Inc....

6. A system for delivering an ordered item to a user, the system comprising:
an aerial fulfillment center (“AFC”) that is airborne at an altitude and configured to receive and store a plurality of inventory
items;

a shuttle configured to transport inbound items to the AFC while the AFC is airborne;
a plurality of UAVs located at the AFC and configured to transport items from the AFC to delivery locations, while the AFC
is airborne; and

an inventory management system that sends an instruction directing a UAV of the plurality of UAVs to transport the ordered
item from the AFC to a delivery location while the AFC is airborne.

US Pat. No. 9,070,158

ADAPTIVE INFORMATION REGIONS DISPLAYING CONTENT ASSOCIATED WITH AN ELECTRONIC COMMERCE SYSTEM

Amazon Technologies, Inc....

11. A method, comprising:
encoding, in at least one computing device, a display area comprising a plurality of information regions comprising content
corresponding to a merchant associated with an electronic commerce system;

automatically adjusting, in the at least one computing device, a visual characteristic of one of the information regions based
at least in part on a value corresponding to the one of the information regions; and

associating, in the at least one computing device, each of the information regions with one of a plurality of locations of
the display area based at least in part on a ranking of the value for each of the information regions with respect to other
ones of the plurality of information regions.

US Pat. No. 9,483,445

PROVIDING FONTS FOR ELECTRONIC PUBLICATIONS

Amazon Technologies, Inc....

1. A computer-implemented method comprising:
receiving a plurality of fonts from one or more font sources;
receiving an electronic book from an entity associated with the electronic book;
presenting in a user interface, to the entity, a list comprising the plurality of fonts and a plurality of user device types;
receiving, via the user interface, a first selection of a font of the plurality of fonts;
receiving, via the user interface, a second selection of a user device type of the plurality of user device types, wherein
the user device type is associated with font rendering characteristics;

generating, by a processing device, a simulation of the electronic book rendered in the font by applying the font rendering
characteristics associated with the user device type;

presenting, by the processing device via the user interface, the simulation of the electronic book;
adding a font identifier of the font to the electronic book based on an approval of the font by the entity;
receiving a request for the electronic book from a user device;
retrieving the font identifier from the electronic book;
sending the electronic book to the user device;
determining, by the processing device based on the font identifier and font information received from the user device, that
at least one font file associated with the font identifier is not stored on the user device;

downloading, via a network, the at least one font file associated with the font identifier to the user device; and
storing, in a record associated with the user device, information indicating a download of the at least one font file associated
with the font identifier.

US Pat. No. 9,465,888

ENHANCED SEARCH WITH USER SUGGESTED SEARCH INFORMATION

Amazon Technologies, Inc....

1. A computer-implemented method for locating an item with user suggestion information, the computer-implemented method comprising:
receiving, from a first user device, at least one search suggestion for an item,
wherein the at least one search suggestion includes a utility explanation defined by a user associated with the first user
device, and

wherein the utility explanation includes an explanation for using at least one suggestion keyword in subsequent search queries
for locating the item based at least partly on a determined familiarity with the item;

determining whether the at least one search suggestion is similar to one or more item attributes currently associated with
the item;

in response to determining that the at least one search suggestion is not similar to the one or more item attributes currently
associated with the item, associating the at least one search suggestion with the item as at least one suggestion attribute
for the item;

receiving, from a second user device, a subsequent search query for locating the item, wherein the subsequent search query
comprises a search attribute;

in response to the subsequent search query, identifying the item by matching the search attribute against the one or more
item attributes and the at least one suggestion attribute for the item; and

generating a search result page for display, the search result page including a list of one or more data entries related to
the item.

US Pat. No. 9,465,207

PIXEL WALL AND SPACER CONFIGURATION FOR AN ELECTROWETTING DISPLAY

Amazon Technologies, Inc....

1. A method for fabricating an electrowetting display, the method comprising:
depositing a first photoresist layer on a transparent support plate, wherein the transparent support plate includes a substrate
and at least one pixel electrode;

placing a first mask on the first photoresist layer, wherein the first mask covers first portions of the first photoresist
layer and does not cover second portions of the first photoresist layer;

exposing the second portions of the first photoresist layer to electromagnetic radiation;
depositing a second photoresist layer on the first mask and the second portions of the first photoresist layer;
placing a second mask on the second photoresist layer, wherein the second mask covers first portions of the second photoresist
layer and does not cover second portions of the second photoresist layer;

exposing the second portions of the second photoresist layer to electromagnetic radiation; and
etching to remove the second portions of the second photoresist layer and the second portions of the first photoresist layer,
wherein the first portions of the second photoresist layer that remain subsequent to the etching form a grid of pixel wall
extensions, and wherein the first portions of the first photoresist layer that remain subsequent to the etching form spacers
that extend from the transparent support plate to the grid of pixel wall extensions.

US Pat. No. 9,256,657

TRACKING DATA COMMUNICATED BETWEEN SERVICES

Amazon Technologies, Inc....

1. A computer-implemented method executed on at least one processor, the method comprising:
accessing transfer recordings that describe a transfer of a data object between at least two of a plurality of services in
a computing environment;

identifying, in the transfer recordings, key-value pairs associating a key with a value, wherein the key corresponds to a
data attribute that stores the value in the data object, and wherein the key includes:

a service identifier corresponding to a service of the plurality of services, the service participating in the transfer of
the data object;

a method identifier corresponding to a method provided by the service, the method participating in the transfer of the data
object; and

a key name corresponding to the data attribute included in the data object;
identifying a plurality of candidate keys corresponding to a same value in the key-value pairs;
accessing correlation information that describes:
a plurality of key associations between pairs of keys; and
a correlation count of a number of instances of association between each of the pairs of keys;
for each pair of candidate keys in the plurality of candidate keys, updating the correlation information to increment the
correlation count for one of the plurality of key associations that associates the pair of candidate keys; and

storing the updated correlation information.

US Pat. No. 9,365,226

TRANSPORT DOLLY

AMAZON TECHNOLOGIES, INC....

1. A transport apparatus, comprising:
a base frame;
an elevated handgrip assembly secured to and elevated from the base frame; and
a wheel lock assembly that locks a jack wheel into an engaged position for manual displacement of a drive unit using the elevated
handgrip assembly, the wheel lock assembly comprising:

a lever that extends over the base frame; and
a shaft assembly adjustably coupled to the lever and configured to couple to the jack wheel.

US Pat. No. 9,439,329

INFLATABLE DATA CENTER

Amazon Technologies, Inc....

1. A method for deployment of a data center, the method comprising:
positioning one or more pre-fabricated electrical modules at a particular data center site, wherein at least one of the electrical
modules is configured to provide one or more of electrical power support or network communication support to at least one
rack computer system;

positioning one or more pre-fabricated cooling modules at the particular data center site, wherein at least one of the cooling
modules is configured to provide cooling support to the at least one rack computer system, wherein, to provide cooling support
to at least one rack computer system, the at least one of the cooling modules is configured to direct a stream of cooling
air out of at least one cooling air vent;

inflating an inflatable structure at the data center site, based at least in part on the stream of cooling air directed out
of the at least one cooling air vent of the at least one of the cooling modules, such that the inflated inflatable structure
at least partially establishes an inflatable enclosure of at least a portion of the data center site;

installing one or more rack computer systems within the inflatable enclosure, wherein the rack computer systems are configured
to provide computing capacity, and wherein the installing comprises electrically coupling the rack computer systems to the
at least one electrical module; and

operating at least one of the rack computer systems at the site to provide computing capacity.

US Pat. No. 9,231,963

DETECTING ANOMALOUS BEHAVIOR PATTERNS IN AN ELECTRONIC ENVIRONMENT

Amazon Technologies, Inc....

1. A system for providing access to at least one host machine in a multi-tenant environment, comprising:
a plurality of host machines, each host machine including at least one processor and memory for storing instructions executable
by the at least one processor;

at least one interface component enabling a user device to obtain access to at least one of the plurality of host machines;
and

a monitoring component in communication with the plurality of host machines, the monitoring component configured to:
detect a change with respect to at least one of the host machines;
compare information for the change to a behavior baseline to determine whether the change matches an acceptable behavior,
wherein at least a portion of acceptable behaviors are based at least in part upon data for purposeful behaviors observed
within the plurality of host machines;

monitor related changes for at least a period of time, when the change does not match an acceptable behavior, to determine
a rate or a prevalence of a type of the change;

compare information for the rate or prevalence to at least one corresponding parameter value for the baseline to determine
whether the rate or prevalence falls within an expected parameter value range;

automatically add behavior information for the change to the baseline in response to the rate or prevalence falling within
the expected parameter value range; and

generate a notification when the rate or prevalence falls outside the expected parameter value range.

US Pat. No. 9,137,110

AVAILABILITY RISK ASSESSMENT, SYSTEM MODELING

Amazon Technologies, Inc....

1. A computer-implemented method for distributed resource management, comprising:
under control of one or more computer systems configured with executable instructions,
receiving a plurality of sets of operational information describing at least one feature of a distributed computing system,
each set of operational information from a different distributed computing system;

forming, based at least in part on the received plurality of sets of information, a plurality of sets of model graphs, each
set of model graphs associated with each respective different distributed computing system;

generating, based at least in part on information that describes a configuration of computing devices, a customer test graph;
performing a comparison of the customer test graph with at least a subset of each of the sets of model graphs to select an
ideal curated graph from at least one of the sets of model graphs that is most similar to the customer graph; and

providing to a user associated with the configuration of computing devices, one or more recommendations based at least in
part on the selected ideal curated graph.

US Pat. No. 9,330,052

TRANSPOSE BOX BASED NETWORK SCALING

Amazon Technologies, Inc....

1. A method of providing scalability in a data transmission network, comprising:
providing at least a first tier and a second tier of network devices, each network device capable of receiving and transmitting
data; and

connecting the network devices of the first tier to a first group of network connectors of a first network transpose box and
the network devices of the second tier to a second group of network connectors of the first network transpose box, wherein
a meshing of communication media implements a selected network topology for connecting the network devices of the first and
second tiers,

wherein additional network devices are able to be added to the data transmission network using an available connection of
the first or second group of network connectors of the first network transpose box without having to move any of already-connected
network cables.

US Pat. No. 9,323,556

PROGRAMMATIC EVENT DETECTION AND MESSAGE GENERATION FOR REQUESTS TO EXECUTE PROGRAM CODE

Amazon Technologies, Inc....

1. A system for providing event messages for requests to execute program code on a virtual compute system, the system comprising:
an electronic data store configured to store at least programmatic event handling information related to a program code of
a user; and

an event triggering computing system comprising one or more hardware computing devices executing specific computer-executable
instructions said event triggering computing system in communication with a message queue system, the event triggering computing
system configured to at least:

detect an event on the event triggering computing system, wherein the event is detected at a first time;
determine, based on the programmatic event handling information related to the program code of the user, whether the event
is designated to trigger execution of the program code of the user on the virtual compute system, said programmatic event
handling information accessed from the electronic data store, wherein the virtual compute system is configured to begin executing
the program code at a second time, wherein a time period determined as a difference between the first time and the second
time is shorter than a predetermined duration;

in response to determining that the event is designated to trigger execution of the program code of the user, generate an
event message based at least in part on the programmatic event handling information related to the program code of the user
accessed from the electronic data store, wherein the event message comprises at least a user account identifier and programmatic
information organized in a schema usable for execution of the program code on behalf of the user on a container on an instance
on the virtual compute system, said programmatic information indicating at least (1) a function of the program code to execute
in response to the detected event and (2) one or more event message parameters for execution of the program code; and

provide the event message to an intermediary message queue system, wherein the intermediary message queue system is further
in communication with the virtual compute system.

US Pat. No. 9,563,385

PROFILE-GUIDED DATA PRELOADING FOR VIRTUALIZED RESOURCES

Amazon Technologies, Inc....

1. A system, comprising:
one or more computing devices configured to:
implement a plurality of compute instances at a virtualized compute service of a provider network, wherein a block-level storage
volume implemented at a block storage service of the provider network is programmatically attached for block-level network
access by a particular compute instance of the plurality of compute instances, and wherein, in response to one or more block-level
I/O requests to the block-level storage volume from the particular compute instance, data is transferred from an object at
a storage repository service of the provider network to populate the block-level storage volume prior to at least a portion
of the data then being provided from the block-level storage volume to the particular compute instance in response to the
one or more block-level I/O requests;

obtain, corresponding to a particular phase of program execution at the particular compute instance, an indication of one
or more data transfers from the object at the storage repository service to the block storage service;

generate, based at least in part on the indication of the one or more data transfers, a storage access profile associated
with the particular phase at the particular compute instance;

store the storage access profile;
in response to a determination that the particular phase of program execution is to occur at a different compute instance
of the provider network,

identify at least a portion of an object indicated by the storage access profile to be pre-loaded to populate a different
block-level storage volume attached to the different compute instance, wherein the storage access profile generated based
on the particular phase of program execution at the particular compute instance is used to identify the portion of the object
to be pre-loaded to the different block-level storage volume attached to the different compute instance; and

transfer the at least a portion of the object to the different block-level storage volume.

US Pat. No. 9,361,037

ASYNCHRONOUS PROCESSING OF MAPPING INFORMATION

Amazon Technologies, Inc....

1. A computer-implemented method of asynchronously processing mapping information for storage objects stored in persistent
storage, the method comprising:
receiving a storage request including identification of a storage object and a description of a storage operation, the storage
operation being an operation to be performed for the storage object;

performing the storage operation for the storage object in response to receiving the storage request;
generating a unique identification information describing the storage object and information describing the performed storage
operation;

queuing the unique identification information and the information describing the performed storage operation in an asynchronous
processing queue;

dequeuing the unique identification information and the information describing the performed storage operation asynchronously
as compared to the performing the storage operation; and

updating the mapping information with the dequeued unique identification information and the information describing the performed
storage operation.

US Pat. No. 9,378,482

EXCHANGE OF CONTAINERS

Amazon Technologies, Inc....

1. A computer-implemented method of managing inventory, the method comprising:
receiving a customer order for an inventory item;
identifying, by a processor, a first container stowed in a container holder, the first container holding at least the inventory
item;

instructing, by the processor, a first unmanned mobile drive unit to move the container holder from a storage area of a workspace
to an inventory queue of a container exchange station of the workspace, the container holder configured to removably receive
one or more containers of a plurality of containers, and each of the plurality of containers configured to receive one or
more inventory items;

instructing, by the processor, a second unmanned mobile drive unit to move a container shuttle from an inventory processing
area of the workspace to a shuttle queue of the container exchange station, the container shuttle configured to removably
receive one or more other containers of the plurality of containers, the container shuttle configured to receive at least
one of: a container holding at least one inbound inventory item identified to be stowed within the storage area of the workspace,
or a container holding at least one outbound inventory item identified to be picked at a pick station;

instructing, by the processor, removal of the first container from the container holder and placement of the first container
on the container shuttle at the container exchange station prior to the container shuttle being moved to the pick station;
and

instructing, by the processor, removal of a second container from the container shuttle and placement of the second container
on the container holder at the container exchange station prior to the container holder being moved to the storage area, the
second container holding at least one inbound inventory item identified to be stowed within the storage area of the workspace.

US Pat. No. 9,396,559

IMAGE COMPOSITION BASED ON REMOTE OBJECT DATA

Amazon Technologies, Inc....

1. A client compute node having stored therein instructions that, upon execution by the client compute node, cause the client
compute node to perform operations comprising:
identifying, in a video game, information corresponding to a three-dimensional scene of the video game, wherein the information
includes first instructions for a first service to render a rendered first object associated with a first portion of the three-dimensional
scene of the video game, and wherein the information further includes second instructions for a second service to render a
second object associated with a second portion of the three-dimensional scene of the video game;

sending a service request, in accordance with the first instructions, to render the rendered first object at the first service;
ignoring the second instructions based at least in part on a network condition;
receiving the rendered first object; and
combining a first portion of a two-dimensional image with a second portion of the two-dimensional image, wherein the first
portion of the two-dimensional image is associated with the rendered first object.

US Pat. No. 9,350,763

HTTP TUNNELLING OVER WEBSOCKETS

Amazon Technologies, Inc....

1. A computer-implemented method, comprising:
identifying, on a computing device, a hypertext transfer protocol (HTTP) request sent by an application to be delivered to
a destination over an HTTP connection;

determining, by a connection manager, to use a websocket connection based at least in part upon at least one of a number or
a frequency of messages transmitted over a period of time;

establishing the websocket connection between the application and the destination, the websocket connection providing a bi-directional,
full-duplex communications channel;

encoding the HTTP request;
encapsulating the encoded HTTP request in a binary request;
transmitting the binary request over the websocket connection;
receiving a binary response over the websocket connection to the computing device;
converting the binary response to an HTTP response; and
forwarding the HTTP response to the application.

US Pat. No. 9,055,017

SELECTIVE COMMUNICATION OF MESSAGES

Amazon Technologies, Inc....

1. A system for managing message communications comprising:
an interface configured to obtain event data associated with a message originator and to receive a request from the message
originator to selectively communicate one or more messages to a first set of message recipients based on the event data, wherein
the first set of message recipients is a subset of a second set of message recipients, wherein the event data corresponds
to an interaction of the message originator with at least one network resource, and wherein the interaction of the message
originator with the at least one network resource is associated with at least one of a subject or a keyword;

a data processing component executed in hardware configured to process the event data to identify a set of the one or more
messages to be selectively communicated to the first message recipients, wherein the set of the one or more messages to be
selectively communicated is generated as a function of the event data and is associated with the at least one of the subject
or the keyword; and

a messaging interface component configured to:
determine the first set of message recipients based on first filtering criteria provided by the message originator, and
determine the second set of message recipients based on second filtering criteria provided by the second set of message recipients,
wherein the second filtering criteria corresponds to a subscription to receive messages corresponding to event data associated
with at the least one of the subject or the keyword.

US Pat. No. 9,532,487

COMPUTER ROOM AIR FILTRATION AND COOLING UNIT

Amazon Technologies, Inc....

1. A cooling apparatus for an electronic component enclosure, comprising:
a duct element having an inlet, an outlet, and an intermediate portion arranged between the inlet and outlet, the inlet being
configured to receive a flow of air; and

an airflow control assembly arranged in the intermediate portion for controlling the flow of air through the duct element,
the airflow control assembly comprising:

a first controllable damper assembly arranged between the intermediate portion and the outlet and configured to fluidly connect
and disconnect the intermediate portion with the outlet;

a second controllable damper assembly arranged between the intermediate portion and an elongate chamber, where the elongate
chamber is in fluid connection with the outlet, the second damper assembly being configured to fluidly connect and disconnect
the intermediate portion with the elongate chamber; and

an exchanger assembly arranged between the intermediate portion and the elongate chamber, the exchanger assembly being configured
to fluidly connect the intermediate portion with the elongate chamber and to absorb heat.

US Pat. No. 9,436,493

DISTRIBUTED COMPUTING ENVIRONMENT SOFTWARE CONFIGURATION

Amazon Technologies, Inc....

1. One or more non-transitory computer-readable media storing computer-executable instructions that, when executed by at least
one processor, configure the at least one processor to perform operations comprising:
receiving a request to create an instance that includes an operating system and a software application; and
creating the instance, wherein creating the instance comprises:
detecting, by at least one of the operating system or the software, a first set of resource parameters for the instance, wherein
the first set of resource parameters include information associated with one or more servers in a distributed computing environment
to be allocated to host the instance; and

after detecting the first set of resource parameters, configuring the operating system and the software application based
at least in part on the first set of resource parameters;

receiving a request for modification of the instance;
determining a second set of resource parameters based at least in part on the modification; and
reconfiguring the operating system and the software application based at least in part on the second set of resource parameters,
wherein reconfiguring the operating system and the software application comprises at least one of: (i) modifying a number
of allowable concurrent connections to a web server, or (ii) modifying a number of allowable threads spawned by the operating
system or the software application.

US Pat. No. 9,544,706

CUSTOMIZED HEAD-RELATED TRANSFER FUNCTIONS

Amazon Technologies, Inc....

1. A method for generating a head related transfer function that is customized for a user for use in an interactive gaming
environment, the method comprising:
receiving a plurality of digital images of a human pinna and a reference object using a camera;
generating a 3D (three-dimensional) digital model of the human pinna using the plurality of images, the 3D digital model representing
the three-dimensional (3D) structure of the human pinna;

deriving a head related transfer function (HRTF) that is customized for the human pinna using the 3D digital model;
associating the HRTF with a user profile, the user profile comprising settings customized to at least one user sound output
preference and a driver identifier for headphones capable of producing virtual surround sound;

generating an audio signal that has been modified using the HRTF, a driver associated with the driver identifier, and at least
one user sound output preference to provide virtual surround sound; and

streaming the audio signal that was customized to headphones.

US Pat. No. 9,501,390

ENHANCING AUTOMATED MOBILE APPLICATION TESTING

Amazon Technologies, Inc....

1. A non-transitory computer-readable medium embodying a program executable in at least one computing device, wherein, when
executed, the program causes the at least one computing device to at least:
receive an application for testing;
select a specific application category of a plurality of application categories based at least in part on the application;
determine that an automated testing pattern subset associated with the specific application category is incomplete based at
least in part on at least one of a number of other applications tested using the automated testing pattern subset or a number
of testing patterns included in the automated testing pattern subset; and

in response to determining that the automated testing pattern subset associated with the specific application category is
incomplete:

perform automated random testing on the application, the automated random testing generating a plurality of random testing
patterns;

determine a plurality of random testing results based at least in part on the automated random testing of the application,
individual ones of the plurality of random testing results corresponding to a respective random testing pattern of the plurality
of random testing patterns;

store the plurality of random testing results and the plurality of random testing patterns;
receive a plurality of manual testing results determined from manual testing of the application;
calculate an accuracy score for individual ones of the plurality of random testing patterns based at least in part on a comparison
of the plurality of manual testing results with the plurality of random testing results; and

determine whether to add at least one of the plurality of random testing patterns to the automated testing pattern subset
associated with the specific application category based at least in part on the accuracy score associated with the individual
ones of the plurality of random testing patterns.

US Pat. No. 9,485,747

SYSTEMS AND METHODS FOR ACQUIRING LOCATION DATA

Amazon Technologies, Inc....

1. A system comprising:
a communication interface;
a memory storing computer-executable instructions;
a processor in communication with the communication interface and the memory, the processor configured to execute the computer-executable
instructions to:

receive, at a first time, first access point data from a mobile device that is configured to operatively connect to the system,
wherein:

the mobile device received the first access point data from a stationary device;
the stationary device generated the first access point data at a second time prior to the first time after detecting a first
access point and a second access point;

the first access point data includes:
first data corresponding to the first access point including an identifier of the first access point and information about
a longevity of the first access point for a period of time between the second time and the first time; and

second data corresponding the second access point including an identifier of the second access point and information about
a longevity of the second access point for the period of time between the second time and the first time;

receive location data indicative of a latitude and longitude of the mobile device; and
determine, based at least in part on the information about the longevity of the first access point, to store in a datastore
the identifier of the first access point and the location data, wherein the datastore is used to determine locations for other
mobile devices.

US Pat. No. 9,419,856

NETWORK DEVICE CONFIGURATION DEPLOYMENT PIPELINE

Amazon Technologies, Inc....

1. A method of configuring a network device, the method comprising:
receiving a released configuration for the network device, the released configuration representing an authoritative next-provisioned
state of the network device;

receiving a deployed configuration, the deployed configuration representing a current-provisioned state of the network device;
detecting a difference between the released configuration and the deployed configuration;
in response to detecting the difference, scheduling an update of the network device;
when scheduled, initiating the update of the network device so that the network device is configured according to the released
configuration for the network device; and

updating the deployed configuration according to the released configuration for the network device.

US Pat. No. 9,305,056

RESULTS CACHE INVALIDATION

Amazon Technologies, Inc....

1. A system, comprising:
a plurality of computing nodes, each of which comprises at least one processor and a memory, wherein the plurality of computing
nodes are configured to collectively implement a database service configured to:

store a query result as a new entry in a results set cache comprising a plurality of entries, wherein the query result is
generated from execution of a database query on a plurality of data records stored by the database service;

write a probabilistic data structure in response to storing the new entry in the results set cache, wherein respective entries
in the results set cache correspond to respective ones of a plurality of probabilistic data structures usable to selectively
invalidate the respective entries in the results set cache based, at least in part, on a subset of the plurality of data records
that is reflected in the query result;

receive an indication that the plurality of data records has been modified; and
determine whether to invalidate the one or more entries in the results set cache based, at least in part, on a comparison
between respective ones of the plurality of probabilistic data structures corresponding to respective entries in the results
set cache and a representation of the modified plurality of data records, wherein the comparison indicates, with a probability
of a false positive, whether the respective entries represented by the probabilistic data structure correspond to the modified
plurality of data records.

US Pat. No. 9,154,483

SECURE DEVICE CONFIGURATION

Amazon Technologies, Inc....

1. A first device comprising:
a communication interface;
at least one memory storing computer-executable instructions; and
at least one processor configured to couple to the communication interface, access the at least one memory, and execute the
computer-executable instructions to:

establish an encrypted connection with a second device using the communication interface;
receive from the second device, using the encrypted connection, a credential request comprising a second device identifier
and a cryptographic nonce;

generate a network credential hash based on network credentials and the cryptographic nonce, wherein the network credentials
comprise data associated with connecting the second device to a network; wherein the data is indicative of at least one or
more of:

a network name associated with the network,
a password associated with the network,
an encryption type associated with the network, or
an encryption key used with the network;
sign a verification request, the verification request comprising the second device identifier, the cryptographic nonce, and
the network credential hash;

send the signed verification request to an association server using the communication interface;
receive from the association server verification data using the communication interface, the verification data comprising
a signed second device identifier, a signed cryptographic nonce, a signed network credential hash, a signed challenge, and
a signed expected challenge response;

send, to the second device using the communication interface, challenge data comprising the signed network credential hash,
the signed cryptographic nonce, and the signed challenge;

receive a challenge response from the second device at the communication interface, the challenge response based at least
in part on the signed challenge;

verify the challenge response against the signed expected challenge response; and
based at least in part on the verification, send the network credentials to the second device using the communication interface.

US Pat. No. 9,585,289

BUILDING LEVEL DEHUMIDIFICATION AND COOLING

Amazon Technologies, Inc....

1. A method of removing heat from electrical systems in a building, comprising:
moving air through a constricted section of a duct such that at least a portion of water in the air is converted from water
vapor to water droplets;

moving a two-phase mixture comprising air and at least a portion of the water droplets; and
cooling one or more electrical devices using at least a portion of the two-phase mixture.

US Pat. No. 9,451,730

MANAGING AIRFLOW SUPPLIED THROUGH SOFT DUCTS

Amazon Technologies, Inc....

1. A data center, comprising:
one or more rack computing systems in a computing room; and
a cooling system configured to supply air to at least one of the rack computing systems, wherein the cooling system comprises:
one or more soft ducts, comprising:
one or more tubes; and
one or more passages through at least a portion of at least one of the tubes; and
one or more air flow control devices, comprising:
one or more cinching members coupled around a circumference of at least one of the tubes of at least one of the soft ducts;
and

one or more motors,
wherein at least one of the motors is configured to cause a pulling force to be exerted on an end of at least one of the one
or more cinching members to cause the cinching member to constrict around the circumference of the at least one of the tubes
such that a cross sectional area of a portion of a passage of a soft duct comprising the at least one tube is changed.

US Pat. No. 9,152,992

GIFT CAMPAIGNS IN A SOCIAL NETWORKING SYSTEM

AMAZON TECHNOLOGIES, INC....

1. A non-transitory computer-readable medium embodying a program executable in a computing device, the program comprising:
code generates a network page associated with a social networking system, the social networking system integrated with an
electronic commerce system, the electronic commerce system associated with a plurality of items;

code that generates one or more hyperlinks via the social networking system;
code that initiates a gift campaign associated with a recipient on behalf of an initiator, the gift campaign being initiated
by one of the one or more hyperlinks in the social networking system, and the one or more hyperlinks grants permission to
an application to access at least one personal detail about at least one user association of the initiator in the social networking
system;

code that identifies at least one participant for the gift campaign in the social networking system, the at least one participant
having a direct connection with the recipient and the initiator, the at least one participant further being a member of an
interest group in the social networking system of which the recipient and the initiator are members;

code that generates at least one gift suggestion based at least upon profile data associated with the recipient in the social
networking system, the profile data comprising at least one of the interest group in the social networking system with which
the recipient is associated, a topic in the social networking system with which the recipient is associated, text published
by the recipient in the social networking system, and at least one of an image or a video associated with the recipient in
the social networking system;

code that facilitates collection of funds from at least one of the initiator or the at least one participant, wherein an amount
collected is based at least upon a total number of participants committing funds to the gift campaign;

code that obtains at least one vote from the initiator and the at least one participant for the at least one gift suggestion;
and

code that initiates fulfillment of a highest voted gift suggestion to the recipient on behalf of the initiator and the at
least one participant, the highest voted gift suggestion being fulfilled via the electronic commerce system.

US Pat. No. 9,485,887

DATA CENTER WITH STREAMLINED POWER AND COOLING

Amazon Technologies, Inc....

1. A data center, comprising:
two or more rack computing systems, wherein at least one of the rack computing systems comprises a rack and one or more computing
devices mounted in the rack;

a cooling system, wherein the cooling system comprises one or more air moving devices external to the rack computing systems,
wherein at least one of the air moving devices is arranged to create a negative pressure to draw air through computing devices
in at least one of the rack computing systems, and wherein the cooling system does not include a mechanical cooler; and

an electrical power system comprising:
switchgear arranged to receive power from a utility power feed, and
one or more power panels coupled to the switchgear, wherein the one or more power panels are arranged to receive power from
the switchgear,

wherein at least one of the computing devices of the one or more rack computing systems is coupled to at least one of the
power panels,

wherein the at least one power panel is designed to supply electrical power to the at least one computing device, and
wherein the at least one computing device is not electrically coupled to any uninterruptible power supply (UPS), and cannot
be switched to be coupled to any UPS via operation of any switching device, such that the at least one computing device is
arranged to receive power without back-up from any UPS.

US Pat. No. 9,146,129

SUGGESTING POINTS OF INTEREST ON A MAPPED ROUTE USING USER INTERESTS

Amazon Technologies, Inc....

5. A computer-implemented method, comprising:
receiving, at a processor of an electronic device, a request from a user for a mapped route, the request including off-route
information provided by the user;

determining at least two interests of the user based at least in part on one or more types of user activity data;
assigning a respective ranking value to each interest of the at least two interests of the user, each respective ranking value
based at least in part on an amount of the user activity data associated with the associated interest of the user;

determining the off-route information including at least a route deviation limit;
determining a boundary surrounding the mapped route, a shape of the boundary determined at least in part using the route derivation
limit;

determining at least two points of interest based at least upon the determined interests of the user within the boundary;
determining a respective relevancy score for each point of the at least two or more points of interest, the relevancy score
indicative of an amount that a respective point of interest matches criteria associated with a respective interest of the
user;

selecting a subset of the two or more points of interest that have relevancy scores that satisfy a threshold for display with
the mapped route;

ranking the subset of the two or more points of interest, the ranking for each point of interest based at least in part on
the ranking value for the respective interest of the user associated with the point of interest, the relevancy score for the
point of interest, and the off-route information; and

transmitting data for displaying, on a display screen of the electronic device, the mapped route and information representing
the at least two points of interest.

US Pat. No. 9,306,949

CONFIGURE INTERCONNECTIONS BETWEEN NETWORKS HOSTED IN DATACENTERS

Amazon Technologies, Inc....

1. A system for configuring communication between virtualized private networks, the system comprising:
one or more datacenters comprising one or more computing devices configured to communicate with each other over network connections
within the one or more datacenters;

the one or more computing devices further configured to host a first virtualized private network comprising a first compute
instance hosted on the one or more computing devices, the first virtualized private network being associated with a first
entity;

the one or more computing devices further configured to host a second virtualized private network comprising a second compute
instance hosted on the one or more computing devices, the second virtualized private network associated with a second entity,
wherein the second virtualized private network is isolated from the first virtualized private network and wherein the first
entity is different from the second entity; and

one or more memories having stored therein computer-readable instructions that, upon execution on the system, cause the system
to at least:

determine that the first entity has authorized the second entity to access the first compute instance;
provide the second compute instance with a network address associated with the first virtualized private network via the network
connections; and

route a communication that is addressed with the network address from the second compute instance to the first compute instance
via the network connections.

US Pat. No. 9,117,232

BROWSER-BASED RETRIEVAL AND DISPLAY OF CONTENT ASSOCIATED WITH A LINK THAT MATCHES A LINK SIGNATURE

Amazon Technologies, Inc....

1. A method, comprising:
detecting, based on an analysis of content of a web page of a first web site, that the page includes a user-selectable link
to a product page of an electronic catalog hosted by a second web site, said detecting comprising determining that the link
has a URL that matches a signature of product pages of the electronic catalog;

extracting from the user-selectable link a product identifier corresponding to a product;
retrieving from the electronic catalog, based on the extracted product identifier, catalog content associated with the product;
causing the page to be supplemented with an overlay display object that includes the catalog content associated with the product,
such that the overlay display object is displayed in association with the user-selectable link; and

providing, for display within the overlay display object, active content that enables a user, via a user computing device,
to purchase the product by interacting with the overlay display object on the page without navigating away from the web page
of the first web site;

said method performed by execution of instructions by computer hardware.

US Pat. No. 9,164,984

DELAY IN VIDEO FOR LANGUAGE TRANSLATION

Amazon Technologies, Inc....

14. A computer-implemented method, comprising:
accessing, by at least one computing device comprising at least one hardware processor, a data stream received from a transmitting
computing device, the data stream comprising an audio signal embodying a first language and a video signal;

performing, by the at least one computing device, a translation of the audio signal embodying the first language to a translation
output embodying a second language;

determining, by the at least one computing device, a delay indicative of a time needed to perform the translation;
associating, by the at least one computing device, the translation output with the video signal after the delay;
determining, by the at least one computing device, whether a predefined amount of the audio signal embodying the first language
has been translated to the translation output embodying the second language; and

causing, by the at least one computing device, the video signal and the translation output to be communicated to a receiving
computing device in association with the delay in response to the predefined amount of the audio signal embodying the first
language being translated.

US Pat. No. 9,426,903

COOLING AIR STACK FOR COMPUTER EQUIPMENT

Amazon Technologies, Inc....

1. A cooling system for directing cooling air from a rack-mounted computer system, comprising:
a stack, comprising:
an inlet configured to couple with a rack system at an exit of the rack;
a lower duct portion;
an exit of the stack configured to couple with a ceiling at an opening in the ceiling, wherein the opening in the ceiling
includes a flow restriction device; and

an upper duct portion configured to extend downwardly from the ceiling; and
an exit duct, coupled with the exit of the stack, and configured to extend into and through a ceiling plenum above the opening
in the ceiling, wherein the exit duct forms an enclosure configured to segregate exit air exiting the rack system and passing
through the exit duct from air circulating within the ceiling plenum and air entering the ceiling plenum from one or more
other rack systems, such that air circulating within the ceiling plenum and air entering the ceiling plenum from one or more
other rack systems is recirculated and the exit air passing through the exit duct passes into ambient air outside the ceiling
plenum;

a flexible portion of increasing passage size coupled between the lower duct portion and the upper duct portion, wherein the
flexible portion is coupled with the upper duct portion at a point below the ceiling, wherein the lower duct portion is configured
to direct cooling air from the inlet to the flexible portion, wherein the flexible portion is configured to direct cooling
air from the lower duct portion to the upper duct portion,

wherein the lower duct portion comprises a lower duct cross-sectional area, wherein the cross-sectional area of the flexible
portion increases from a first cross-sectional area where the flexible portion couples to the lower duct portion to a second
cross-sectional area where the flexible portion couples to the upper duct portion, wherein the upper duct portion is above
the flexible portion, wherein the upper duct portion comprises a passageway configured to direct air that is downstream from
the flexible portion of increasing passage size through the opening in the ceiling, wherein the upper duct portion comprises
an upper duct cross-sectional area that is larger than the second, increased cross sectional area of the flexible portion.

US Pat. No. 9,298,974

OBJECT IDENTIFICATION THROUGH STEREO ASSOCIATION

Amazon Technologies, Inc....

12. A non-transitory computer-readable storage medium storing instructions that, when executed by at least one processor,
cause a computing device to:
detect a first representation of a first face and a first representation of a second face in first image data;
associate the first representation of the first face with a first bounding box and the first representation of the second
face with a second bounding box;

detect a second representation of the first face in second image data;
associate the second representation of the first face with a third bounding box for the first face in the second image data;
determine, using the second bounding box for the second face, features of the second face to generate a template to detect
a second representation of the second face in the second image data; and

detect the second representation of the second face by analyzing the second image data using the template of the second face
from the first image data.

US Pat. No. 9,294,282

CRYPTOGRAPHICALLY VERIFIED REPEATABLE VIRTUALIZED COMPUTING

Amazon Technologies, Inc....

1. A non-transitory computer readable storage medium storing one or more sequences of instructions for performing a repeatable
computation, the instructions executed by one or more processors to:
receive, from a client, a request to perform the repeatable computation by a virtual machine provisioned for the client on
a host computing device;

identify checkpoints in the repeatable computation and execute the repeatable computation using the virtual machine;
determine whether each checkpoint of the checkpoints in the repeatable computation has been reached to yield a determination,
and based on the determination:

verify a state of a computing environment on the host computing device at a time of the checkpoint by using a trusted platform
module on the host computing device;

generate a hash measurement of a state of the repeatable computation at the time of the each checkpoint, wherein the state
of the repeatable computation captures output of the repeatable computation running at the each checkpoint;

cryptographically sign the hash measurement of the state of the repeatable computation at the time of the each checkpoint
using a key embedded in the trusted platform module of the host computing device to yield a signed hash measurement; and

record the signed hash measurement; and
generate a cumulative hash measurement of the repeatable computation based on all of the hash measurements generated at the
checkpoints.

US Pat. No. 9,098,266

DATA LAYER SERVICE AVAILABILITY

Amazon Technologies, Inc....

1. A non-transitory computer-readable medium embodying a program executable in at least one computing device, comprising:
code that determines when at least one data store is unavailable during a communication of a data block tokenization call
from one of a plurality of services to a data layer service facilitating access to the unavailable at least one data store;

code that generates a temporary token responsive to the determination that the at least one data store is unavailable;
code that communicates the temporary token to the one of the services, wherein the temporary token is capable of being passed
to other ones of the services;

code that repeatedly queries the data layer service with the data block tokenization call until a successful query is performed
after the at least one data store is available;

code that obtains a valid token from the data layer service responsive to the successful query;
code that facilitates a communication of the valid token to at least one of the services having the temporary token; and
wherein the one of the services is associated with at least one dependent service, and the temporary token facilitates an
operation of the at least one dependent service.

US Pat. No. 9,104,707

ITERATIVE GENERATION OF PARTIAL COLUMN SCHEMA

AMAZON TECHNOLOGIES, INC....

1. A system comprising:
one or more storage devices comprising one or more database files configured to maintain a set of items comprising a key and
one or more values associated with the key; and

one or more memories having stored thereon computer-readable instructions that upon execution cause the system at least to:
extract a set of values from the set of items;
generate a set of column names from the set of values;
assign a plurality of values from the set of items to a plurality of column names in the set of column names;
recursively reassign a first value to other column names in the plurality of column names based at least in part on a semantic
fit quality and a utilization quality;

wherein the semantic fit quality is based at least in part on a solution constraint and semantic similarity of the first value
to a column name to which the first value is assigned and the other values in the plurality of values assigned to the column
name, the solution constraint based at least in part on the first value sharing a common key with a value from the set of
items; and

wherein the utilization quality is based at least in part on a number of values currently assigned to the column name to which
the first value is assigned and a comparison of the semantic fit quality to a prospective semantic fit quality.

US Pat. No. 9,448,819

USER-INFLUENCED PLACEMENT OF VIRTUAL MACHINES

Amazon Technologies, Inc....

1. A method of launching a virtual machine, comprising:
receiving, at a server computer in a service center, a user request to launch a virtual machine of an instance type;
receiving at least one user-specified preference for an infrastructure platform to host the virtual machine, the at least
one user-specified preference including a year that the infrastructure platform was manufactured or a manufacturer of the
infrastructure platform, wherein the at least one user-specified preference includes a priority ordered list of two or more
infrastructure platform candidates;

searching a list of available server computers using the user-specified preference as a search filter to determine a server
computer that matches the at least one user-specified preference for the infrastructure platform; and

launching the virtual machine having the instance type on the determined server computer so that placement of the virtual
machine is based at least in part on the at least one user-specified preference.

US Pat. No. 9,148,413

SECURED FIRMWARE UPDATES

Amazon Technologies, Inc....

1. A computer implemented method for securing information of hardware devices, the method comprising:
under the control of one or more computer systems configured with executable instructions,
storing a public key on at least one hardware peripheral device of a host machine, the hardware peripheral device associated
with firmware that is secured from being modified by a user provisioned on the host machine;

receiving a request to update the firmware, the request received from a device that is external with respect to the host machine,
the request containing at least some modified firmware that has been encrypted using a private key;

attempting to decrypt the modified firmware by using the public key stored on the at least one hardware peripheral device
of the host machine;

applying the modified firmware to the at least one hardware peripheral device of the host machine if the modified firmware
is successfully decrypted using the public key stored on the at least one hardware peripheral device; and

rejecting the request to update the firmware if the modified firmware is not successfully decrypted using the public key.

US Pat. No. 9,070,122

HOST-MANAGED GIFT CARD PROGRAM

Amazon Technologies, Inc....

1. One or more non-transitory computer-readable media storing computer-executable instructions that, when executed on one
or more processors, perform acts comprising:
determining one or more parameters used by an application to determine whether to redeem a gift card, the one or more parameters
being based at least in part on a location of a computing device or a time of use of the computing device, the computing device
being configured to facilitate redemption of the gift card through interaction with one or more servers of a host; and

determining that the one or more parameters are satisfied by determining one of the time of use is within a predetermined
time range or the location of the computing device is within a threshold distance of a predetermined location, and, in response
to the determining that the one or more parameters are satisfied:

causing a secure request to be transmitted to the host that includes an identifier of the gift card and a transaction amount
to deduct from the gift card; and

receiving from the host a response that includes at least one of an indication of an availability of the transaction amount
or an indication of a balance of the gift card.

US Pat. No. 9,521,741

SIDE SURFACE MOUNTING OF SHIELDS FOR A CIRCUIT BOARD ASSEMBLY

Amazon Technologies, Inc....

1. An electronic device, comprising:
a circuit board comprising:
a first major surface;
a second major surface opposed to the first major surface; and
a first side surface extending between the first major surface and the second major surface, the first side surface having
a first set of grounding contacts and a second set of grounding contacts, wherein at least one grounding contact of the second
set of grounding contacts is positioned between two adjacent grounding contacts of the first set of grounding contacts;

a first electronic component electrically coupled to the first major surface of the circuit board;
a second electronic component electrically coupled to the second major surface of the circuit board;
a first shield comprising a first planar portion and a first plurality of tabs extending from the first planar portion, wherein
the first planar portion is positioned over the first electronic component and is substantially parallel to the first major
surface, and wherein each of the first plurality of tabs is coupled to the first side surface and electrically coupled to
a respective grounding contact of the first set of grounding contacts; and

a second shield comprising a second planar portion and a second plurality of tabs extending from the second planar portion,
wherein the second planar portion is positioned over the second electronic component and is substantially parallel to the
second major surface, and wherein each of the second plurality of tabs is coupled to the first side surface and electrically
coupled to a respective grounding contact of the second set of grounding contacts.

US Pat. No. 9,332,670

DATA CENTER MODULE WITH LEVELING PAD

Amazon Technologies, Inc....

1. A data center, comprising:
a computer room comprising a floor;
one or more data center modules, wherein at least one of the one or more data center modules comprises:
a module base; and
one or more rack computing systems coupled to the module base;
one or more pads between the module base of the at least one data center module and the floor; and
a plurality of pad compression mechanisms coupled to the floor;
wherein the pad is configured to compress to at least partially conform to variations in a surface of the floor;
wherein the plurality of pad compression mechanisms comprise a first pad compression mechanism coupled to the floor at a first
location and a second pad compression mechanism coupled to the floor at a second location, wherein the surface of the floor
at the first location is at a different elevation than the surface of the floor at the second location;

wherein the module base is configured to transmit a given compressive force exerted on the module base by the first pad compression
mechanism and to transmit another compressive force exerted on the module base by the second pad compression mechanism such
that the module base compresses the pad at the first location by a given amount and compresses the pad at the second location
by another amount, such that a level of the at least one data center module is adjusted.

US Pat. No. 9,294,408

ONE-TO-MANY STATELESS LOAD BALANCING

Amazon Technologies, Inc....

1. A stateless load balancer comprising:
one or more processors; and
memory storing components executable by the one or more processors, the components perform acts comprising:
receiving a request that is initiated by a client device, the request being transported to the stateless load balancer via
a communication connection;

obtaining connection tuples of the communication connection;
generating a hash value from the connection tuples;
mapping the hash value to a first network address of a first computing device, based at least in part on mapping data;
updating the mapping such that the hash value is mapped to a second network address of a second computing device; and
routing the request to the second computing device.

US Pat. No. 9,189,515

DATA RETRIEVAL FROM HETEROGENEOUS STORAGE SYSTEMS

Amazon Technologies, Inc....

1. A computer-implemented method, comprising:
receiving a report description comprising two or more query templates for generating two or more queries to access data from
a plurality of datastores including at least one relational datastore and at least one non-relational datastore, the two or
more queries including at least one query to access the at least one relational datastore and at least one query to access
the at least one non-relational datastore, the report description further comprising result combination information;

analyzing the report description to determine:
at least one input parameter associated with the two or more query templates; and
at least one preliminary query configured to access data corresponding to the at least one input parameter from one or more
datastores of the plurality of datastores;

executing the at least one preliminary query to determine at least one input value corresponding to the at least one input
parameter from the one or more datastores of the plurality of datastores;

generating the two or more queries corresponding to the two or more query templates, based at least partly on the at least
one input value;

executing the two or more queries to retrieve result data sets from the at least one relational datastore and the at least
one non-relational datastore;

combining the result data sets retrieved from the at least one relational datastore and the at least one non-relational datastore
to generate combined result data expressed in a single data structure, the combining of the result data sets based at least
partly on the result combination information included in the report description;

converting at least a portion of a result data set retrieved from the at least one non-relational datastore to converted data
expressed in a relational storage format; and

writing the converted data to the at least one relational datastore.

US Pat. No. 9,485,885

STABILIZING RACK SYSTEMS FOR SEISMIC LOADS

Amazon Technologies, Inc....

1. A system for performing computing operations, comprising:
a plurality of racks configured to rest on a floor and coupled, independently of the floor, to one another; and
a plurality of stabilization devices each respectively coupled to a top of respective ones of the plurality of racks, wherein
individual ones of the plurality of stabilization devices comprise:

a base plate;
a ballast member; and
one or more spring devices coupled between the ballast member and the base plate,
wherein the ballast member is configured to reduce displacement of at least a portion of the respective rack from seismic
loads transmitted from the floor to the respective rack to mitigate effects of the seismic loads on the respective rack, based
at least in part upon movement of the ballast member relative to the respective rack when seismic loads are transmitted from
the floor to the respective rack, and

wherein the plurality of racks are coupled to one another via respective ones of the base plates of the plurality of stabilization
devices, wherein individual ones of the respective base plates are coupled to one or more adjacent ones of the base plates
of the one or more adjacent stabilization devices mounted on one or more adjacent ones of the racks.

US Pat. No. 9,190,025

ADAPTING DISPLAY FONTS FOR REFLECTIVE DISPLAYS

Amazon Technologies, Inc....

1. An electronic device comprising:
an electronic paper display configured to display an electronic book;
a display controller configured to update the electronic paper display;
one or more processors; and
one or more computer-readable media storing computer-executable instructions that, when executed on the one or more processors,
cause the one or more processors to perform acts comprising:

instructing the display controller to cause display of a first page of the electronic book using a first weight of a particular
font;

receiving a request to navigate from the first page of the electronic book to a second page of the electronic book; and
at least partly in response to receiving the request, instructing the display controller to cause display of the second page
of the electronic book using a second, different weight of the particular font.

US Pat. No. 9,588,519

SYSTEMS AND METHODS TO FACILITATE HUMAN/ROBOT INTERACTION

Amazon Technologies, Inc....

1. A method to maintain a threshold distance between a worker and a robot in a workspace, the method comprising:
receiving, at a server from an imaging device associated with the robot, first location information for the robot in the workspace
at a first time, wherein the server is external to the worker and the robot;

receiving, at the server from an imaging device associated with the worker, second location information for the worker in
the workspace at the first time;

designating, with the server, a work zone encompassing at least the worker and comprising at least an inner barrier and an
outer barrier;

calculating, with the server, a distance between the robot and the worker based at least in part on the first location information
for the robot and the second location information for the worker; and

transmitting, from the server to the robot, an instruction to take evasive action based at least in part on the robot crossing
the outer barrier;

wherein the first location information for the robot comprises first fiducial data from a first fiducial, the first fiducial
proximate to the robot at the first time;

wherein the second location information for the worker comprises second fiducial data from a second fiducial, the second fiducial
proximate to the worker at the first time.

US Pat. No. 9,468,118

REINFORCED STRUCTURAL COMPOSITE

Amazon Technologies, Inc....

1. An electronic device, comprising:
a housing that encloses and protects computing components of the electronic device, the housing comprising:
a monolithic rigid support frame including sides extending substantially perpendicular to a base portion, the base portion
forming an aperture in a central portion of the support frame;

a structurally reinforced panel disposed in the aperture and physically coupled to the support frame, the structurally reinforced
panel including:

a first primer layer,
a central foam layer onto which the first primer layer is applied, wherein the first primer layer penetrates less than 100
microns into the central foam layer, and

a first metallic layer electroplated on the first primer layer; and
wherein the structurally reinforced panel weighs less per unit volume because of a lower density than the monolithic rigid
support frame.

US Pat. No. 9,398,367

SUSPENDING NOISE CANCELLATION USING KEYWORD SPOTTING

Amazon Technologies, Inc....

1. A method, comprising:
receiving a first external audio signal from a microphone of a noise-cancelling device;
determining that the first external audio signal does not comprise a keyword corresponding to suspension of noise cancellation;
generating a noise-cancellation signal for cancelling the first external audio signal;
causing a speaker of the noise-cancelling device to generate audio corresponding to the noise-cancellation signal;
receiving a second external audio signal from the microphone of the noise-cancelling device;
determining that the second external audio signal comprises the keyword corresponding to suspension of noise cancellation;
facilitating presentation of at least a portion of the second external audio signal at the noise-cancelling device by suspending
noise cancellation for at least the portion of the second external audio signal;

determining that a defined interaction with the noise cancelling device occurred, the defined interaction corresponding to
an event to resume noise cancellation; and

resuming the noise cancellation for at least a second portion of the second external audio signal.

US Pat. No. 9,256,620

TECHNIQUES FOR GROUPING IMAGES

Amazon Technologies, Inc....

1. A computer-implemented method comprising:
grouping, by one or more computer systems configured with executable instructions, and from among a plurality of images, multiple
images of the plurality that are associated with a common event into an event-based image group;

receiving, by the one or more computer systems, a selection by a user of a visual representation of a person;
identifying, by the one or more computer systems, one or more images in the identified event-based image group that each includes
the person; and

automatically, based on the grouping, providing the identified images to the person by:
determining, by the one or more computer systems, contact information for the person for use in sending to the person an electronic
communication that provides access to the identified one or more images; and

using, by the one or more computer systems, the determined contact information to send the electronic communication to the
person.

US Pat. No. 9,591,790

RACK SLIDE SYSTEM

Amazon Technologies, Inc....

1. A method of adjusting a workspace within a row of mobile racks comprising:
mounting a plurality of mobile racks on an elongated supporting structure in side-by-side relation for movement along a controlled
path, a length of the controlled path exceeding by a predetermined amount a sum of depths of the plurality of mobile racks
to provide at least one gap of workspace between selected ones of the plurality of mobile racks;

wherein each of the plurality of mobile racks has a front, a back, and two sides with side-to-side airflow ventilation;
equipping each of the plurality of mobile racks with electronic equipment having side-to-side airflow ventilation;
orienting the plurality of mobile racks on the elongated supporting structure to align with an intake ventilation of the electronic
equipment receiving air from a cold aisle and exhaust ventilation of the electronic equipment blowing air out into a hot aisle;
and

sliding one of the mobile racks along the elongated supporting structure to provide the at least one gap of workspace next
to a particular one of the mobile racks.

US Pat. No. 9,451,674

INVENTORY LOCATION ILLUMINATION FOR DESIGNATING OPERATION PATH

Amazon Technologies, Inc....

1. A materials handling facility, comprising:
one or more inventory areas, wherein each inventory area of the one or more inventory areas comprises a plurality of inventory
locations for storing inventory items;

a plurality of illumination devices associated with the plurality of inventory locations, wherein the plurality of illumination
devices are configured to designate respective inventory locations such that each inventory location of the plurality of inventory
locations can be designated with a plurality of distinct illumination patterns;

a control system configured to:
determine a set of the inventory locations in a particular one of the one or more inventory areas, wherein each determined
inventory location is an inventory location at which an inventory operation is to be performed by an agent at the particular
inventory area;

assign a particular illumination pattern of the plurality of illumination patterns to the agent;
send instructions to a corresponding set of the plurality of illumination devices to concurrently designate all of the inventory
locations in the set of the inventory locations at which the inventory operation is to be performed by the agent with the
particular illumination pattern assigned to the agent, wherein the concurrent designation visually illustrates locations for
the agent to traverse through the particular inventory area to perform the inventory operation;

determine another set of the inventory locations at which an inventory operation is to be performed by another agent at the
particular inventory area;

assign another particular illumination pattern of the plurality of illumination patterns to the other agent distinct from
the illumination pattern assigned to said agent; and

send instructions to a corresponding set of the plurality of illumination devices to concurrently designate all of the other
inventory locations in the set of the other inventory locations at which the inventory operation is to be performed by the
other agent with the other particular illumination pattern assigned to the other agent.

US Pat. No. 9,357,681

MODULAR DATA CENTER ROW INFRASTRUCTURE

Amazon Technologies, Inc....

1. A data center, comprising:
a data center row infrastructure module positioned in a data center interior space and configured to direct intake air to
at least two rows of server racks and direct exhaust air away from the at least two rows of server racks and into at least
a portion of the data center interior space, the data center row infrastructure module comprising:

a cold aisle space comprising a long axis and at least two separate rows of rack computing systems, wherein each row of rack
computing systems is positioned on an opposite side of the long axis, and each rack computing system is configured to receive
intake air on a front side facing the long axis and to discharge exhaust air on a rear side that faces away from the long
axis;

at least two free-standing exhaust plenum structures, each mounted on the floor element adjacent to rear sides of separate
ones of the at least two rows of rack computing systems on opposite sides of the cold aisle space, wherein each free-standing
exhaust plenum structure comprises:

a frame structure that is configured to provide structural support to the free-standing exhaust plenum structure,
an internal exhaust air plenum at least partially bounded by the frame structure, wherein the internal exhaust air plenum
is configured to receive the exhaust air from the rear side of an adjacent row of rack computer systems and direct the exhaust
air into the portion of the data center interior space,

at least one set of wall elements coupled to the frame structure and substantially encompassing at least a portion of an aisle-facing
side of the free-standing exhaust plenum structure that faces the cold aisle space, the at least one set of wall elements
is configured to restrict airflow into the internal exhaust air plenum to exhaust air discharged from the rear sides of the
adjacent row of rack computer systems; and

a plenum module spanning the cold aisle space between the at least two free-standing exhaust plenum structures to establish
a lower boundary of a cooling air plenum above the plenum module and an upper boundary of the cold aisle space beneath the
plenum module, wherein the plenum module comprises:

an intake air supply vent that is configured to direct at least a portion of cooling air circulating through the cooling air
plenum into the cold aisle space to be supplied to the at least two rows of rack computing systems as intake air.

US Pat. No. 9,355,612

DISPLAY SECURITY USING GAZE TRACKING

Amazon Technologies, Inc....

1. A computer-implemented method for providing display security using gaze tracking, comprising:
capturing one or more images using a front-facing camera of a computing device, the one or more images including a representation
of at least one portion of an eye of a user of the computing device;

detecting a person, different from the user, within a field of view of the front-facing camera;
determining a gaze direction of the user based at least in part on the representation of the at least one portion of the eye
of the user included in the one or more images;

determining a position on a display screen of the computing device that corresponds to the gaze direction of the user;
presenting content using the display screen of the computing device;
determining a first portion of the content being presented at a region within a threshold distance from the position on the
display screen corresponding to the gaze direction of the user;

determining a second portion of the content, different from the first portion, outside of the threshold distance; and
scrambling at least one portion of the second portion of the content.

US Pat. No. 9,313,208

MANAGING RESTRICTED ACCESS RESOURCES

Amazon Technologies, Inc....

1. A system, comprising:
at least one processor; and
memory including instructions that, when executed by the at least one processor, cause the system to:
determine an action to be performed using at least one resource of a resource provider environment, the at least one resource
of the resource provider environment being associated with a restricted zone in the resource provider environment, the restricted
zone in the resource provider environment provided for a customer and directly accessible only to people granted at least
one corresponding credential on behalf of the customer;

create a primitive corresponding to the action, the primitive capable of being executed in the restricted zone in the resource
provider environment to cause the action to be performed using the at least one resource of the resource provider environment;

store the primitive to a primitive repository, the primitive repository storing a plurality of primitives and a plurality
of workflows, each workflow comprising two or more primitives;

receive a selection of the primitive from the primitive repository;
cause a ticket to be generated by a ticket manager component of a control plane, the control plane comprising a virtual layer
of hardware and software components for performing control and management actions, and submitted to the restricted zone in
the resource provider environment, the ticket including information for the selected primitive and capable of being approved
and executed within the restricted zone in the resource provider environment;

receive, by the ticket manager component, result information regarding at least one of an approval of the primitive, a denial
of the primitive, or information resulting from performance of the action in the restricted zone, the information resulting
from performance capable of having information redacted before passing from the restricted zone in the resource provider environment,
and the information being made available to the components of the control plane; and

store at least a portion of the result information in a repository outside the restricted zone in the resource provider environment,
wherein the approval of the primitive indicates that the primitive is capable of being executed in the restricted zone in
the resource provider environment without requiring another approval.

US Pat. No. 9,305,283

ASSOCIATION OF ITEM IDENTIFIERS

Amazon Technologies, Inc....

1. One or more computer-readable storage devices for storing computer-executable instructions that, when executed by one or
more computer systems, configure the one or more computer systems to perform operations comprising:
instructing a radio-frequency identification (RFID) reader system to read an RFID tag comprising an opaque perimeter including
a frame, and a translucent interior within the opaque perimeter, the RFID tag attached to a consumer item such that the translucent
interior is positioned over a barcode and the barcode is disposed within the frame of the opaque perimeter of the RFID tag,
the barcode associated with the consumer item and the consumer item located within a reading environment;

identifying an RFID number associated with the RFID tag based at least in part on the reading;
in response to reading the RFID tag, initiating an imaging device configured to capture at least one image of at least a portion
of the consumer item within the reading environment;

receiving the at least one image captured by the imaging device;
recognizing the frame of the RFID tag in the at least one image captured by the imaging device, the frame comprising at least
one of a shape, an edge, a corner, a pattern, an alphanumeric identifier, a symbol or a color that is associated with the
RFID number and being distinct from frames of other RFID tags;

identifying, within the recognized frame of the RFID tag in the at least one image, the barcode associated with the consumer
item; and

storing an association of the barcode and the RFID number in a database.

US Pat. No. 9,167,161

CAMERA MODULE PACKAGE WITH A FOLDED SUBSTRATE AND LATERALLY POSITIONED COMPONENTS

Amazon Technologies, Inc....

1. A camera module, comprising:
a flexible substrate comprising a first portion and a second portion, said flexible substrate being folded at a junction between
the first portion and the second portion such that the second portion defines a plane substantially orthogonal to a plane
defined by the first portion;

an image sensor die coupled to the second portion of the flexible substrate, said image sensor die comprising a plurality
of die contacts coupled to the flexible substrate;

a lens module comprising a lens housing and at least one lens contained in the lens housing, said lens housing being coupled
to the second portion of the flexible substrate;

a gyroscopic sensor coupled to the first portion of the flexible substrate;
an image stabilization logic module coupled to the first portion of the flexible substrate;
a first enclosure coupled to the first portion of the flexible substrate encapsulating the gyroscopic sensor and the image
stabilization circuit module.

US Pat. No. 9,578,786

COMPUTER SYSTEM WITH BYPASS AIR PLENUM

Amazon Technologies, Inc....

1. A system for storing data, comprising:
a rack; and
one or more computer systems mounted on the rack, at least one of the computer systems comprising:
a chassis, having an inlet end and an exhaust end, that at least partially encompasses a chassis interior;
a circuit board installed in an upstream portion of the chassis interior that is proximate to the inlet end of the chassis,
the circuit board comprising an upper surface upon which an upstream heat-producing component is installed;

at least one inlet air plenum that extends through a portion of the chassis interior above the upper surface of the circuit
board and is configured to direct an inlet air flow received from the inlet end of the chassis through at least the upstream
portion of the chassis interior in heat transfer communication with the upstream heat-producing component, such that the inlet
air flow removes heat from the upstream heat-producing component;

at least one bypass air plenum that extends through a portion of the chassis interior beneath a lower surface of the circuit
board, the at least one bypass air plenum being unencompassed by the inlet air plenum and configured to direct a bypass air
flow that is isolated from the inlet air flow to mix with the inlet air flow downstream of the upstream heat-producing component
to establish a mixed air flow; and

a downstream heat-producing component installed in a downstream portion of the chassis interior that is proximate to the exhaust
end of the chassis, wherein the downstream portion of the chassis interior is configured to direct the mixed air flow through
the chassis interior to remove heat from the downstream heat-producing component.

US Pat. No. 9,305,227

HYBRID OPTICAL CHARACTER RECOGNITION

Amazon Technologies, Inc....

1. A computer-implemented method comprising:
generating an image at a mobile computing device using a camera;
determining features corresponding to a first word and a second word of text in the image;
generating, on the mobile computing device, mobile optical character recognition (OCR) data including mobile OCR results associated
with the first word by performing OCR on the features associated with the first word;

determining an OCR latency of the mobile computing device;
determining an OCR accuracy of the mobile computing device;
sending the image to a remote device to perform remote OCR on the image;
causing the mobile OCR results to be displayed on the mobile computing device, including causing a first textual output associated
with the first word to be displayed;

receiving remote OCR data, wherein the remote OCR data includes remote OCR results from the remote device associated with
the second word;

determining differences between the mobile OCR data and the remote OCR data;
generating hybrid OCR results based on the differences by merging the mobile OCR data and the remote OCR data, including generating
hybrid OCR results that include a second textual output associated with the second word and wherein the generating occurs
based on at least one of the OCR latency being less than a threshold amount of time or the OCR accuracy being less than an
accuracy threshold; and

causing the hybrid OCR results to be displayed on the mobile computing device, including causing the first textual output
to be displayed with the second textual output.

US Pat. No. 9,456,056

LOAD BALANCING UTILIZING ADAPTIVE THRESHOLDING

AMAZON TECHNOLOGIES, INC....

1. A computer-implemented method of operating a server computing device to process data requests, the method comprising:
receiving a first data request from a client computing device at a first server computing device, the first server computing
device associated with a first queue threshold, the first data request identifying a second queue threshold associated with
a second server computing device;

comparing, by the first server computing device, the first queue threshold and the second queue threshold;
based on a determination that the second queue threshold is greater than or equal to the first queue threshold, increasing,
by the first server computing device, the first queue threshold in order to process the first data request; and

accepting the first data request for processing, by the first server computing device, based on the comparison of the first
queue threshold and the second queue threshold.

US Pat. No. 9,307,148

VIDEO ENHANCEMENT TECHNIQUES

Amazon Technologies, Inc....

1. A computing system, comprising:
one or more processors;
memory including instructions that, when executed by the one or more processors, cause the computing system to:
obtain a request to modify an input video, the input video corresponding to a first resolution;
divide the input video into a plurality of zones;
estimate camera motion of the input video based at least in part upon a plurality of inter-frame motion vectors of the plurality
of zones of each frame of the input video;

determine that the camera motion of at least one input segment of the input video is unintentional based at least in part
upon a magnitude of the camera motion of the at least one input segment being below a threshold magnitude and a frequency
of the camera motion of the at least one input segment exceeding a threshold frequency;

determine a modified motion for the at least one input segment that at least reduces the frequency of the camera motion of
the at least one input segment; and

generate an output video based at least in part upon selection of at least a portion of pixels of each input frame of the
input video, at least one output segment of the output video selected based at least in part upon the modified motion, the
output video corresponding to a second resolution that is lower than the first resolution.

US Pat. No. 9,622,387

RACK-MOUNTED AIR DIRECTING DEVICE WITH SCOOP

Amazon Technologies, Inc....

1. An air directing device, comprising:
a rack-coupling portion configured to externally couple the air directing device with an exterior of a rack; and
a body portion configured to be external to the rack, the body portion defining one or more air directing portions;
wherein the one or more air directing portions include:
one or more scoops configured to direct air into the body portion when the air directing device is externally coupled to the
exterior of the rack;

a plurality of air directing device exits comprising a first exit configured to direct air to a first location in the rack
and a second exit configured to direct air to a second location in the rack;

one or more throat openings within an interior of the body portion;
one or more upstream passage sections extending within the interior of the body portion between the one or more scoops and
the one or more throat openings, the one or more upstream passage sections configured to direct air from the one or more scoops
to the one or more throat openings; and

two or more downstream passage sections extending within the interior of the body portion between the one or more throat openings
and the plurality of air directing device exits, the two or more downstream passage sections configured to direct air from
the one or more throat openings to the plurality of air directing device exits, wherein the two or more downstream passage
sections include:

a first downstream passage section configured to direct air, at a first velocity, to the first exit that is configured to
direct air to the first location in the rack; and

a second downstream passage section configured to direct air, at a second velocity, to the second exit that is configured
to direct air to the second location in the rack, the second velocity being different than the first velocity.

US Pat. No. 9,447,619

90 DEGREE MAGNETIC LATCH TO PREVENT HIGH SURFACE FLUX

Amazon Technologies, Inc....

1. A latch system comprising:
a first latch component comprising a first magnet; and
a second latch component comprising:
a first magnetically permeable component; and
a hinged component disposed apart from the first magnetically permeable component and comprising at least one second magnet
disposed on a second magnetically permeable component,

wherein, when the first latch component is disposed proximal to the second latch component, the first magnet attracts the
at least one second magnet to rotate the hinged component from a pre-engaged position with respect to the first latch component,
where the hinged component is stabilized in the pre-engaged position by a magnetic attraction between the at least one second
magnet and the first magnetically permeable component, to an engaged position with respect to the first latch component to
engage the first latch component and the second latch component by magnetic attraction between the first magnet and the at
least one second magnet, and wherein the hinged component is configured to move from the engaged position to the pre-engaged
position in response to the magnetic attraction between the second magnet and the first magnetically permeable component upon
removal of the first latch component.

US Pat. No. 9,402,227

REDUCING SERVICE ACQUISITION TIME WHEN A USER DEVICE IS POWERED UP

Amazon Technologies, Inc....

1. A method comprising:
receiving, by a user device, network information for a future destination of the user device;
storing, by the user device, the network information for the future destination in a local store of the user device; and
responsive to the user device starting up, searching, by the user device, for an available network using the network information
in the local store of the user device, wherein searching for the available network excludes searching for a last registered
network.

US Pat. No. 9,723,756

RACK MOUNTING PORTION ASSEMBLY

Amazon Technologies, Inc....

1. A data center comprising:
a rack comprising a plurality of mounting portions that are each configured to receive and structurally support at least one
of a plurality of computer systems mounted in the respective one of the plurality of mounting portions;

a backplane assembly that is communicatively coupled to a communication network and extends along a portion of a rear end
of the rack, the backplane assembly comprising separate network connectors that are each aligned with separate ones of the
plurality of mounting portions and are each configured to communicatively couple a complimentary network connector of individual
ones of the plurality of computer systems with the communication network when the individual ones of the plurality of computer
systems are mounted in the separate ones of the plurality of mounting portions; and

a plurality of air flap structures, each coupled to a separate one of the plurality of mounting portions of the rack and configured
to restrict airflow through the respective mounting portion based at least in part upon an absence of a computer system in
the respective mounting portion;

wherein at least one of the mounting portions comprises a latch mechanism configured to:
receive, at a communication interface of the latch mechanism, an ejection command signal via a communication pathway external
to a computer system mounted in the at least one mounting portion; and

in response to receiving the ejection command signal, disengage the latch mechanism with an interface portion of the computer
system.

US Pat. No. 9,473,548

LATENCY REDUCTION IN STREAMED CONTENT CONSUMPTION

Amazon Technologies, Inc....

1. A system, comprising:
at least one memory storing computer-executable instructions; and
at least one processor configured to access the at least one memory and execute the computer-executable instructions to:
receive a request from one or more of a plurality of media devices to stream first content;
stream the first content to the one or more of the plurality of media devices;
access transport control data acquired by one or more servers during delivery of the first content from the one or more servers
by streaming at a first resolution to the one or more plurality of media devices, wherein the transport control data comprises
information indicative of navigation by a plurality of users of the one or more plurality of media devices to one or more
points in time between a beginning time and an ending time of the first content;

based at least in part on the transport control data acquired by the one or more servers, generate a timeline comprising one
or more points of interest associated with the first content arranged sequentially by time, wherein the one or more points
of interest are indicative of the navigation by the plurality of users to the one or more points in time between the beginning
time and the ending time of the first content;

based at least in part on the timeline, determine pre-fetch content associated with the one or more points of interest, wherein
the pre-fetch content comprises one or more clips of the first content at the first resolution that are associated with the
one or more points of interest, each clip having a duration of at least one second; and

send the pre-fetch content to the one or more of the plurality of media devices while streaming the first content.

US Pat. No. 9,615,488

DATACENTER AISLE CONTAINMENT STRUCTURE

Amazon Technologies, Inc....

1. A thermal isolation system for an electronic component rack, comprising:
a first rail having a front for engaging a first portion of an electronic component rack;
a second rail having a front for engaging a second portion of the electronic component rack;
at least one of the first and second rails being slidingly mounted to permit movement of said at least one of the first and
second rails to align with the first and second portions of the electronic component rack; and

at least one panel for connecting to the first and second rails and for extending across a space adjacent to the electronic
component rack, the at least one panel and the rack forming a fluid boundary between a cold space and hot space.

US Pat. No. 9,723,762

FREE COOLING IN HIGH HUMIDITY ENVIRONMENTS

Amazon Technologies, Inc....

1. A data center comprising:
heat producing components; and
an air handling system configured to provide temperature and humidity conditioned air to the heat producing components to
cool the heat producing components, wherein the air handling system comprises:

a thermal storage unit; and
an air moving device configured to direct air, from an external environment external to the data center, across the thermal
storage unit and toward the heat producing components,

wherein the thermal storage unit is configured to:
under a given set of ambient air conditions for the air in the external environment, remove thermal energy from the air as
the air passes across the thermal storage unit; and

under another set of ambient air conditions for the air in the external environment, release thermal energy, previously removed
from air passing across the thermal storage unit, into the air as the air passes across the thermal storage unit such that
a capacity of the thermal storage unit to remove thermal energy is recharged.

US Pat. No. 9,795,062

PORTABLE DATA CENTER FOR DATA TRANSFER

Amazon Technologies, Inc....

1. A portable data center comprising:
racks of computing devices arranged in a row in a compute space of the portable data center;
a cold aisle on a first side of the row of racks in the compute space of the portable data center;
a hot aisle on a second side of the row of racks in the compute space of the portable data center; and
a sub-floor cooling system mounted in a space in the portable data center between an outer structure of the portable data
center and a platform of the portable data center, wherein the racks of computing devices are mounted on the platform of the
portable data center,

wherein the sub-floor cooling system comprises:
an air plenum between the hot aisle and the cold aisle in the space between the outer structure of the portable data center
and the platform of the portable data center;

a cooling circuit; and
an air moving device configured to draw heated air from the hot aisle into the air plenum and direct cooled air into the cold
aisle from the air plenum,

wherein the cooling circuit comprises a fluid moving device configured to circulate a heat transfer fluid between a portion
of the cooling circuit mounted in the air plenum and a portion of the cooling circuit mounted in a portion of the portable
data center that is separate from the compute space; and

wherein the cooling circuit is configured to remove heat from air passing through the air plenum and reject heat into the
separate portion of the portable data center that is separate from the compute space.

US Pat. No. 9,807,911

COMPUTER SYSTEM WITH EXTERNAL BYPASS AIR PLENUM

Amazon Technologies, Inc....

4. A computer system, comprising:
a chassis, having an inlet end, that at least partially encompasses a chassis interior and at least partially bounds, on an
external surface of at least one end that is separate from the inlet end, a gap space external to the chassis interior;

at least one inlet air plenum configured to direct an inlet air flow received from the inlet end of the chassis through at
least an upstream portion of the chassis interior that is proximate to the inlet end to remove heat from an upstream heat-producing
component installed in the upstream portion of the chassis interior; and

at least one bypass air vent, included in the at least one end that is separate from the inlet end, that is configured to
receive a bypass airflow from a portion of the gap space to mix with the inlet air flow in a location in the chassis interior
that is downstream of the upstream heat-producing component, wherein the bypass air flow is isolated from the inlet air flow
and isolated from heat transfer communication with heat producing components at least until mixing with the inlet air flow
downstream of the upstream heat-producing component.

US Pat. No. 9,116,654

CONTROLLING THE RENDERING OF SUPPLEMENTAL CONTENT RELATED TO ELECTRONIC BOOKS

Amazon Technologies, Inc....

24. A computer-implemented method, comprising:
under control of one or more computing systems configured with specific executable instructions,
receiving an electronic book from a publisher of the electronic book;
receiving content from a number of sources;
determining whether at least a portion of the content is supplemental content associated with the electronic book;
receiving data from a client device specifying a first level of supplemental content rendering, the first level of supplemental
content rendering being one of a plurality of consecutive levels of supplemental content rendering, the first level indicating
one or more categories of the supplemental content associated with the electronic book, and a first amount of the supplemental
content to provide to the client device from at least one category of the supplemental content;

identifying at least a portion of the supplemental content associated with the electronic book based, at least in part, on
the first level of supplemental content rendering;

sending the at least a portion of the supplemental content to the client device;
rendering a portion of the electronic book on the client device, wherein the first level of supplemental content rendering
is configured to be maintained while rendering a plurality of pages of the electronic book;

receiving further data from the client device specifying second level of supplemental content consecutive to the first level;
and

rendering, in response to the further data, a second amount of supplemental content corresponding to the second level while
rendering the portion of the electronic book.

US Pat. No. 9,642,286

COORDINATED CONTROL USING RACK MOUNTABLE COOLING CANISTERS

Amazon Technologies, Inc....

1. A computing system comprising:
cooling canisters mounted in a server rack, wherein individual ones of the cooling canisters comprise:
a canister body configured to couple with a subset of servers in the rack such that air flowing through the subset of servers
flows through the canister body; and

an opening in the canister body configured to couple with a corresponding opening in a canister body of an adjacent cooling
canister wherein the opening in the canister body is configured to permit airflow between the cooling canister and the adjacent
cooling canister;

a group of fans, wherein respective ones of the cooling canisters are configured to couple with respective sets of one or
more fans of the group of fans; and

cooling controllers configured to control the respective sets of fans, wherein individual ones of the cooling controllers
are configured to:

receive condition signals indicating thermal conditions in a given subset of servers, wherein the cooling controller is configured
to control a given respective set of fans that is coupled with a cooling canister that is coupled with the given subset of
servers; and

generate control signals for controlling the given respective set of fans,
wherein for a given cooling canister and an adjacent cooling canister, two of the cooling controllers controlling respective
sets of fans coupled with the given cooling canister and the adjacent cooling canister are configured to coordinate control
of the respective sets of fans to control an amount of air that flows between the given cooling canister and the given adjacent
cooling canister via the openings in the canister bodies of the given cooling canister and the given adjacent cooling canister.

US Pat. No. 9,153,869

HARMONIC SUPPRESSED DUAL FEED ANTENNA

Amazon Technologies, Inc....

1. An antenna structure, comprising:
a low band folded monopole antenna comprising:
a first folded feed portion and a first non-folded patch portion electromagnetically coupled via a first gap with the first
folded feed portion, the first non-folded patch portion configured for resonating with the first folded feed portion in a
first frequency band, and

the first non-folded patch portion including a first ground strip separated from the first folded feed portion by a first
distance predetermined to reduce slot mode resonances of the low band folded monopole antenna; and

a high band folded monopole antenna comprising:
a second folded feed portion and a second patch portion electromagnetically coupled via a second gap with the second folded
feed portion, the second patch portion configured for resonating with the second folded feed portion in a second frequency
band higher than the first frequency band;

in which the low band folded monopole antenna is configured to suppress harmonics in the second frequency band.

US Pat. No. 9,195,753

DISPLAYING INTEREST INFORMATION

Amazon Technologies Inc.,...

2. A method comprising:
identifying a collection of items associated with a user based at least in part on interaction by the user with an electronic
marketplace;

determining at least one of a recommended item, a category, or a tag that is associated with an item within the collection
of items;

identifying discussion forums associated with at least one of the recommended item, the category, the tag, or the collection
of items, each of the discussion forums including dialog created by a plurality of users that includes discussions that are
associated with the at least one of the recommended item, the category, the tag, or the collection of items;

filtering the discussion forums based at least in part on an amount of activity of each discussion forum to reduce a quantity
of the discussion forums to less than a threshold quantity, wherein filtering the discussion forums further includes:

ranking the discussion forums based on recent activity in the discussion forums;
selecting ranked discussion forums above a threshold rank; and
filtering the ranked discussion forums to maintain a predetermined mix of the discussion forums associated with the collection
of the items and the discussion forums associated with the at least one of the recommended item, the category, or the tag;
and

causing a display of the reduced quantity of the discussion forums with the items.

US Pat. No. 9,349,010

MANAGING UPDATE ATTEMPTS BY A GUEST OPERATING SYSTEM TO A HOST SYSTEM OR DEVICE

Amazon Technologies, Inc....

1. A computer-implemented method, comprising:
provisioning a guest operating system having non-virtualized access to at least one device of a host system;
causing a counter to be updated for at least one attempted modification of configuration information for the at least one
device;

determining that a value of the counter does not correspond to an expected value; and
performing at least one security action with respect to at least one of the host system or the at least one device,
wherein the expected value is stored in a location inaccessible to the guest operating system.

US Pat. No. 9,298,784

SEARCHING INSIDE ITEMS

Amazon Technologies, Inc....

1. A non-transitory computer-readable medium comprising a plurality of computer instructions executable by a computing device,
wherein upon execution, the plurality of computer instructions cause the computing device to at least:
receive of an image from a client, wherein the image depicts a book;
perform a first search of the book based at least in part upon the image, thereby generating a plurality of first search results
from the first search to be rendered in a user interface;

determine an edition of the book depicted in the image from a selection of at least one of the plurality of first search results
rendered in the user interface;

determine that the edition of the book includes a searchable content;
facilitate a second search of the searchable content based at least in part upon on a search string entered via the user interface,
thereby generating a plurality of second search results from the second search, wherein the search string is associated with
at least one of a review of the book that includes the searchable content, a preview of the book that includes the searchable
content, or a trailer associated with the book that includes the searchable content;

track a number of times the image is received;
track the number of times the search string is received;
store the image, the search string, the plurality of first search results and the plurality of second search results in association
with a user account;

encode for rendering for display at least a subset of the plurality of second search results, wherein the subset of the plurality
of second search results is displayed according to a ranking based at least in part on a location of keywords in the search
string, wherein an individual one of the plurality of second search results containing keywords that appear closer in proximity
in relation to other words in the individual one of the plurality of second search results is ranked higher than an individual
ones of the plurality of second search results containing keywords that appear farther away in proximity in relation to other
words in the individual one of the plurality of second search results; and

store the individual one of the plurality of second search results in association with the user account.

US Pat. No. 9,286,391

CLUSTERING AND RECOMMENDING ITEMS BASED UPON KEYWORD ANALYSIS

Amazon Technologies, Inc....

1. A system, comprising:
at least one memory configured to store computer-executable instructions;
at least one processor configured to access the at least one memory and execute the computer-executable instructions to:
generate a collaborative filtering graph comprising:
a plurality of nodes, wherein a node corresponds to an item offered in an electronic catalog; and
a plurality of edges, wherein an edge connects a pair of nodes of the plurality of nodes that have at least one co-occurred
user interaction;

determine, based at least in part on the plurality of edges, a subset of the plurality of nodes of the collaborative filtering
graph that are related;

determine, for each of at least two nodes of the subset, a list of keywords comprising one or more keywords from a description
associated with the item corresponding to the node;

determine, based at least in part on evaluation of the keywords determined for the at least two nodes of the subset, a list
of common keywords comprising one or more keywords shared by the lists of keywords for the at least two nodes of the subset,
wherein the subset is smaller than a whole set of the plurality of nodes; and

generate, based at least in part upon the determined list of common keywords, at least one suggestion.

US Pat. No. 9,451,013

PROVIDING INSTANCE AVAILABILITY INFORMATION

Amazon Technologies, Inc....

1. A computer-implemented method for providing information regarding the operational status of instances of computing resources
provided by a distributed execution environment, the method comprising performing computer-implemented operations for:
collecting data from one or more sources within the distributed execution environment regarding the operational status of
one or more components utilized to provide the instances of computing resources;

collecting data from one or more sources external to the distributed execution environment, the data collected from the one
or more sources external to the distributed execution environment being relevant to a determination of a probability of a
future failure of the instances of computing resources;

utilizing the data from the one or more sources within the distributed execution environment and the data from the one or
more sources external to the distributed execution environment to generate instance availability information, the instance
availability information comprising data identifying actual failures of the instances of computing resources, a severity of
the failures of the instances of computing resources, and a probability of the future availability of the instances of computing
resources;

providing the instance availability information to one or more users of the distributed execution environment; and
taking one or more actions with regard to one or more of the instances of computing resources based upon the instance availability
information and in response to one or more requests received from the one or more users, wherein the one or more actions comprise
at least one of migrating the one or more of the instances of computing resources from a data center into another data center,
migrating the one or more of the instances of computing resources out of the distributed execution environment, scaling up
a number of instances of computing resources or scaling down the number of instances of computing resources, or performing
one or more backup operations with respect to the one or more of the instances of computing resources.

US Pat. No. 9,781,853

DISPLAY STACK ENCLOSURE

Amazon Technologies, Inc....

1. An electronic device comprising:
a display stack including:
a coverglass with a top surface and a bottom surface opposing the top surface, the top surface being exposed to an exterior
of the electronic device;

a touch layer contacted with the bottom surface of the coverglass;
a lightguide positioned beneath the coverglass and the touch layer; and
a reflective display component positioned beneath the lightguide, the display component configured to display content;
an enclosure for housing the display stack, the enclosure including:
a housing having a bottom and a side surface, the bottom extending at least partially under the bottom surface of the coverglass
and the side surface of the housing disposed adjacent to the display stack; and

a bezel in contact with the housing, the bezel having a top portion extending outward from the side surface of the housing
a first distance and a bottom portion extending outward from the side surface of the housing a second distance, wherein the
first distance is greater than the second distance and wherein the bottom portion of the bezel is closer to the bottom of
the housing as compared to the top portion of the bezel, wherein at least a portion of the bezel extends over the top surface
of the coverglass, and wherein a portion of the bezel is configured to deform to allow the display stack to be placed within
the enclosure, wherein the bezel is formed from a first material that is more flexible as compared to one or more second materials
used for the housing.

US Pat. No. 9,730,367

SYSTEMS AND METHODS TO IMPROVE SENSOR SENSITIVITY AND RANGE IN AN ELECTRONIC COMPUTING DEVICE

AMAZON TECHNOLOGIES, INC....

1. A computing device, comprising:
a measurement component that includes at least one sensor configured to detect an object;
a first ground component, the at least one sensor being positioned proximate to the first ground component;
a second ground component, wherein the first ground component electrically couples the measurement component to ground of
the computing device and the second ground component electrically couples the measurement component to ground of the measurement
component; and

ground isolation circuitry including at least an electronic switch, the ground isolation circuitry configured to:
operate the electronic switch in a first position to electrically couple the measurement component to the second ground component
in response to receiving a signal at the ground isolation circuitry that has an amplitude that meets a threshold value, the
signal being generated by the measurement component in response to detection of the object by the at least one sensor, and

operate the electronic switch in a second position when the amplitude of the signal is less than the threshold value, to ground
the measurement component to the first ground component.

US Pat. No. 9,756,018

ESTABLISHING SECURE REMOTE ACCESS TO PRIVATE COMPUTER NETWORKS

Amazon Technologies, Inc....

1. A computer-implemented method comprising:
providing, by one or more computing systems that are part of a network service, a first computer network for a first client
of the network service based on information specified by the first client, wherein the providing of the first computer network
for the first client includes:

selecting multiple computing nodes from a plurality of computing nodes provided by the network service for use by remote clients;
provisioning the multiple computing nodes for use in the first computer network for the client; and
configuring one or more hardware devices of the network service that provide one or more of the multiple computing nodes to
route communications for the first computer network according to a network topology specified for the first computer network
by the first client;

receiving, by the one or more computing systems and via an interface of the network service for use by the remote clients
to configure remote access to computer networks provided by the network service for the remote clients, a request to configure
a secure connection between a first remote location and the first computer network provided by the network service for the
first client; and

responding, by the one or more computing systems, to the received request by providing configuration information that causes
one or more devices of the first client at the first remote location to participate in the secure connection for the first
computer network.

US Pat. No. 9,756,059

TOKEN BASED AUTOMATED AGENT DETECTION

Amazon Technologies, Inc....

1. A computer-implemented method comprising:
determining that a solution to a security check was submitted by an automated agent based at least in part on a first signature
associated with the solution being a member of a set of signatures;

transmitting a cookie in response to the solution;
receiving a plurality of requests individually including the cookie, where at least a subset of the plurality of requests
are associated with one or more other signatures of the set of signatures and the one or more other signatures are different
from the first signature;

detecting automated agent activity based at least in part on the subset of the plurality of requests associated with the one
or more other signatures; and

updating an automated agent detection model based at least in part on the first signature and the one or more other signatures.

US Pat. No. 9,397,727

SLOT ANTENNA AND NFC ANTENNA IN AN ELECTRONIC DEVICE

Amazon Technologies, Inc....

5. An electronic device comprising:
a circuit board comprising a transceiver and a ground plane;
a first radio frequency (RF) feed electrically coupled to the transceiver;
a near field communication (NFC) antenna coupled to the first RF feed, the NFC antenna configured to radiate electromagnetic
energy in a first frequency band in response to a first electrical current applied at the first RF feed;

a metal body electrically coupled to the ground plane and proximally located relative to the NFC antenna, the metal body comprising
a first arm member and a second arm member; and

an antenna including a slot opening formed by the first arm member and the second arm member of the metal body, the antenna
comprising:

a second RF feed electrically coupled to the transceiver, and
a capacitive element electrically coupling the first arm member and the second arm member of the metal body, the antenna to
radiate electromagnetic energy in a second frequency band in response to a second electrical current applied at the second
RF feed.

US Pat. No. 9,280,390

DYNAMIC SCALING OF A CLUSTER OF COMPUTING NODES

Amazon Technologies, Inc....

1. A computer-implemented method comprising:
initiating, by a configured computing system of a program execution service, distributed execution of an indicated program
on a cluster of multiple computing nodes, wherein a first subset of the multiple computing nodes is used for a first type
of processing for the cluster, and wherein a second subset of the multiple computing nodes is used for a distinct second type
of processing for the cluster that includes providing distributed storage for data used during the execution of the indicated
program on the cluster;

determining, by the configured computing system and while execution of the indicated program is ongoing, to modify the multiple
computing nodes in the cluster, including selecting to modify a quantity of computing nodes of the second subset to provide
a change in an amount of the distributed storage; and

initiating, by the configured computing system and based on the determining, a change in the quantity of the computing nodes
of the second subset while the execution of the indicated program is ongoing to provide the change in the amount of the distributed
storage, by adding one or more additional computing nodes to the second subset to increase the amount of the distributed storage.

US Pat. No. 9,781,859

CABLE ROUTING FOR MOVABLE TRAYS

Amazon Technologies, Inc....

1. A rack comprising:
a power distribution unit located at a front of the rack;
an appliance comprising at least one of a server or a network hardware component, the appliance having a power supply unit
located at a front of the appliance, the front of the appliance and the front of the rack facing the same direction;

a tray slidable into and out of the front of the rack between an extended position and a stowed position, the tray carrying
or forming part of the appliance such that (a) the appliance is accessible from outside the front of the rack for servicing
when the tray is in the extended position, and (b) the appliance is positioned at least partially within the rack in the stowed
position;

a cable connecting the power supply unit of the appliance with the power distribution unit, the cable having a length sufficient
for reaching between the power supply unit of the appliance and the power distribution unit when the tray is in the extended
position;

an elongated cavity extending along a lateral side of the tray and having a front facing the same direction as the front of
the appliance and the front of the rack; and

a retractor configured to pull the cable in through the front of the cavity in response to the tray sliding towards the stowed
position, wherein in each of the extended position and the stowed position, the retractor is located at least partially in
the elongated cavity extending along the lateral side of the tray.

US Pat. No. 9,756,023

TOKEN-BASED SECURE DATA MANAGEMENT

Amazon Technologies, Inc....

1. A system, comprising at least one computing device configured to implement one or more services, wherein the one or more
services:
generates a token for sensitive user data, the token identifying a data type of the sensitive user data;
stores the sensitive user data to a first data storage service and nonsensitive data related to the sensitive data to a second
data storage service;

provides, to a first entity, the token and the nonsensitive data, the token provided in place of the sensitive user data;
receives a request for the sensitive user data from a second entity, the request including the token;
identifies a set of sensitive user data from secure data stored in the first data storage service, individual sensitive user
data items of the set of sensitive user data having a data type that matches the data type identified by the token;

generates a hash for individual sensitive user data items in the set of sensitive user data; and
provides the hash for the individual sensitive user data items in the set of sensitive user data to an entity not authorized
to receive the sensitive user data associated with the set of sensitive user data.

US Pat. No. 9,756,058

DETECTING NETWORK ATTACKS BASED ON NETWORK REQUESTS

Amazon Technologies, Inc....

1. A computer-implemented method, comprising:
generating, by a computer system, a network-based document configured for direct access from client devices, the direct access
comprising access by the client devices independent of a redirection to the network-based document via a proxy computing device;

updating, by the computer system, a network-based resource to cause a client device of the client devices to access the network-based
document, the network-based resource comprising the network-based document;

providing, to the client device, access to the network-based resource based at least in part on a domain name system record
associated with a domain of the network-based document, the domain name system record stored at a computing resource of an
Internet service provider;

recording, by the computer system, information associated with the client device accessing the network-based document, the
information comprising a request from the client device to access the network-based document based at least in part on the
access to the network-based resource;

determining that the client device accessed the network-based document based at least in part on an unauthorized redirection
via the proxy computing device, the unauthorized redirection determined based at least in part on the request from the information;

updating a number of determined unauthorized redirections of the client devices to the network-based document based at least
in part on the unauthorized redirection of the client device;

detecting an unauthorized change to the domain name system record at the computing resource of the Internet service provider
based at least in part on the number of determined unauthorized redirections; and

initiating a corrective action based at least in part on the unauthorized change to the domain name system record, the corrective
action comprising a notification of the unauthorized change, an analysis of data associated with accesses of the client devices
to the network-based document and with the access of the client device to the network-based document, and an identification
that the domain name system record has been altered based at least in part on the analysis.

US Pat. No. 9,756,050

USING TRANSIENT PROCESSING CONTAINERS FOR SECURITY AUTHORIZATION

Amazon Technologies, Inc....

1. A system, comprising:
at least one processor; and
memory including instructions that, when executed by the at least one processor, cause the system to:
receive, from a customer, a request for access to a resource in an electronic environment, the electronic environment being
provided at least in part by a resource provider, the customer having an account with the resource provider;

determine, based at least in part on information from the request, a policy corresponding to the request;
determine, using the policy, an authorization function to be used in making an authorization decision for the request, the
authorization function provided by the customer;

determine an instance of compute capacity, in the electronic environment, to be used in executing the authorization function;
allocate, by the resource provider, the instance of compute capacity on behalf of the customer;
cause the instance of compute capacity to generate the authorization decision using the authorization function and context
for the request, the context determined based at least in part upon the information from the request;

receive, from the instance of compute capacity, the authorization decision, the authorization decision indicating that the
request for access is authorized;

cause the access to the resource to be provided for the request; and
de-allocate the instance of compute capacity.

US Pat. No. 9,355,636

SELECTIVE SPEECH RECOGNITION SCORING USING ARTICULATORY FEATURES

Amazon Technologies, Inc....

1. A system comprising:
a computer-readable memory storing executable instructions; and
one or more processors in communication with the computer-readable memory, wherein the one or more processors are programmed
by the executable instructions to at least:

obtain audio data regarding an utterance of a user;
compute a feature vector for a portion of the audio data;
determine a first score indicating that the portion of the audio data corresponds to a first articulatory feature;
determine a second score indicating that the portion of audio data corresponds to a second articulatory feature;
determine whether the first score exceeds a first threshold associated with at least one of a plurality of acoustic models;
determine whether the second score exceeds a second threshold associated with at least one of the plurality of acoustic models;
identify an acoustic model of a plurality of acoustic models, wherein the acoustic model is associated with the first articulatory
feature and the second articulatory feature, and wherein the first score exceeds the first threshold and the second score
exceeds the second threshold;

compute, using the acoustic model, a feature vector score for the feature vector; and
generate automatic speech recognition results based at least on the feature vector score, wherein the automatic speech recognition
results comprise one or more transcriptions corresponding to the utterance.

US Pat. No. 9,326,404

ELECTRONIC DEVICE COVER

Amazon Technologies, Inc....

1. A system comprising:
an electronic device comprising:
a display;
a first Hall effect sensor disposed in a first corner of the electronic device; and
a second Hall effect sensor disposed in a second corner of the electronic device; and
a cover coupled to the electronic device, the cover comprising:
a flap coupled to the electronic device by a flexible hinge, the flap configured to cover the display of the electronic device
when the cover is in a closed position, the flap comprising:

a first magnet disposed proximate a first corner of the flap and aligned with the first Hall effect sensor when the cover
is in the closed position; and

a second magnet disposed proximate a second corner of the flap and aligned with the second Hall effect sensor when the cover
is in the closed position,

wherein the electronic device is configured to:
in response to detecting, by the first Hall effect sensor, lifting of the first magnet in the first corner of the flap, display
first information on at least a first portion of the display of the electronic device, and

in response to detecting, by the second Hall effect sensor, lifting of the second magnet in the second corner of the flap
while the first corner of the flap is covering the first portion of the display, display second information, different than
the first information, on at least a second portion of the display of the electronic device.

US Pat. No. 9,294,988

CREATING A PREFERRED PLMN LIST FOR FASTER SERVICE ACQUISITION

Amazon Technologies, Inc....

1. A method comprising:
receiving, by a processing device from a plurality of user devices, network data identifying one or more networks available
to provide roaming service to at least one of the plurality of user devices at one or more geographical locations associated
with the plurality of user devices;

determining, by the processing device, one or more identifiers, wherein each identifier is associated with a corresponding
network of the one or more networks from the network data;

generating, by the processing device, a list of preferred networks associated with a first geographic location of the one
or more geographical locations, the list comprising the one or more identifiers of the one or more networks; and

sending, by the processing device, the list of preferred networks to a first user device of the plurality of user devices,
the first user device being located at the first geographic location.

US Pat. No. 9,134,809

BLOCK-BASED NAVIGATION OF A VIRTUAL KEYBOARD

Amazon Technologies Inc.,...

1. A device comprising:
a display;
one or more processors operatively coupled to the display;
a keyboard component executed on the one or more processors for presenting a virtual keyboard on the display, the virtual
keyboard including a plurality of selectable keys, the keys being grouped into a plurality of contiguous blocks, each block
including a plurality of adjacently positioned keys;

a first control separate from the display, the first control activatable for producing a first type of keyboard control input
for navigating a focus between a key of a first block of the plurality of contiguous blocks to a centrally located key of
a second block of the plurality of contiguous blocks; and

a second control, separate from the display and the first control, the second control activatable for producing a second type
of keyboard control input for navigating the focus between individual keys of the blocks;

wherein the keyboard component is configured to present one or more suggested words based, at least in part, on the plurality
of selectable keys contained in a particular block in which the focus is currently located.

US Pat. No. 9,123,069

MOVING TRANSACTION DETAILS FORWARD IN BUYING PROCESS

Amazon Technologies, Inc....

1. A method implemented at least partially by a computing device, the method comprising:
presenting an item detail page associated with an item available for purchase;
generating by the computing device, without first completing a transaction to purchase the item available for purchase, a
preview queue of items from previous purchase requests, the previous purchase requests including previously completed transactions,
the preview queue of items also including the item available for purchase as if the transaction to purchase the item available
for purchase were one of the previously completed transactions, the preview queue of items including a preview fully landed
cost, the preview fully landed cost including a fully landed cost associated with the previously completed transactions, the
preview fully landed cost also including at least one or more costs associated with the item available for purchase;

causing presentation, by the computing device, of the preview queue of items on the item detail page, the preview queue of
items including the preview fully landed cost; and

causing presentation of a purchase interface on the item detail page selectable to purchase the item available for purchase.

US Pat. No. 9,081,578

SYSTEM AND METHOD FOR GRAPH CONDITIONING WITH NON-OVERLAPPING ORDERABLE VALUES FOR EFFICIENT GRAPH EVALUATION

Amazon Technologies, Inc....

1. A computer-implemented method, comprising:
performing one or more transformations on a subgraph comprising logical operations and associated primitives of one or more
classes, wherein respective primitives of the common class represents respective geographic regions, to generate a second
logically equivalent subgraph that also includes logical operations and associated primitives, wherein the one or more transformations
are performed such that, for a given logical operation of the second subgraph, a partially-ordered plurality of child primitives
of a common class are transformed into a logically-equivalent totally-ordered set of non-overlapping geographic regions, wherein
the one or more transformations comprises:

transforming the logical operation of the partially-ordered plurality of geographic regions of a common class into a logically-equivalent
partially-ordered set of the plurality of geographic regions, wherein at least two of the geographic regions overlap,

transforming the partially-ordered set of the plurality of geographic regions into a logically-equivalent plurality of sets,
where a given set of the plurality of sets is a set of a separate geographic region of the plurality of geographic regions
and at least two sets comprise overlapping geographic regions; and

transforming the plurality of sets into a logically-equivalent totally-ordered set of non-overlapping geographic regions,
wherein the transforming comprises:

iteratively inserting respective geographic regions of the plurality of sets, into the single set, in increasing order,
wherein iteratively inserting the at least two overlapping geographic regions into the single set comprises performing one
or more union operations on the at least two overlapping geographic regions to generate at least one orderable geographic
region and inserting the at least one orderable geographic region into the single set in place of the at least two overlapping
geographic regions;

wherein dependent on the given logical operation's complexity, a requisite time to perform a search operation for a geographic
location within the totally-ordered set of non-overlapping geographic regions is less than the requisite time to perform the
given logical operation on the geographic regions.

US Pat. No. 9,787,825

CYCLICALLY VARIABLE SIGNAL DELAYS FOR ACOUSTIC ECHO CANCELLATION

Amazon Technologies, Inc....

1. A method for audio conferencing between a near-end site and a far-end site, comprising:
receiving first and second far-end audio signals, wherein the first far-end audio signal comprises a representation of first
sound received by a first microphone at the far-end site and the second far-end audio signal comprises a representation of
second sound received by a second microphone at the far-end site, the first sound and the second sound being produced by a
far-end conference participant at the far-end site, each of the first and second far-end audio signals comprising a sequence
of signal values corresponding to an audio sample rate, the audio sample rate corresponding to a sample period;

producing a first delayed audio signal having signal values corresponding respectively to the signal values of the first far-end
audio signal, the first delayed audio signal comprising a delayed representation of the first sound, the delayed representation
of the first sound being delayed by a first delay amount relative to the representation of the first sound by the first far-end
audio signal;

producing a second delayed audio signal having signal values corresponding respectively to the signal values of the second
far-end audio signal, the second delayed audio signal comprising a delayed representation of the second sound, the delayed
representation of the second sound being delayed by a second delay amount relative to the representation of the second sound
by the a second far-end audio signal;

oscillating the first delay amount, using one or more first finite impulse response (FIR) filters, between lower and upper
limits by a step amount, wherein the step amount is a fraction of the sample period;

oscillating the second delay amount, using one or more second FIR filters, between the upper and lower limits by the step
amount in opposition to the oscillating of the first delay amount;

producing the delayed representation of the first sound using a first loudspeaker, wherein the first loudspeaker is at the
near-end site;

producing the delayed representation of the second sound using a second loudspeaker, wherein the second loudspeaker is at
the near-end site;

producing a near-end audio signal using a near-end microphone, the near-end microphone being at the near-end site, wherein
the near-end audio signal represents near-end sound comprising (a) sound produced by a near-end conferencing participant at
the near-end site, (b) the delayed representation of the first sound produced using the first loudspeaker, and (c) the delayed
representation of the second sound produced using the second loudspeaker; and

processing the near-end audio signal with an acoustic echo canceller to at least partially cancel the delayed representations
of the first and second sounds from the near-end audio signal based at least in part on the first far-end audio signal and
the second audio signal.

US Pat. No. 9,355,134

FACILITATING DATA REDISTRIBUTION IN DATABASE SHARDING

Amazon Technologies, Inc....

1. A non-transitory computer-readable medium embodying a program executable in a computing device, wherein when executed the
program causes the computing device to at least:
maintain a database that is stored in a plurality of physical data stores through horizontal partitioning, the database including
a plurality of data items;

assign individual ones of the plurality of data items to individual ones of a plurality of first buckets by generating a respective
hash code from a standardized portion of the individual one of the plurality of data items and determining the respective
hash code modulo the number of the plurality of first buckets, wherein a first fixed number of the plurality of first buckets
are stored in corresponding ones of the plurality of physical data stores according to a mapping;

reassign the individual ones of the plurality of data items to individual ones of a plurality of second buckets by determining
the respective hash code modulo the number of the plurality of second buckets, the number of the plurality of second buckets
being a multiple of the number of first buckets in the plurality of first buckets, a multiple of a current number of physical
data stores, and a multiple of an increased number of physical data stores; and

update the mapping to map a second fixed number of the plurality of second buckets to corresponding ones of the plurality
of physical data stores, wherein the plurality of data items are unmoved between the plurality of physical data stores by
updating the mapping.

US Pat. No. 9,107,164

WAKE ON ONE-TO-MANY COMMUNICATION

Amazon Technologies, Inc....

1. A network device, comprising:
a first processor;
a second processor;
a wireless transceiver under control of the second processor and configured to communicate wirelessly with another device;
one or more computer-readable media maintaining one or more signatures and a wake-up module executable by the second processor
to:

receive a multicast wireless communication while the first processor is in a low-power sleep mode, the multicast wireless
communication comprising a header portion and a data portion;

determine the multicast wireless communication is a service discovery request and the data portion of the multicast wireless
communication includes one of one or more signatures; and

cause the first processor to leave the low-power sleep mode and process the multicast wireless communication in response to
determining the multicast wireless communication is a service discovery request and the data portion of the multicast wireless
communication includes one of the one or more signatures.

US Pat. No. 9,329,679

PROJECTION SYSTEM WITH MULTI-SURFACE PROJECTION SCREEN

Amazon Technologies, Inc....

1. A system comprising:
a projection screen to present images projected thereon, the projection screen having at least a first surface and a second
surface;

a projection system comprising:
a memory;
a processor;
a projector;
a surface detection component to:
determine a first rate at which the projection screen is adjusted such that the first surface is oriented towards the projector;
and

determine a second rate at which the projection screen is adjusted such that the second surface is oriented towards the projector,
the second rate being different from the first rate; and

the projector to:
project one or more first images onto the first surface of the projection screen based at least in part on the first rate;
and

project one or more second images onto the second surface of the projection screen based at least in part on the second rate,
wherein the one or more first images projected onto the first surface present first content and the one or more second images
projected onto the second surface present second content different from the first content.

US Pat. No. 9,471,353

ISOLATING TENANTS EXECUTING IN MULTI-TENANT SOFTWARE CONTAINERS

Amazon Technologies, Inc....

1. A non-transitory computer-readable storage medium having computer-executable instructions stored thereupon which, when
executed by a computer, cause the computer to:
execute a plurality of tenants in a multi-tenant software container; and
implement one or more mechanisms for preventing a fault caused by one of the tenants of the multi-tenant software container
from impacting another tenant of the multi-tenant software container, the mechanisms comprising one or more of

preventing the tenants that issue a shutdown request from shutting down the software container, a virtual machine, an operating
system, or a host computer,

limiting a number of versions of individual ones of the tenants executing in the software container,
preventing two of the plurality of tenants in the multi-tenant software container from utilizing the same identifier, or
making objects passed between the tenants immutable.

US Pat. No. 9,363,926

MODULAR MASS STORAGE SYSTEM WITH STAGGERED BACKPLANES

Amazon Technologies, Inc....

1. A system for storing data, comprising:
a rack; and
one or more data storage modules coupled to the rack, at least one of the data storage modules comprising:
a chassis, having an inlet end and an exhaust end, that at least partially encompasses a chassis interior;
two or more backplanes coupled to the chassis in a staggered configuration, such that a particular one of the backplanes that
is coupled to the chassis proximate to the inlet end is elevated relative to another one of the backplanes that is coupled
to the chassis proximate to the exhaust end;

one or more mass storage devices coupled to at least one of the backplanes;
an inlet air plenum extending beneath at least one of the backplanes in the chassis interior from the inlet end to the exhaust
end, wherein the inlet air plenum is progressively narrowed from the inlet end to the exhaust end and is configured to enable
an inlet airflow, of air that has been received into the chassis interior, from the inlet end to at least one of the two or
more backplanes to remove heat from at least one of the mass storage devices; and

an exhaust air plenum extending above at least one of the backplanes in the chassis interior from the inlet end to the exhaust
end, wherein the exhaust air plenum is progressively expanded from the inlet end to the exhaust end and is configured to enable
an exhaust airflow, of air that has removed heat from at least one of the mass storage devices, from the at least one of the
mass storage devices to exit the chassis interior through the exhaust end.

US Pat. No. 9,299,346

SPEECH RECOGNITION PLATFORMS

Amazon Technologies, Inc....

1. A system comprising:
a coordination component configured to receive an audio signal generated based at least in part on sound from an environment,
the sound captured by a device that includes a microphone unit and a speaker and the audio signal including speech of a user
in the environment;

a speech recognition component configured to perform speech recognition on the audio signal to generate speech-recognition
results;

a natural language understanding (NLU) component configured to: identify, for different domains, multiple intents associated
with the speech of the user based at least in part on the speech-recognition results and context information associated with
the speech of the user, wherein identify the multiple intents includes to provide the speech-recognition results to the different
domains, and to identify the multiple intents based at least in part on named entities identified from the different domains
and one or more slots filled based at least in part on the context information, and rank the multiple intents for the different
domains relative to one another;

a dialog component configured to select one of the domains based at least in part on the ranked intents and select one of
the ranked intents that is associated with the selected domain; and

a response component configured to receive an indication of the selected domain and an indication of the selected intent and
cause performance of an action corresponding to the selected intent, the action including providing an audio signal for output
on the speaker of the device.

US Pat. No. 9,471,352

CAPABILITY BASED PLACEMENT

Amazon Technologies, Inc....

1. A method, implemented at least in part by one or more computing devices, supporting capability based placement of virtual
machine instances, the method comprising:
for each of a plurality of virtual machine slots located on a server computer:
receiving detailed characteristics for the virtual machine slot, the detailed characteristics comprising one or more of: detailed
software characteristics and detailed hardware characteristics associated with the server computer;

based on the received detailed characteristics, determining one or more capability tags for the virtual machine slot, wherein
the one or more capability tags describe higher-level capabilities of the virtual machine slot than the detailed characteristics,
and wherein at least one of the one or more capability tags is an aggregate capability tag that is determined from a plurality
of detailed characteristics; and

storing the determined one or more capability tags in association with the virtual machine slot, wherein the one or more capability
tags are used when determining instance placement;

wherein the one or more capability tags are determined and stored in association with the virtual machine slot independent
of capability tags determined and stored in association with other virtual machine slots of the server computer.

US Pat. No. 9,280,234

INPUT CORRECTION FOR TOUCH SCREENS

AMAZON TECHNOLOGIES, INC....

1. A method of associating touch inputs on a touch screen device to displayed user interface elements, the method comprising:
identifying an inner region of a touch target corresponding to a user interface element displayed on a screen of the touch
screen device, wherein an area of the inner region corresponds to pixels of the displayed user interface element;

identifying an extended region of the touch target, wherein the extended region extends beyond the inner region of the touch
target;

detecting a touch input on the screen;
determining that a center of the touch input is outside the inner region but within the extended region;
determining a viewing angle of the screen relative to a user;
determining, using the viewing angle and the touch input, a potential location of the touch input had the viewing angle been
different;

determining a distance between a center of the touch input and the potential location;
calculating a score for the touch input based at least in part on the distance and based at least in part on a context of
the touch input, wherein the score represents a likelihood that the touch input should be associated with the touch target;
and

associating the touch input with the touch target based at least in part on the score.

US Pat. No. 9,172,791

NOISE ESTIMATION ALGORITHM FOR NON-STATIONARY ENVIRONMENTS

Amazon Technologies, Inc....

1. A system comprising:
a speaker configured to produce sound using an audio playback signal;
a microphone configured to detect the produced sound as a microphone signal;
one or more processors in communication with the speaker and the microphone, the one or more processors configured to:
determine an estimated echo using the audio playback signal and a variable step size, the variable step size depending on
whether near-end speech is present in the microphone signal;

determine an estimated error using the estimated echo and the microphone signal;
update the variable step size using the estimated error and the microphone signal;
estimate a noise level of the microphone signal using the updated variable step size;
perform noise reduction on the microphone signal using the estimate of the noise level, wherein the variable step size is
determined using an average power of the audio playback signal, an average power of the microphone signal, and an average
power of the estimated error, and wherein determining the variable step size comprises:

determining a numerator using the average power of the audio playback signal and the average power of the microphone signal;
determining a denominator using the average power of the audio playback signal, the average power of the microphone signal,
and the average power of the estimated error; and

dividing the numerator by the denominator to determine the variable step size.

US Pat. No. 9,148,414

CREDENTIAL MANAGEMENT IN A MULTI-TENANT ENVIRONMENT

Amazon Technologies, Inc....

1. A computer-implemented method of managing credentials for a customer of a multi-tenant environment, comprising:
receiving a communication to be delivered to a specified destination in a multi-tenant environment, the specified destination
associated with at least one resource in the multi-tenant environment accessible under an account of a customer of the multi-tenant
environment;

authenticating an association of the communication with the customer;
adding a signature to the communication, the signature based at least in part upon a credential associated with the customer;
determining context information based at least in part upon a policy specified by the customer;
inserting the context information in a metadata portion of the received communication to be delivered to the specified destination
in the multi-tenant environment, the signature and the context information necessary for the communication to be determined
to be a valid communication for purposes of accessing the at least one resource under the account of the customer; and

forwarding the communication with the signature and the identifying information to the specified destination.

US Pat. No. 9,299,320

PROVIDING VISUAL FEEDBACK ON A DISPLAY

Amazon Technologies, Inc....

1. An electronic device comprising:
a reflective display configured to present a first page of a content item;
a lightguide positioned above the reflective display configured to direct light toward the reflective display;
first and second adjacent light sources positioned at one or more edges of the lightguide, each light source configured to
provide light to a portion of the lightguide;

a light source controller configured to control the first and second light sources independent of each other;
one or more processors;
memory, accessible by the one or more processors; and
one or more modules maintained in the memory, which when executed by the one or more processors cause the one or more processors:
receive an input to present a second page of the content item on the reflective display; and
send instructions, based at least in part on the received input, to the light source controller instructing the light source
controller to, in a pre-determined order, one of raise or lower an amount of current provided to the first light source and
the other of raise or lower an amount of current provided to the second light source.

US Pat. No. 9,473,516

DETECTING NETWORK ATTACKS BASED ON A HASH

Amazon Technologies, Inc....

1. A computer-implemented method, comprising:
providing, by a computer system to a client device, a network-based document comprising an annotated portion and an object,
the object configured to cause the client device to hash the annotated portion of the network -based document based at least
in part on an access of the client to the network-based document over a data network, the access facilitated based at least
in part on a domain name system record of the network-based document, the domain name system record available from a recursive
name server of an Internet service provider;

receiving, from the client device, a client hash of the annotated portion of the network-based document based at least in
part on an instantiation of the object by the client device;

generating, by the computer system, a trusted hash based at least in part on hashing a trusted version of the annotated portion
of the network-based document;

comparing, by the computer system, the client hash and the trusted hash;
determining, based at least in part on the comparing, that the access of the client device to the network-based document involved
an unauthorized redirection to the network-based document through the data network;

generating a flag indicative of the unauthorized redirection;
determining whether a number of unauthorized redirections through the data network exceeds a threshold based at least in part
on the flag; and

determining that the domain name system record of the network-based document available from the recursive name server of the
Internet service provider has been altered based at least in part on the number of unauthorized redirections exceeding the
threshold.

US Pat. No. 9,424,548

TRANSLATION OF DESTINATION IDENTIFIERS

Amazon Technologies, Inc....

1. A system, comprising:
at least one computing device; and
at least one application executable in the at least one computing device, wherein when executed the at least one application
causes the at least one computing device to at least:

receive an input comprising a destination identifier, the destination identifier corresponding to a single intended recipient;
verify the destination identifier by applying a verification algorithm to a first portion of the destination identifier and
comparing a result of the verification algorithm to a second portion of the destination identifier;

translate the destination identifier into a geographic address based at least in part on a stored mapping; and
cause the geographic address to be rendered in a user interface.

US Pat. No. 9,294,558

CONNECTION RE-BALANCING IN DISTRIBUTED STORAGE SYSTEMS

Amazon Technologies, Inc....

1. A system, comprising:
one or more computing devices configured to:
collect, at a particular access subsystem node of a distributed multi-tenant file storage service to which one or more connections
have been established by one or more load balancer nodes on behalf of one or more clients of the service, respective workload
indicators from a selected set of peer nodes of the access subsystem;

determine, at the particular access subsystem node, that (a) a local workload metric exceeds a connection rebalancing threshold,
and (b) a peer capacity availability criterion has been met, wherein the peer capacity availability criterion is based at
least in part on the respective workload indicators;

select, at the particular access subsystem node, a particular connection of the one or more connections to be closed, wherein
the particular connection was established on behalf of a particular client of the one or more clients;

initiate a closing of the particular connection from the particular access subsystem node; and
establish, from a particular load balancer node of the one or more load balancer nodes, a connection to a different access
subsystem node on behalf of the particular client.

US Pat. No. 9,201,612

UTILIZING SHARED STORAGE FOR EFFICIENT VM-HA

Amazon Technologies, Inc....

1. A non-transitory computer-readable storage medium having computer-executable instructions stored thereon that, when executed
by a computer, cause the computer to:
receive a request from a primary virtual machine to write a page of guest memory to a storage device, the page of guest memory
being marked as dirty in a memory page map associated with the primary virtual machine, wherein a state of the primary virtual
machine is being replicated with a replicated virtual machine running on a secondary host computer;

upon receiving the request and queuing an operation to write the page of guest memory to a location on the storage device,
mark the page of guest memory as synchronized-with-disk in the memory page map;

record replication metadata indicating the location of the page of guest memory on the storage device;
send the replication metadata to the secondary host computer, the replication metadata being usable by the secondary host
computer to retrieve the page of guest memory from the storage device and synchronize the state of the replicated virtual
machine with the primary virtual machine using the retrieved page of guest memory; and

mark the page of guest memory as clean in the memory page map.

US Pat. No. 9,098,822

OPTIMIZATION OF PACKAGING SIZES

Amazon Technologies, Inc....

1. A non-transitory computer-readable medium embodying a program executable in a computing device, the program comprising:
code that retrieves a current packaging suite, the current packaging suite comprising a plurality of different packaging dimensions
associated with a plurality of respective three-dimensional bounding boxes;

code that retrieves a shipment history corresponding to a materials handling facility over a historical period of time, the
shipment history specifying a plurality of shipments shipped from the materials handling facility during the historical period
of time, each of the plurality of shipments corresponding to at least one item;

code that determines a cost associated with the current packaging suite by applying a cost function to the current packaging
suite and the shipment history, the cost based at least upon a shipment cost and a packaging materials cost associated with
a selection of three-dimensional bounding boxes from the current packaging suite usable to package and ship the plurality
of shipments, the packaging materials cost based at least upon a material cost associated with an amount of material needed
to construct the selection of three-dimensional bounding boxes, a fill material cost associated with each of the plurality
of shipments, and a shipping cost associated with the selection of three-dimensional bounding boxes, the fill material cost
based at least upon a volume of at least one item associated with a respective shipment;

code that generates a plurality of adjusted packaging suites by modifying at least one of the plurality of packaging dimensions
by at least a minimum adjustment threshold;

code that applies the cost function to the plurality of adjusted packaging suites and the shipment history;
code that determines whether the plurality of adjusted packaging suites yields a lower cost relative to the current packaging
suite; and

code that, in response to receiving an order, initiates fulfillment of the order by instructing a machine to retrieve at least
one item from the order and initiates shipment of the at least one item to a destination in one of the respective plurality
of three-dimensional bounding boxes.

US Pat. No. 9,407,569

PROVIDING NOTIFICATION OF COMPUTING RESOURCE AVAILABILITY FOR ON-DEMAND ALLOCATION

Amazon Technologies, Inc....

1. A computer-implemented method, comprising:
receiving a request for computing resources of a service provider system from a requesting application;
determining that the requested computing resources are not currently available;
determining suitable alternative computing resources based, at least in part, on a resource utilization history for a user
associated with the request to attempt to satisfy the request, wherein the suitable alternative computing resources comprise
computing resources of at least one of a different size, a different type, or a different quantity from the requested computing
resources;

determining that the suitable alternative computing resources are not currently available;
monitoring the availability of the requested computing resources and the suitable alternative computing resources in the service
provider system to determine that the requested computer resources or the suitable alternative computing resources are available;
and

based at least in part on to determining that the requested computer resources or the suitable alternative computing resources
are available, sending a resource availability notification to the requesting application indicating that the requested computing
resources or the suitable alternative computing resources have become available, wherein the requesting application allocates
the requested computing resources or the suitable alternative computing resources indicated in the resource availability notification
from the service provider system in response to receiving the resource availability notification.

US Pat. No. 9,373,049

STRAIGHT LINE GESTURE RECOGNITION AND RENDERING

Amazon Technologies, Inc....

1. An electronic device comprising:
a processor;
an electronic paper display coupled to the processor and configured to display at least one of frames of text or graphics
at a frame rate;

a touch sensor configured to receive touch input through a surface;
a recording module that, when executed by the processor, records gesture data corresponding to a gesture received by the touch
sensor, the gesture data including a first location of the surface touched at a first time and a second location of the surface
touched at a second time; and

an animation module that, when executed by the processor:
determines a user profile associated with the electronic device;
determines that the gesture was intended to approximate a straight line utilizing a bounding box and one or more thresholds,
one or more characteristics of the bounding box being determined based at least in part on an end point of the gesture data,
the end point being determined based at least in part on at least one of a location associated with a set of gesture points
that correspond to an end of the gesture or ignoring a preset number of gesture points at the end of the gesture, the straight
line being determined based at least in part on a gesture profile associated with the user profile, wherein the straight line
is different than the gesture data;

determines a sequence of frame updates, a frame update of the sequence of frame updates including at least a part of one of
the gesture data or other data associated with the straight line based on at least one of a time at which a particular location
was touched, a time interval in which the gesture was received, or the frame rate; and

provides the sequence of frame updates for sequential updating of the electronic paper display over a different time interval
that approximates the time interval in which the gesture was received.

US Pat. No. 9,160,548

MINING OF USER EVENT DATA TO IDENTIFY USERS WITH COMMON INTERESTS

Amazon Technologies, Inc....

1. A computer-implemented method of matching users to user communities, the method comprising:
for each of a plurality of users of an electronic catalog, storing event data representing user-generated events that reflect
user affinities for particular items represented in the electronic catalog;

storing information about a plurality of user communities, each of which corresponds to a respective subset of the plurality
of users and comprises multiple users;

identifying a first plurality of items that characterize item preferences of a first user community of the plurality of user
communities;

calculating a degree to which the first plurality of items are related to a set of items in the electronic catalog identified
by the first user; and

based at least in part on the degree, determining whether to suggest the first user community to the first user;
wherein the method is performed by one or more computers.

US Pat. No. 9,152,808

ADAPTING DECOY DATA PRESENT IN A NETWORK

Amazon Technologies, Inc....

1. A non-transitory computer-readable medium embodying a program executable in at least one computing device, the program
comprising:
code that obtains policy data specifying decoy data eligible to be retrieved from a data store and further specifying at least
one threshold associated with accessing the data store;

code that obtains, via a network, a response to an access of the data store, the response comprising the decoy data among
a plurality of non-decoy data, the access being made by a user of a client application;

code that detects the decoy data in the response based at least upon the policy data, the decoy data being inserted in the
response to the access of the data store;

code that determines authorization for the user based at least in part upon the access of the data store meeting the at least
one threshold;

code that modifies the decoy data when the access by the user is authorized, wherein the modified decoy data is used to trace
the response traversing the network without generating an alarm;

code that interrupts delivery of the response to the client application when the access by the user is unauthorized; and
code that generates a log of the access and the decoy data detected.

US Pat. No. 9,372,516

BUILDING LEVEL DEHUMIDIFICATION AND COOLING

Amazon Technologies, Inc....

1. A system for cooling heat producing components in a building, comprising:
a duct of a cooling system of the building coupled to a room of the building, wherein the duct is configured to direct air
through at least a portion of the cooling system of the building, and wherein the duct comprises one or more venturi sections;
and

one or more air moving devices,
wherein at least one of the air moving devices is configured to move air through at least one of the venturi sections of the
duct such that at least a portion of water in the air is converted from water vapor to water droplets,

wherein at least a portion of the water droplets are carried downstream from the at least one venturi section in a two-phase
mixture comprising air and water.

US Pat. No. 9,313,302

STATELESS PACKET SEGMENTATION AND PROCESSING

Amazon Technologies, Inc....

1. A computer-implemented method, comprising:
under control of one or more computer systems configured with executable instructions,
receiving an initial set of Ethernet frames, at least some frames of the initial set of Ethernet frames including segments
having virtualization information;

extracting the virtualization information from the segments;
determining that a predetermined number of Ethernet frames including segments having virtualization information have been
received;

reassembling header data using the virtualization information; and
desegmenting the received segments for processing.

US Pat. No. 9,134,528

METHOD OF MANUFACTURING AN OPTICAL DISPLAY

Amazon Technologies, Inc....

1. A method of using a first fluid and a second fluid for providing the first fluid on a surface of a substrate for manufacturing
an electrowetting device, the method including:
immersing part of the substrate in the second fluid, the surface of the substrate having at least one first area with a greater
wettability for the first fluid than for the second fluid, the second fluid being immiscible with the first fluid, and a surface
of the second fluid adjoining the surface of the substrate to form a gutter along the surface of the substrate;

providing a quantity of the first fluid in the gutter; and
moving the gutter along the surface of the substrate, the surface of the substrate and a horizontal plane forming an angle
between 100 degrees and 170 degrees.

US Pat. No. 9,918,412

COOLING AIR STACK FOR COMPUTER EQUIPMENT

Amazon Technologies, Inc....

1. A method of cooling rack mounted computers in a computer room, comprising:
moving air through one or more computers in a rack system;
directing, via a stack, the air away from the rack system to an opening in a ceiling of the computer room such that the air
exiting the rack system is at least partially segregated from ambient air in the computer room by the stack;

directing, via an exit duct coupled with an exit of the stack, the air away from the opening in the ceiling of the computer
room into a ceiling plenum above the opening in the ceiling; and

segregating air exiting the rack system and passing through the exit duct from air circulating within the ceiling plenum and
air entering the ceiling plenum from one or more other rack systems, such that air circulating within the ceiling plenum and
air entering the ceiling plenum from one or more other rack systems is recirculated to the computer room and such that the
air passing through the exit duct passes into ambient air outside the ceiling plenum.

US Pat. No. 9,907,190

COMPOSITE STRUCTURES AND METHODS OF MAKING

Amazon Technologies, Inc....

1. A housing for an electronic device comprising:
a display to present a content item;
a front cover via which the content item is viewable; and
a back cover opposite the front cover, the back cover comprising:
a polymer core having a thickness between a first surface and a second surface opposite the first surface;
a plurality of holes extending from the first surface to the second surface, the plurality of holes being arranged in an array;
and

a metallic coating on the first surface of the polymer core, the second surface of the polymer core, and an inner surface
of each of the plurality of holes, the metallic coating extending continuously from the first surface through the plurality
of holes to the second surface to mechanically connect the first surface and the second surface.

US Pat. No. 9,355,301

ENHANCED FACE RECOGNITION IN VIDEO

Amazon Technologies, Inc....

1. A computer-implemented method of selecting at least one image frame for facial recognition, comprising:
under the control of an electronic device comprising at least one infrared (IR) imaging mechanism and configured with executable
instructions,

detecting at least one feature in at least one image, the feature being indicative of a person's head;
activating the at least one IR imaging mechanism of the electronic device operable to emit IR light;
detecting features corresponding to pupils in reflected IR light;
analyzing the detected features to determine at least one attribute of the detected features in the reflected IR light; and
selecting a frame of the at least one image when at least one attribute of the detected features meets a specified criterion.

US Pat. No. 9,411,809

REMOTE CONTENT PRESENTATION QUEUES

Amazon Technologies, Inc....

1. A method, comprising:
receiving, from a first application executing on a first user device, by a remote play queue management system comprising
one or more servers remote from the first user device, a request to add a plurality of tracks to a remote play queue, wherein
the plurality of tracks comprises a first track that corresponds to a first content source provider and a second track that
corresponds to a second content source provider;

adding the plurality of tracks to a remote content presentation queue;
receiving, by the remote play queue management system, from the first content source provider, first metadata corresponding
to the first track;

receiving, by the remote play queue management system, from the second content source provider, second metadata corresponding
to the second track;

receiving, by the remote play queue management system, initial partial content of the first track from the first content source
provider or a content delivery network;

receiving, by the remote play queue management system, initial partial content of the second track from the second content
source provider or the content delivery network;

storing the first and second metadata in association with the remote play queue;
storing, by the remote play queue management system, the initial partial content of the first and second tracks;
transmitting, by the remote play queue management system, to a second application executing on a second user device, a message
comprising the first and second metadata; and

transmitting, by the remote play queue management system, the initial partial content of the first and second tracks to the
second application executing on the second user device.

US Pat. No. 9,237,074

DISTRIBUTED IDENTIFIER GENERATION SYSTEM

Amazon Technologies, Inc....

1. A distributed computing system comprising:
one or more processors;
one or more computer-readable storage media storing computer-executable instructions;
a plurality of host modules maintained in the one or more computer-readable storage media;
a host manager module maintained in the one or more computer-readable storage media and executed by the one or more processors
to issue host identifiers to the plurality of host modules, the host identifiers being unique within the distributed computing
system; and

the plurality of host modules executed by the one or more processors to:
generate, by a generating host module of the plurality of host modules, unique identifiers to be issued to requesting clients,
the unique identifiers being generated based at least in part on a host identifier issued to the generating host module by
the host manager and a value of a counter operated by the generating host module, the unique identifiers being unique within
the distributed computing system; and

issue the unique identifiers to requesting clients;
a library module maintained in the one or more computer-readable storage media and executed by the one or more processors
to:

store the host identifiers of the plurality of host modules;
receive a registration request from the host manager module;
based at least in part on the registration request, determine whether a first host identifier to be registered to a first
host is unique within the distributed computing system;

in the event the first host identifier is unique within the distributed computing system, allow the registration of the first
host identifier to the first host based on the registration request,

in the event the host identifier is not unique within the distributed computing system, deny the registration of the first
host identifier to the first host based on a registration request.

US Pat. No. 9,226,042

SELECTING ADVERTISING FOR PRESENTATION WITH DIGITAL CONTENT

Amazon Technologies, Inc....

1. A non-transitory computer-readable medium embodying a program executable in a computing device, the program comprising:
code that maintains a browse history associated with a user based at least in part on a plurality of network pages of an electronic
marketplace that have been requested by the user, at least some of the network pages featuring products offered for sale through
the electronic marketplace;

code that maintains an order history associated with the user based at least in part on a plurality of products purchased
by the user through the electronic marketplace;

code that maintains an advertisement history associated with the user based at least in part on a record of one or more advertisements
that have been previously presented to the user;

code that obtains a request by the user for a presentation of a digital content item from a digital content library;
code that determines a plurality of characteristics of the user based at least in part on the browse history, the order history,
and a user-created list of products that the user is interested in acquiring;

code that selects an advertisement from an inventory of advertisements based at least in part on a price that an advertiser
is willing to pay for a presentation of the advertisement to the user and a recorded number of times that the advertisement
has been previously presented to the user, wherein the recorded number of times that the advertisement has been previously
presented to the user is verified to be less than a predefined threshold value, wherein the price is assigned according to
the plurality of characteristics of the user and the recorded number of times that the advertisement has been previously presented
to the user, the advertisement being selected irrespective of aggregate demographics associated with the digital content item;
and

code that presents the digital content item to the user in association with the advertisement.

US Pat. No. 10,098,265

COOLING SYSTEM WITH DESICCANT DEHUMIDIFICATION

Amazon Technologies Inc.,...

1. A data center, comprising:rack-mounted computing devices that include heat producing components; and
a cooling system, comprising:
one or more desiccant wheels;
one or more evaporative cooling devices downstream from at least one of the desiccant wheels; and
one or more air moving devices;
wherein:
at least one of the air moving devices is configured to move air through at least one of the desiccant wheels, at least one of the one or more evaporative cooling devices, and at least one of the heat producing components of the rack-mounted computing devices; and
the cooling system is configured to transfer heat from the rack-mounted computing devices to at least a portion of air being moved through the at least one of the desiccant wheels to promote reactivation of the at least one of the desiccant wheels.

US Pat. No. 9,494,791

FLUIDS FOR AN ELECTROWETTING DEVICE

Amazon Technologies, Inc....

1. An electrowetting device comprising:
a bottom support plate and a top support plate positioned above the bottom support plate;
pixel walls that separate pixel regions, and wherein each of the pixel regions includes:
a top electrode disposed on the top support plate;
a hydrophobic layer portion disposed on a pixel electrode;
an electrowetting oil disposed on the hydrophobic layer portion;
an electrolyte solution mixed with an adsorbent comprising particles in a solid state, wherein the electrolyte solution at
least partially surrounds the electrowetting oil; and

a pixel electrode disposed on the bottom support plate, wherein the top electrode is electrically coupled to the pixel electrode
via the electrolyte solution, wherein applying a voltage between the electrolyte solution and the pixel electrode decreases
hydrophobicity of the hydrophobic layer portion to allow the electrolyte solution to move onto the hydrophobic layer portion
and substantially displace at least a portion of the electrowetting oil toward an edge of the pixel region.

US Pat. No. 9,378,484

MANAGEMENT OF INVENTORY ITEMS

Amazon Technologies, Inc....

1. A computer-implemented method, comprising:
(a) identifying an inventory holder by reading a first radio-frequency identification (RFID) tag associated with the inventory
holder, the inventory holder coupled to an autonomous mobile drive unit and comprising one or more compartments configured
to receive items, the autonomous mobile drive unit configured to lift the inventory holder and to transport the inventory
holder from a first position to a second position;

(b) transmitting a radio frequency transmission via one or more antennas in a direction of the inventory holder;
(c) receiving, by at least one reader, radio frequency responses via the one or more antennas, the radio frequency responses
provided by one or more RFID tags in response to the radio frequency transmission, each RFID tag associated with an item stowed
in the inventory holder;

(d) identifying, based at least in part on the radio frequency responses, items stowed in the inventory holder;
(e) instructing rotation of the inventory holder relative to the one or more antennas by the autonomous mobile drive unit,
wherein the receiving of the radio frequency responses and the identifying of the items stowed occur at least partly during
the rotation of the inventory holder by the autonomous mobile drive unit;

(f) receiving a manifest comprising a list of manifest items expected to be stowed in the inventory holder; and
(g) comparing the list of manifest items with the identified items stowed in the inventory holder in accordance with a confidence
threshold.

US Pat. No. 9,274,597

TRACKING HEAD POSITION FOR RENDERING CONTENT

Amazon Technologies, Inc....

1. A computer-implemented method of rendering content on a display screen of a computing device, comprising:
under control of a computing device configured with executable instructions,
capturing video information using a camera of the computing device;
detecting at least one first feature in the video information indicative of a head of a user;
determining a first relative position of the at least one first feature with respect to the computing device;
rendering the content on the display screen of the computing device to correspond to a viewpoint of the user at the first
relative position;

at a first time, predicting that the at least one first feature will be outside a field of view of the camera at a second
time based at least in part upon analyzing the video information;

storing to a buffer first motion information obtained from at least one sensor of the computing device from the first time
to the second time based at least in part upon predicting that the at least one first feature will be outside the field of
view of the camera at the second time;

at the second time, determining that the at least one first feature is outside the field of view of the camera based at least
in part upon analyzing the video information;

estimating a second relative position of the at least one first feature with respect to the computing device based at least
in part upon where the at least one first feature was last tracked in the video information with at least a minimum level
of confidence and a motion of the computing device determined based at least in part upon the first motion information pulled
from the buffer and second motion information obtained from the at least one sensor after the second time;

determining an updated viewpoint of the user based at least in part upon the second relative position; and
rendering the content on the display screen to correspond to the updated viewpoint.

US Pat. No. 9,268,835

DATA REPLICATION FRAMEWORK

Amazon Technologies, Inc....

1. A computing system for providing peer data replication, the computing system comprising:
a plurality of interconnected hosts, individual ones of the plurality of interconnected hosts comprising:
a data store configured to store data and host availability information that represents a list of available hosts configured
to replicate data between one another; and

a client application programming interface configured to read local and remote data;
a membership module corresponding to one or more computing devices, the membership module configured to maintain the list
of available hosts and to send the list to data stores of individual hosts; and

a data replication module corresponding to one or more computing devices, the data replication module configured to communicate
with the membership module of individual hosts in order to replicate data across hosts determined to be available based on
the list of available hosts.

US Pat. No. 9,178,744

DELIVERY OF ITEMS FOR CONSUMPTION BY A USER DEVICE

Amazon Technologies, Inc....

1. An item-providing system, comprising:
an item delivery system configured to provide items to a user device, wherein the item delivery system comprises:
a content delivery module configured to:
receive a request from the user device to obtain an item, wherein the item is identified in an instruction sent by the item-providing
system to the user device;

access the item, in response to the request, from a content store;
verify that the user device is authorized to receive the item by determining whether providing the item will exceed a limit
which restricts downloading of the item to more than a predetermined number of devices; and

provide the item to the user device if the user device is authorized to receive the item.

US Pat. No. 9,152,460

MANAGEMENT OF COMPUTING DEVICES PROCESSING WORKFLOW STAGES OF A RESOURCE DEPENDENT WORKFLOW

Amazon Technologies, Inc....

1. A computer-implemented method for implementing a resource dependent workflow for configuring a computing device implementing
the method, the method comprising:
prior to loading of a target operating system of the computing device implementing the method:
loading from a read only memory (ROM) of the computing device a set of computer-readable instructions for implementing the
resource dependent workflow, wherein the resource dependent workflow comprises at least one workflow stage; and

executing the set of computer-readable instructions, wherein executing of the set of computer-readable instructions further
comprises the computing device implementing operations including:

receiving the at least one workflow stage of the resource dependent workflow from a workflow control device configured to
instruct a plurality of computing devices, including the computing device, to attempt to implement the resource dependent
workflow without guaranteeing access to at least one computing resource on which the at least one workflow stage of the resource
dependent workflow depends;

determining the at least one computing resource on which implementation of the at least one workflow stage is dependent;
requesting, from a resource control computing device associated with the at least one computing resource, authorization to
access the at least one computing resource, wherein the resource control computing device is configured to allocate access
by the computing device to the at least one computing resource during attempted implementation of the at least one workflow
stage by the computing device, and wherein the at least one computing resource comprises a storage device storing the target
operating system, a portion of the target operating system, one or more applications, one or more updates, or one or more
device drivers;

receiving from the resource control computing device an indication of whether access to the at least one computing resource
is granted;

if access to the at least one computing resource is indicated to be granted, processing the at least one workflow stage at
least in part by accessing the at least one computing resource and installing the targeting operating system, the portion
of the target operating system, the one or more applications, the one or more updates, or the one or more device drivers;
and

if access to the at least one computing resource is indicated not to be granted, at least temporarily pausing processing of
the at least one workflow stage.

US Pat. No. 9,456,276

PARAMETER SELECTION FOR AUDIO BEAMFORMING

Amazon Technologies, Inc....

1. A method comprising:
receiving multiple frequency domain input signals, each input signal corresponding to a microphone of a microphone array,
wherein each microphone is on a surface;

selecting a focus direction;
determining a correction vector for a first input signal corresponding to a first microphone of the microphone array, the
correction vector indicating magnitude differences and phase differences at multiple frequencies of the first input signal
caused by the surface in comparison to a free-field input signal that would be produced by the first microphone in free space
in response to a sound wave arriving from the focus direction;

calculating filter weights corresponding to the multiple frequencies of the first input signal based at least in part on the
correction vector and based at least in part on the focus direction;

multiplying frequency components of the first input signal by the filter weights to produce a first filtered signal corresponding
to the first input signal; and

summing multiple filtered signals corresponding respectively to the input signals to produce a directional frequency domain
signal, the multiple filtered signals comprising the first filtered signal.

US Pat. No. 9,444,759

SERVICE PROVIDER REGISTRATION BY A CONTENT BROKER

Amazon Technologies, Inc....

1. A computer-implemented method comprising:
as implemented by one or more computing devices configured with a specific executable instructions:
obtaining, from a content provider, registration information at a content broker for registering one or more resources associated
with the content provider with a first service provider;

transmitting a first service provider generation request from the content broker to the first service provider, the first
service provider generation request corresponding to the registration information;

determining, by the content broker and without further input from the content provider, that the one or more resources associated
with the content provider should instead be provided by a second service provider rather than the first service provider;
and

transmitting a second service provider generation request from the content broker to the second service provider, the second
service provider generation request corresponding to the registration information.

US Pat. No. 9,411,152

ELECTROWETTING DISPLAY DEVICE AND METHOD OF MANUFACTURING THE SAME

Amazon Technologies, Inc....

1. An electrowetting display device comprising:
a base substrate;
a wall on the base substrate that at least partially partitions a pixel area, wherein the wall includes a top surface and
a lateral side surface;

a hydrophobic layer in the pixel area;
a first fluid and a second fluid immiscible with the first fluid; and
an electronic device configured to apply an electric field across the pixel area,
wherein the hydrophobic layer (i) extends over the base substrate and (ii) extends partially on the lateral side surface of
the wall, and wherein a portion of the lateral side surface of the wall over which the hydrophobic surface does not extend
comprises a hydrophilic surface.

US Pat. No. 9,278,840

PALLETIZING MOBILE DRIVE UNITS

Amazon Technologies, Inc....

16. A method comprising:
supporting a mobile drive unit on a pallet such that a feature of the mobile drive unit is positioned within a corresponding
opening of the pallet; and

engaging the pallet with a base so as to position a protrusion of the base within said opening of the pallet and move said
feature out of the opening.

US Pat. No. 9,888,615

TAPE LIBRARY RACK MODULE WITH ENVIRONMENTALLY ISOLATED INTERIOR

Amazon Technologies, Inc....

1. A data center, comprising:
a rack computer system configured to provide computing capacity within a first environment inside the data center, wherein
the first environment is maintained to within a first temperature range and a first relative humidity range; and

a tape library rack module, including:
an enclosure encompassing an interior of the tape library rack module;
a rack within the interior of the tape library rack module;
a tape library unit mounted on the rack within a portion of the interior of the tape library rack module, wherein:
the portion of the interior is enclosed such that it is environmentally isolated from the first environment inside the data
center; and

the tape library unit includes tape cartridges configured to store data within a second environment that includes:
a second temperature range that is different than the first temperature range of the first environment inside the data center;
and

a second relative humidity range that is different than the first relative humidity range of the first environment inside
the data center;

a cooling unit configured to cool the portion of the interior;
a humidifier unit configured to humidify the portion of the interior;
wherein the tape library rack module is configured to maintain the second environment within the portion of the interior based
at least in part on the cooling unit and the humidifier unit.

US Pat. No. 9,357,054

DETERMINING USER'S SEATING POSITION IN VEHICLE USING BAROMETER AND MOTION SENSORS

AMAZON TECHNOLOGIES, INC....

1. A method of determining a position of an electronic device located within a moving vehicle, the method comprising:
determining that the electronic device is located in a cabin of the vehicle based on first motion data provided by motion
sensors of the electronic device;

determining an average direction of motion of the electronic device using the first motion data;
determine an average direction of motion of the electronic device over time;
dividing an area representing the cabin into a front-right quadrant, a front-left quadrant, a back-right quadrant, and a back-left
quadrant, based on the average direction of motion of the electronic device;

receiving second motion data from the motion sensors;
determining, using the second motion data, that the vehicle is accelerating;
determining a rate of change of acceleration for the vehicle;
receiving, from a barometer of the electronic device, first air pressure data within the vehicle;
determining a rate of change of the air pressure within the vehicle based on the first air pressure data for a first time
period, wherein the first time period starts after the vehicle starts accelerating and overlaps in time with a second time
period during which the vehicle is accelerating;

comparing the rate of change of the air pressure to the rate of change of the acceleration to determine that a reduction in
air pressure within the vehicle at a beginning of the first time period was caused by the acceleration;

determining that the device is located in the front-right quadrant based on a direction of the acceleration that caused the
reduction in the air pressure being in a direction of the front-right quadrant; and

changing a configuration of the electronic device.

US Pat. No. 9,350,918

GESTURE CONTROL FOR MANAGING AN IMAGE VIEW DISPLAY

Amazon Technologies, Inc....

1. A computer implemented method for managing an image view display, the method comprising:
under control of one or more computer systems configured with executable instructions,
activating a first camera on a first side of a computing device;
displaying a first image, captured by the first camera using a first zoom level within a zoom range, on a display element
on a second opposing side of the computing device;

detecting, using at least a pair of second cameras on the second opposing side of the computing device, a first movement of
the computing device relative to a user of the computing device within a predefined period of time after the first camera
is activated, the first movement including a forward motion from a first position to a second position and a backward motion
from the second position to the first position;

determining, using the first position and the second position, a range of movement for the computing device;
generating a mapping of the range of movement to the zoom range;
detecting a second movement of the computing device within the range of movement;
determining a second zoom level based at least in part on the mapping and the second movement within the range of movement;
and

displaying a second image, captured by the first camera using the second zoom level, on the display element.

US Pat. No. 9,275,302

OBJECT DETECTION AND IDENTIFICATION

Amazon Technologies, Inc....

1. A system comprising:
one or more cameras to capture a two-dimensional (2D) image of an environment and a three-dimensional (3D) image of the environment;
memory;
one or more processors;
an object processing module maintained in the memory and executable by the one or more processors to:
identify a first contour of an object from the 3D image;
map the first contour of the object from the 3D image onto the 2D image;
identify a second contour of the object from the 2D image;
compare the first contour of the object from the 3D image to the second contour of the object from the 2D image; and
determine a disparity between the first contour of the object from the 3D image and the second contour of the object from
the 2D image; and

an object determination module maintained in the memory and executable by the one or more processors to determine a final
contour of the object based at least partly on a determination that the disparity is less than or equal to a threshold.

US Pat. No. 9,269,012

MULTI-TRACKER OBJECT TRACKING

Amazon Technologies, Inc....

1. A computing device, comprising:
one or more processors;
one or more cameras; and
memory including instructions that, upon being executed by the one or more processors, cause the computing device to:
capture, at a first time, one or more first images using the one or more cameras;
detect at least one portion of a representation of a face of a user in the one or more first images using a facial detection
process;

capture, at a second time, one or more second images using the one or more cameras;
track the at least one portion of the representation of the face of the user between the one or more first images and the
one or more second images by concurrently executing a plurality of types of object tracking processes, the plurality of types
of object tracking processes including two or more of a feature-based tracking process, an elliptical tracking process, a
template matching tracking process, an optical flow tracking process, or a silhouette or contour tracking process;

select an object tracking process from among the plurality of object tracking processes based at least in part upon the object
tracking process best satisfying a condition; and

determine a position of the face of the user based at least in part upon where the selected object tracking process tracked
the at least one portion of the representation of the face of the user in the one or more second images.

US Pat. No. 9,104,485

CPU SHARING TECHNIQUES

Amazon Technologies, Inc....

1. An apparatus comprising:
one or more processors;
memory accessible by the one or more processors, the memory including instructions that, when executed, cause the one or more
processors to:

determine if any hyperthreads of two or more hyperthreads within a processing core have entered an idle state;
at least partly in response to determining that a hyperthread has entered the idle state, determine whether at least one other
hyperthread is executing a non-idle workload; and

at least partly in response to determining that at least one other hyperthread is executing a non-idle workload;
identify a respective level of performance of the at least one other hyperthread that is executing a non-idle workload;
create an idle workload loop to execute on the hyperthread that has entered the idle state, wherein the idle workload loop
simulates a workload such that resources of the processing core are utilized by the hyperthread that has entered the idle
state; and

execute the idle workload loop on the hyperthread that has entered the idle state to substantially maintain the respective
level of performance of the at least one other hyperthread that is executing a non-idle workload,

wherein create an idle workload loop to execute on the hyperthread that has entered the idle state comprises determining an
application profile for an application executing on the at least one other hyperthread that is executing a non-idle workload,
the idle workload loop that is created being based at least in part on the determined application profile.

US Pat. No. 9,883,610

ELECTRONIC DEVICE FILTER DOOR

Amazon Technologies, Inc....

1. An electronic device comprising:
an electronic device housing that includes a frame to couple components of the electronic device, the electronic device housing
configured to protect the electronic device during a shipment of the electronic device, the electronic device including an
aperture to enable airflow into the electronic device;

a display coupled to the frame and recessed within the aperture of the electronic device housing;
a security door to selectively move between a closed position to cover the aperture when the electronic device is configured
for the shipment and a stowed position where the security door is stowed in the electronic device housing enabling airflow
into the electronic device and access to the display; and

a door filter assembly to selectively couple to the electronic device housing when the security door is in the stowed position,
the door filter assembly comprising:

a door filter frame configured to couple to the electronic device housing; and
a door filter casing configured to rotate from a first position to reveal the display to a second position to cover the aperture
with an air filter configured to filter air flowing into the electronic device.

US Pat. No. 9,323,044

ELECTROWETTING DISPLAY DEVICE

Amazon Technologies, Inc....

1. An electrowetting display device comprising:
a first support plate;
a second support plate;
a greyscale picture element layer associated with the first support plate, the greyscale picture element layer comprising
at least one first picture element having a first fluid configurable to provide a greyscale display state;

a colour picture element layer associated with the second support plate, the colour picture element layer comprising a plurality
of second picture elements each having a second fluid configurable to provide a colour display state,

the second fluid of a first one of the plurality of second picture elements configured as a first colour filter of a first
colour,

the second fluid of a second one of the plurality of second picture elements configured as a second colour filter of a second
colour different from the first colour, and

the second fluid of a third one of the plurality of second picture elements configured as a third colour filter of a third
colour different from the first colour and the second colour,

each of the at least one first picture element and the plurality of second picture elements having a respective display area
for providing a display effect thereover;

a space between the first support plate and the second support plate, the first fluid and the second fluid of at least one
of the plurality of second picture elements arranged in the space and separated by a third fluid immiscible with the first
fluid and the second fluid; and

a control system arranged to change:
a configuration of the first fluid of the at least one first picture element by changing a first voltage applied to at least
one first electrode associated respectively with the at least one first picture element; and

a configuration of the second fluid of at least one of the plurality of second picture elements by changing a second voltage
applied to at least one second electrode associated respectively with the at least one of the plurality of second picture
elements.

US Pat. No. 9,313,391

CAMERA INTERFACES FOR ELECTRONIC DEVICES

Amazon Technologies, Inc....

1. A computing device, comprising:
a first camera configured to capture first image data, the first camera including a first image data pin and a second image
data pin;

a second camera configured to capture second image data, the second camera including a third image data pin and a fourth image
data pin;

a camera interface circuit coupled to the first camera through a first camera interface module and coupled to the second camera
through a second camera interface module; and

a host processor coupled to the first camera, the second camera, the first camera interface module, and the second camera
interface module, wherein the host processor is configured to:

determine that the first camera is active,
transmit a reset signal to the second camera to cause the second camera to enter a standby mode, wherein in the standby mode
the second camera operates in a high impedance mode to electrically isolate the first camera from the second camera, and

measure a voltage across a first resistor of the second camera interface module that is in series with a first capacitor of
the second camera interface module to determine the first image data, wherein a second side of the first capacitor of the
second camera interface module is coupled to the first image data pin of the first camera and a first side of the first resistor
of the second camera interface module is coupled to the second image data pin of the first camera.

US Pat. No. 9,313,193

MANAGEMENT AND AUTHENTICATION IN HOSTED DIRECTORY SERVICE

Amazon Technologies, Inc....

1. A system comprising:
a plurality of computing systems, wherein each computing system hosts a different directory in a plurality of directories;
and

a computing resource service provider system comprising one or more computing devices, the computing resource service provider
system in communication with the plurality of computing systems, the one or more computing devices configured to execute instructions
that cause the computing resource service provider system to:

receive, from a user device, a credential, a client identification, and a directory identifier, wherein the directory identifier
identifies a first directory in the plurality of directories, and wherein the client identification is associated with a service
that is not associated with the first directory;

determine, by a first computing agent associated with the first directory, whether the credential can be authenticated; and
in response to a determination that the credential can be authenticated,
generate an authentication code,
transmit the authentication code to the user device,
instruct the user device to access the service associated with the client identification,
receive the authentication code from the service associated with the client identification,
generate, in response to receiving the authentication code from the service associated with the client identification, an
access token based on the authentication code and the directory identifier,

generate, in response to receiving the authentication code from the service associated with the client identification, a refresh
token,

map the access token to the first directory and store the mapping in a database, and
transmit the access token and the refresh token to the service associated with the client identification, wherein the access
token allows the user device to manage the first directory via the service associated with the client identification.

US Pat. No. 9,262,470

APPLICATION RECOMMENDATIONS BASED ON APPLICATION AND LIFESTYLE FINGERPRINTING

Amazon Technologies, Inc....

1. A method comprising:
receiving, via at least one computing device, a plurality of application fingerprints, individual ones of the plurality of
application fingerprints being associated with a corresponding one of a plurality of applications, the individual ones of
the plurality of application fingerprints being generated based at least in part on a static analysis, a dynamic analysis,
and a behavioral analysis of the corresponding one of the applications;

receiving, via the at least one computing device, a selection of a particular one of the plurality of applications;
identifying, via the at least one computing device, a subset of the plurality of applications that are similar to the particular
one of the plurality of applications based at least in part on the plurality of application fingerprints;

receiving, via the at least one computing device, an identification of a particular user;
determining, via the at least one computing device, a plurality of users who are similar to the particular user based at least
in part on lifestyle fingerprint data for the plurality of users and the particular user; and

generating, via the at least one computing device, a recommendation of the particular one of the plurality of applications
for the particular user based at least in part on usage data associated with usage of the subset of the plurality of applications
by the plurality of users.

US Pat. No. 9,235,613

FLEXIBLE PARTITIONING OF DATA

Amazon Technologies, Inc....

1. A non-transitory computer-readable medium embodying a program executable in a computing device, the program having instructions
that perform a method comprising:
identifying one of a plurality of versions of mapping metadata concurrently available to a data management application, the
plurality of versions of mapping metadata specifying a respective list of at least some of a plurality of partitions of a
data store and a respective approach for mapping a key value to one of the at least some of the partitions;

determining one of the plurality of partitions by mapping an attribute of a data item, as the key value, to the one of the
plurality of partitions according to the respective approach for mapping the key value corresponding to the identified one
of the plurality of version of mapping metadata;

inserting the data item in the one of the plurality of partitions;
storing an identifier corresponding to the one of the plurality of partitions in response to a loading of the data item from
the one of the plurality of partitions;

obtaining a request to update the data item; and
updating the data item in the one of the plurality of partitions in response to the request and based at least in part on
the identifier.

US Pat. No. 9,152,185

DORSAL TOUCH INPUT

Amazon Technologies, Inc....

1. An electronic device comprising:
one or more processors;
memory coupled to the one or more processors;
a display coupled to the one or more processors to present a content item;
a front surface via which the content item is viewable and a back surface opposite the front surface;
a touch sensor disposed along at least a portion of the back surface;
instructions stored in the memory and executable on the one or more processors, wherein the instructions, in conjunction with
the touch sensor, cause the one or more processors to:

receive a touch input via the touch sensor at one of a plurality of locations, the one of the plurality of locations being
mapped to a pre-determined command of a multi-dimensional control array; and

cause an action to be performed relative to the content item based on the pre-determined command mapped to the one of the
plurality of locations.

US Pat. No. 9,154,515

SYSTEMS AND METHODS IDENTIFYING AND REACTING TO POTENTIALLY MALICIOUS ACTIVITY

Amazon Technologies, Inc....

5. A method comprising:
causing a computing device to implement one or more services, wherein the one or more services are configured to:
provide an application programming interface;
access event data comprising recorded information about one or more activities;
access sensor configuration data comprising information about selecting one or more attributes representative of information
about one or more activities associated with one or more emitter nodes;

generate parsed data by transforming the event data according to the sensor configuration data, wherein the parsed data includes:
actor data comprising information about a source of a performed action;
action data comprising information about the performed action;
entity data comprising information about an object that the source is performing the action on; and
attribute data comprising information associated with one or more activities associated with the emitter node;
determine that a potentially malicious activity occurred by analyzing the parsed data; and
generate alert data representative of the occurrence of the potentially malicious activity.

US Pat. No. 9,132,957

PROCESSING OF MISPLACED ITEMS TO RESOLVE INVENTORY DEFECTS

Amazon Technologies, Inc....

5. A system comprising:
a memory configured to store a misplaced item service; and
a processing device operatively coupled to the memory, the processing device to execute the misplaced item service configured
to:

identify a plurality of inventory storage locations in a materials handling facility for storage of a misplaced item; and
determine an ordered list of the plurality of inventory storage locations, wherein the inventory storage locations are arranged
in the ordered list based at least in part on at least one of a location density of the inventory storage locations, a population
density of the inventory storage locations and a last inventory storage location inspected.

US Pat. No. 9,986,664

VARIABLE TIME DELAY ON DATACENTER POD DIRECT COOLING

Amazon Technologies, Inc....

1. A data center comprising:a room;
a plurality of data center components located in the room;
a plurality of computer room air handling units (CRAHUS), the plurality of CRAHUS configured to control air temperature in the room, each of the CRAHUS of the plurality of CRAHUS configured for transitioning between operating in a free cooling mode and operating in a direct cooling mode;
a management component, comprising:
at least one memory that stores computer-executable instructions; and
at least one processor configured to access the at least one memory, wherein the at least one processor is configured to execute the computer-executable instructions to collectively at least:
in response to receiving information that an ambient temperature of air outside the room has crossed a threshold, initiate a first transitioning process, the first transitioning process including transitioning a first subset of the plurality of the CRAHUS between operating in the free cooling mode and operating in the direct cooling mode, the first subset including less than all of the plurality of the CRAHUS;
determine a time interval for spacing apart transitioning processes of different subsets of CRAHUS of the plurality of CRAHUS based on information about the ambient temperature; and
after the time interval has passed since initiating the first transitioning process, initiate a second transitioning process, the second transitioning process including transitioning a second subset of the plurality of the CRAHUS between operating in the free cooling mode and operating in the direct cooling mode, the second subset being different from the first subset and including less than all of the plurality of the CRAHUS.

US Pat. No. 9,482,858

PIXEL WALL CONFIGURATION FOR DIRECTING FLUID FLOW FOR FABRICATING ELECTROWETTING DISPLAYS

Amazon Technologies, Inc....

1. A display device comprising:
a glass substrate including:
one or more pixel arrays formed on the glass substrate, wherein the pixel arrays include:
first pixel walls that partition individual pixels of the pixel arrays and at least partially retain a first fluid within
respective individual pixels,

second pixel walls, and
a second fluid to cover (i) the first pixel walls and the second pixel walls and (ii) the first fluid, wherein
the first pixel walls have a first height and the second pixel walls have a second height, wherein the first height is greater
than the second height, and the first pixel walls are aligned in a first direction to direct a flow of the second fluid toward
a second direction.

US Pat. No. 9,454,779

ASSISTED SHOPPING

Amazon Technologies, Inc....

1. A non-transitory computer-readable medium having a computer-executable program stored thereon that, when executed by a
computing device, configures the computing device to perform operations comprising:
establishing a data session associated with another computing device;
receiving an input from the other computing device;
receiving a proximity sensor state from a proximity sensor associated with the other computing device, the proximity sensor
state associated with a proximity of the other computing device to a user;

receiving location information from a positioning system associated with the other computing device;
generating a search query that is based at least upon the input;
identifying a refined search query that is based at least upon the search query, the refined search query selected by a customer
service agent and obtained from the customer service agent via a customer service agent user interface, the refined search
query further being different from the search query; and

transmitting at least one search result based at least upon the refined search query and the location information to the other
computing device in response to a selection of the at least one search result by the customer service agent via the customer
service agent user interface.

US Pat. No. 9,390,181

PERSONALIZED LANDING PAGES

Amazon Technologies, Inc....

1. A method of generating a single personalized landing page, the method comprising:
under the control of one or more computer systems configured with executable instructions,
receiving a request to access content related to an item associated with a display advertisement sponsored by an entity, the
request generated in response to an interaction by a user with the display advertisement;

obtaining designated advertising content that is related to the item associated with the display advertisement;
obtaining supplemental advertising content related to one or more items that are complementary to the item associated with
the display advertisement, the supplemental advertising content being offered by the entity and being related to at least
a first item different from at least a second item advertised by the designated advertising content;

identifying one or more attributes associated with the user that interacted with the display advertisement;
obtaining recommended advertising content related to items that are associated with at least one of the identified one or
more user attributes, the recommended advertising content being related to at least a third item that is different from the
at least the second item advertised by the designated advertising content and different from the at least the first item related
to the supplemental advertising content, the recommended advertising content including information of interest to other users
connected to the user via a third party social network; and

generating the single landing page by:
selecting an advertisement template for a web page to generate the single landing page based at least in part upon at least
one of the user attributes and the entity that sponsored the display advertisement, the advertisement template containing
a plurality of placements, wherein each placement is populated with at least one advertisement;

determining a ranking order for at least one of the designated advertising content, the supplemental advertising content,
and the recommended advertising content, the ranking order based at least in part on relevance to the item associated with
the display advertisement; and

populating the plurality of placements with a combination of the designated advertising content, the supplemental advertising
content, and the recommended advertising content based at least in part on the ranking order, wherein the designated advertising
content, the supplemental advertising content, and the recommended advertising content are displayed in conjunction on the
single landing page.

US Pat. No. 9,299,064

SCOREBOARDS FOR ELECTRONIC GAMES

Amazon Technologies, Inc....

1. A non-transitory computer-readable medium embodying a program executable in a computing device, the program comprising
program instructions, that when executed, cause the computing device to at least:
obtain a plurality of game scores for a plurality of players of an electronic game;
determine that the plurality of game scores are within a predetermined range that indicates that the plurality of game scores
are not fraudulent;

determine a plurality of rankings for the plurality of players;
associate individual ones of the plurality of players with respective ones of a plurality of tiers based at least in part
on the plurality of rankings, wherein individual ones of the plurality of tiers are associated with respective ones of a plurality
of percentile ranges of the plurality of rankings;

identify at least one of the plurality of players as having a social networking affiliation with another player of the plurality
of players, the social networking affiliation comprising at least one of:

being a social networking contact for the another player through a social networking platform;
sharing a common social networking contact for the another player through the social networking platform;
having a same domain component of an electronic mail address as the another player;
being an electronic mail contact for the another player; or
being in a same geographical area as the another player; and
generate a scoreboard for the electronic game, the scoreboard representing at least the plurality of tiers and at least one
of the plurality of game scores for individual ones of the plurality of tiers;

encode at least a portion of the scoreboard for display on a client device with a representation of at least:
a selected subset of the plurality of tiers;
at least one of the plurality of game scores for individual ones of the plurality of tiers;
a first ranking for the another player; and
a second ranking for the at least one of the plurality of players that have the social networking affiliation with the another
player, wherein the second ranking is presented relative to the selected subset of the plurality of tiers.

US Pat. No. 9,298,980

IMAGE PREPROCESSING FOR CHARACTER RECOGNITION

Amazon Technologies, Inc....

1. A computer-implemented method, comprising
under control of one or more computer system configured with executable instructions,
obtaining image data from a camera of a portable computing device;
determining at least one feature point of the image data using a feature point detection algorithm;
applying a saliency function to the at least one feature point to determine at least one corresponding saliency value for
at least a portion of the image data, wherein the saliency function is a feature point density function programmed to calculate
a number of feature points per area, areas with a higher density of feature points having a higher saliency value relative
to areas with a lower density of feature points;

generating a saliency map of the image data based at least in part on the at least one corresponding saliency value;
determining at least one region of the saliency map in which the at least one corresponding saliency value meets or exceeds
a saliency threshold value; and

selecting the at least one region of the saliency map to be analyzed using a visual recognition component.

US Pat. No. 9,264,358

ALIAS RESOURCE RECORD SETS

AMAZON TECHNOLOGIES, INC....

1. A system for managing DNS queries, the system comprising:
a processor;
a data store comprising a plurality of data records, wherein individual data records comprise a name and a record value;
a non-transitory computer readable medium storing software instructions that when executed cause the processor to:
obtain a DNS query corresponding to a request from a client computing device, wherein the DNS query comprises a requested
domain name;

access a first data record of the plurality of data records in the data store associated with the requested domain name;
determine whether a first record value of the first data record comprises information responsive to the DNS query;
based on a determination that the first record value does not comprise information responsive to the DNS query and that the
first record value comprises a reference to a second data record, access the second data record based, at least in part, on
the first record value and determine whether a second record value of the second data record comprises information responsive
to the DNS query; and

if it is determined that the second record value comprises information responsive to the DNS query, resolve the DNS query
by transmitting the information responsive to the DNS query to the client computing device.

US Pat. No. 9,413,058

LOOP-FEEDING WIRELESS AREA NETWORK (WAN) ANTENNA FOR METAL BACK COVER

Amazon Technologies, Inc....

1. An electronic device comprising:
a single radio frequency (RF) feed;
RF circuitry coupled to the single RF feed;
a metal cover comprising a middle strip element, a first corner ground element, and a second corner ground element disposed
at a periphery of the metal cover, wherein the middle strip element is physically separated from the first corner ground element
by a first cutout in the metal cover and the middle strip element is physically separated from the second corner ground element
by a second cutout in the metal cover; and

an antenna structure coupled to the RF feed, the antenna structure comprising a ground plane, a first antenna formed by a
feeding element, the middle strip element and the first corner ground element, wherein:

the feeding element comprises:
a first section that extends from a feeding point at the RF feed in a first direction;
a second section that extends from a distal end of the first section in a second direction perpendicular to the first direction;
and

a third section that extends from a distal end of the second section in the first direction and couples to a first end of
the middle strip element, wherein the middle strip element extends in the second direction; and

the first corner ground element comprises:
a first section that extends from the ground plane in the first direction to form a first gap between the feeding element
and the first corner ground element; and

a second section that extends from a distal end of the first section of the first corner ground element in the second direction
to form a second gap between the feeding element and the first corner ground element.

US Pat. No. 9,357,493

STYLUS POWER MANAGEMENT USING MOTION AND ORIENTATION SENSING

Amazon Technologies, Inc....

1. An active stylus configured for use with an electronic device, the active stylus comprising:
a processor;
an accelerometer;
a tip including a sensor, the sensor configured to detect contact between the tip and a surface of a touch screen of the electronic
device;

a radio frequency (RF) transmitter coupled to the tip configured to emit a modulated signal to be used by the electronic device
to identify a location of the tip on the surface;

a memory including instruction operable to be executed by the processor to cause the stylus to:
determine when the tip is in contact with the surface;
determine when the tip is not in contact with the surface;
determine a first orientation of the active stylus based on first data from the accelerometer from when the tip is in contact
with the surface;

determine a second orientation of the active stylus based on second data from the accelerometer from when the tip is not in
contact with the surface;

determine a first difference between the first orientation and the second orientation;
determine that the first difference lies outside of a threshold range;
deactivate the RF transmitter coupled to the tip based on the first difference lying outside the threshold range;
determine that the tip is not in contact with the surface after the RF transmitter is deactivated;
determine a third orientation of the active stylus based on third data from the accelerometer from when the tip is not in
contact with the surface after the RF transmitter is deactivated;

determine a second difference between the first orientation and the third orientation;
determine that the second difference is within the threshold range; and
reactivate the RF transmitter coupled to the tip based on the second difference being within the threshold range.

US Pat. No. 9,324,322

AUTOMATIC VOLUME ATTENUATION FOR SPEECH ENABLED DEVICES

Amazon Technologies, Inc....

1. A method of modifying operation of a device, the method comprising:
generating an audio output via a speaker at a first volume level;
receiving a first audio input via a microphone, the first audio input including a first sound and a first portion of the audio
output;

performing echo cancellation on the first audio input to remove the first portion of the audio output received by the microphone
to generate an isolated audio input signal;

determining that the isolated audio input signal comprises the first sound by comparing the isolated audio input signal with
at least one stored acoustic model, wherein the first sound does not comprise speech directed to the device;

in response to determining that the isolated audio input signal comprises the first sound:
reducing the audio output to a second volume level that is less than the first volume level; and
suppressing at least one notification that would otherwise have been produced;
storing the at least one notification;
receiving a voice command; and
in response to receiving the voice command:
restoring the audio output to the first volume level;
stopping the suppressing of further notifications; and
producing the at least one notification that was previously suppressed and stored.

US Pat. No. 9,203,184

SELF-ALIGNING CONNECTOR

Amazon Technologies, Inc....

1. A system, comprising:
a connector plug comprising:
one or more tapered surfaces;
one or more plug-side body electrical contacts on at least one of the tapered surfaces;
a plug end surface, wherein the plug end surface is on one end of the plug and wherein an opposite end of the plug is configured
to couple with one or more wires;

a plurality of plug-side tip electrical contacts on the plug end surface; and
one or more electrically insulating portions on the at least one tapered surface; and
a connector receptacle configured to receive the connector plug, and wherein the connector receptacle comprises:
a tapered socket, wherein the tapered socket comprises one or more tapered surfaces;
a socket end surface, wherein the socket end surface is configured to mate with the plug end surface; and
one or more socket-side body electrical contacts, wherein at least one of the socket-side body electrical contacts is configured
to electrically couple with at least one of the plug-side body electrical contacts when the connector plug is coupled to the
socket,

a plurality of socket-side tip electrical contacts on the socket end surface, wherein respective ones of the plurality of
socket-side tip electrical contacts are configured to electrically couple with respective ones of the plug-side tip electrical
contacts when the connector plug is coupled to the socket,

wherein at least one of the socket-side body electrical contacts or the plug-side body electrical contacts extends at least
partially around at least one of the tapered surfaces such that the at least one body electrical contact electrically couples
with a mating electrical contact regardless of the orientation of the connector plug in the connector socket;

wherein a respective socket-side tip electrical contact or respective plug-side tip electrical contact, of each of a plurality
of respective mating pairs of socket-side tip electrical contacts and plug-side tip electrical contacts, extends in a circular
pattern on the socket end surface or the plug end surface such that the respective socket-side tip electrical contact or the
respective plug-side tip electrical contact electrically couples with a mating end surface electrical contact regardless of
the orientation of the connector plug in the connector socket;

wherein the one or more tapered surfaces of the connector plug or the one or more tapered surfaces of the connector receptacle
is configured such that the connector plug is guided into the connector receptacle when inserted in the connector receptacle
from a position that is at least partially out of alignment with the connector receptacle.

US Pat. No. 9,197,495

DETERMINING LOCATIONS OF NETWORK FAILURES

Amazon Technologies, Inc....

1. A computer-implemented method for detecting locations of network failures, the method comprising:
representing a network using a binomial likelihood function;
measuring a packet transfer rate across each of a plurality of network paths in the network respectively, wherein each one
of the network paths includes at least two nodes and at least one link;

for at least one path among the plurality of network paths, determining a respective packet transfer rate for each of the
at least two nodes and the at least one link included in the at least one path by applying a limited memory Broyden-Fletcher-Goldfarb-Shanno
with bound constraints (L-BFGS-B) algorithm to update a respective estimate of the respective packet transfer rate for each
of the at least two nodes and the at least one link based on the measured packet transfer rate across the at least one path:
and

determining at least one location for at least one network failure based on the determined respective packet transfer rate
for each of the at least two nodes and the at least one link included in the at least one path.

US Pat. No. 9,194,938

TIME DIFFERENCE OF ARRIVAL DETERMINATION WITH DIRECT SOUND

Amazon Technologies, Inc....

1. One or more non-transitory computer-readable media storing computer-executable instructions that, when executed, cause
one or more processors to perform acts comprising:
acquiring, from a plurality of microphones, a plurality of audio signals associated with an acoustic source;
filtering the plurality of audio signals with a band-pass filter;
estimating a noise floor of the plurality of audio signals;
for individual audio signals of the plurality of audio signals:
identifying an event of interest;
determining that the event of interest rises above the noise floor;
adjusting the noise floor at a rate that is based at least partly on an extent to which the event of interest rises above
the noise floor;

detecting a peak after the event of interest rose above the noise floor; and
determining a time at which the peak occurs; and
determining time-difference-of-arrival (TDOA) values for the event of interest based at least in part on a difference between
the time at which the peaks occur in the individual audio signals.

US Pat. No. 9,172,532

MULTI-TIERED ENCRYPTION SYSTEM FOR EFFICIENTLY REGULATING USE OF ENCRYPTION KEYS

Amazon Technologies, Inc....

1. A computer-implemented method of encrypting data, the method comprising:
receiving, from a requesting device, a first request to encrypt data, wherein the first request comprises the data;
determining whether a first key can be used to encrypt the data;
requesting, in response to determining that the first key can be used to encrypt the data, an encrypted version of the first
key from a first data store associated with a first node, wherein the first node is associated with a first tier of keys;

receiving the encrypted version of the first key and a parent key identifier from the data store, wherein the parent key identifier
identifies a parent key stored in a second data store associated with a second node configured to decrypt the encrypted version
of the first key, and wherein the second node is associated with a second tier of keys;

transmitting, to the second node, a second request to decrypt the encrypted version of the first key, wherein the second request
comprises the encrypted version of the first key and the parent key identifier;

receiving, from the second node, a decrypted version of the first key, wherein the second node generates the decrypted version
of the first key using the parent key after the parent key is retrieved from the second data store;

encrypting the data using the decrypted version of the first key;
generating a key identifier associated with the first key; and
transmitting, to the requesting device, the encrypted data and the key identifier.

US Pat. No. 9,135,048

AUTOMATED PROFILING OF RESOURCE USAGE

AMAZON TECHNOLOGIES, INC....

1. A system for managing shared computing resources, the system comprising:
one or more processors; and
a computer-readable memory storing executable instructions that, when executed by the one or more processors, configure the
system to:

receive a request to initialize a first instance of a first virtual machine, the first instance associated with a first expected
usage amount of a computing resource and a first reserved amount of the computing resource, wherein the first expected usage
amount is based at least in part on operating metrics determined from previously running at least an instance of a similar
virtual machine, and wherein the first reserved amount corresponds to an amount of the computing resource reserved for the
first instance by a customer associated with the first instance;

select a computing device of a plurality of computing devices configured to provide the computing resource, wherein a second
instance of a second virtual machine is executing on the computing device, wherein the second instance is associated with
a second expected usage amount and a second reserved amount of the computing resource, and wherein the selected computing
device is selected based at least partly on:

calculating a total reserved amount, the total reserved amount comprising a sum of the first reserved amount and the second
reserved amount;

determining that the total reserved amount is greater than an amount of the computing resource available on the computing
device;

in response to the determination that the total reserved amount is greater than the amount of the computing resource available
on the computing device, calculating a total expected usage amount, the total expected usage amount comprising a sum of the
first expected usage amount and second expected usage amount; and

determining that the total expected usage amount is less than the amount of the computing resource available on the computing
device; and

cause, at least in part, the first instance to be initialized on the selected computing device, wherein the first instance
and the second instance share the available amount of the computing resource.

US Pat. No. 9,046,682

MECHANICAL STRESS MITIGATION IN ELECTROWETTING DISPLAY STRUCTURES

Amazon Technologies, Inc....

1. An electrowetting display comprising:
a hydrophobic layer;
an array of pixels formed on the hydrophobic layer, wherein the array of pixels comprises rows and columns of pixel walls
that partition individual pixels of the array of pixels, and wherein the pixel walls include a portion configured to reduce
an impact of sheer stress between the pixel walls and the hydrophobic layer on the position of the array of pixels;

an oil film overlying the hydrophobic layer; and
an electrolyte overlying the oil film and the array of pixels.

US Pat. No. 9,147,948

BUSBAR CONNECTION ASSEMBLY

AMAZON TECHNOLOGIES, INC....

1. A system, comprising:
a datacenter power bus comprising a first busbar plate and a second busbar plate, wherein the first busbar plate is substantially
parallel to the second busbar plate, the datacenter power bus being in electrical communication with a computing device; and

a busbar connection assembly attached to the datacenter power bus, the busbar connection assembly providing an electrical
coupling between a backup power supply and the datacenter power bus, the busbar connection assembly comprising:

a first conductive plate;
a second conductive plate, the first conductive plate being substantially parallel to the second conductive plate; and
wherein a slot is formed between the first conductive plate and the second conductive plate, and wherein at least one of the
first busbar plate or the second busbar plate is disposed in the slot between the first conductive plate and the second conductive
plate.

US Pat. No. 10,064,312

PURGE-RESILIENT AIR CIRCULATION CONTROL

Amazon Technologies, Inc....

1. A data center, comprising:a computer room comprising a plurality of regions, wherein each region comprises:
a plurality of rack computer systems configured to perform computing operations;
a regional air control system configured to adjustably control air circulation in the region via a control loop system, based at least in part upon at least one measured environmental characteristic of the region, wherein adjustably controlling air circulation in the region comprises:
adjustably controlling one or more air supply components in the region to adjustably control a flow rate of cooling air to the plurality of rack computer systems in the region; and
adjustably controlling one or more air removal components in the region to adjustably control a flow rate of exhaust air, discharged by the plurality of rack computer systems, out of the region;
a regional purge control system configured to bypass the regional air control system and directly command the air supply components and air removal components in the region to purge the environment of the region; and
a master control system configured to, in response to a determination that an environment of at least one of the plurality of regions is presently being purged, command at least one regional air control system of at least one other region which is free from being purged to, for each of the air supply components and air removal components in the at least one other region:
limit a controller output signal value range of the control loop system, such that a minimum controller output value and a maximum controller output value of the range both match a value of a last controller output generated prior to the determination, and
incrementally decrease the minimum controller output value and incrementally increase the maximum controller output value, from the last controller output value, to expand the controller output range to a full controller output range for the respective component, in response to a determination that the at least one of the plurality of regions has ceased being purged.

US Pat. No. 9,454,154

INCIDENT LIGHT SENSOR ON AUTONOMOUS VEHICLE

Amazon Technologies, Inc....

1. An unmanned aerial vehicle (UAV), comprising:
a frame;
a propulsion system to generate lift, the propulsion system associated with the frame;
an incident light meter connected to the frame and positioned to receive ambient light and configured to output an incident
light measurement in response to receiving the ambient light, the incident light meter including a photosensitive element
disposed beneath a diffusive dome, wherein the incident light meter is positioned on a top portion of the UAV;

at least one image sensor connected to the frame and positioned to image an environment of the UAV; and
a management module coupled to receive the incident light measurement from the incident light meter, wherein the management
module is configured to:

generate an exposure setting based at least in part on the incident light measurement;
transmit the exposure setting to the at least one image sensor;
receive a digital image from the at least one image sensor, the digital image captured at the exposure setting transmitted
to the at least one image sensor; and

generate instructions to adjust the propulsion system based at least in part on the digital image captured at the exposure
setting.

US Pat. No. 9,147,086

TRUSTED COMPUTING HOST

Amazon Technologies, Inc....

1. A trusted host computing device for performing security functions in a distributed computing environment, the trusted host
computing device comprising:
at least one processor; and
memory including instructions that, when executed by the at least one processor, cause the trusted host computing device to:
maintain a set of isolated partitions for a plurality of host computing devices, each isolated partition in the set of isolated
partitions being associated with a respective host computing device of the plurality of host computing devices, wherein the
respective host computing device is separated from the trusted host computing device via a network;

establish a secure communication channel between the trusted host computing device and a peripheral card of a host computing
device of the plurality of host computing devices;

receive, over the secure communication channel from the peripheral card, a first boot firmware measurement of the host computing
device, the first boot firmware measurement obtained by the peripheral card accessing one or more memory locations using direct
memory access (DMA) on the host computing device;

compare the first boot firmware measurement to a list of trusted values to verify the first boot firmware measurement and
store the first boot firmware measurement into an isolated partition associated with the host computing device if the first
boot firmware measurement is verified;

receive a request to verify the host computing device, the request including a second boot firmware measurement of the host
computing device, the second boot firmware measurement obtained by the peripheral card;

compare the first boot firmware measurement stored in the isolated partition to the second boot firmware measurement; and
verify the host computing device if the first boot firmware measurement matches the second boot firmware measurement.

US Pat. No. 9,374,243

MANAGING OPERATIONAL THROUGHPUT FOR SHARED RESOURCES

Amazon Technologies, Inc....

1. A computer-implemented method for managing shared resources, comprising:
receiving an instance request that includes a request parameter, the instance request associated with a user of a multi-tenant
computing environment, the multi-tenant computing environment including a plurality of client devices in communication via
a network with one or more servers and storage devices, the instance request indicating a data set and a performance specification
for responding to data requests for the data set, the performance specification indicating a latency target to be met for
responding to at least one of the data requests for the data set;

determining an amount of latency of processing at least one of the data requests;
determining that the amount of latency is greater than the latency target as indicated by the performance specification;
identifying another storage device having additional capacity, the another storage device being associated with a resource
usage request for the additional capacity;

determining whether the request parameter satisfies the resource usage request;
in response to determining that the request parameter satisfies the resource usage request, moving at least a subset of the
data set from a current storage device to the another storage device; and

in response to determining that the request parameter does not satisfy the resource usage request, denying the instance request.

US Pat. No. 9,407,615

SINGLE SET OF CREDENTIALS FOR ACCESSING MULTIPLE COMPUTING RESOURCE SERVICES

Amazon Technologies, Inc....

1. A computer-implemented method for enabling access to one or more computing system services provided by a computing resource
service provider, comprising:
under the control of one or more computer systems configured with executable instructions,
enabling a user to utilize a set of credentials to access resources in a directory within a managed directory service;
receiving, at the managed directory service, a first request from the user to access a subset of the one or more computing
system services, different from the managed directory service, provided by the computing resource service provider, the first
request comprising information based at least in part on the set of credentials;

authenticating, at the managed directory service, the user based at least in part on the set of credentials;
on a first condition that the user has been authenticated, identifying, at the managed directory service, one or more policies
applicable to the user, the one or more policies at least defining a level of access to the one or more services based at
least in part on the first request, the one or more policies defined using a policy generator interface that enables an administrative
user to define the one or more policies based at least in part on the one or more services;

on a second condition that the identified one or more policies allow access, transmitting to an identity management service,
different from the managed directory service, a second request for a set of one or more temporary credentials wherein the
temporary credentials enable the user to access a subset of the one or more services;

receiving the set of one or more temporary credentials from the identity management service;
providing a reference to a network location usable to access the one or more services in accordance with the one or more policies;
and

utilizing the received set of one or more temporary credentials to fulfill, at least in part, the first request from the user
to access the one or more services.

US Pat. No. 9,179,258

LOCATION BASED RECOMMENDATIONS

Amazon Technologies, Inc....

1. A method comprising:
under control of one or more processors of a server device:
obtaining location data that corresponds to physical locations of a first user device and a second user device;
identifying places or events that are associated with the physical locations of the first user device and the second user
device;

identifying context information that is associated with the places or the events visited by the first user device and the
second user device, the context information relating to an action associated with the places or the events;

determining a similarity of the context information for the places or the events that are associated with the first user device
and the second user device;

identifying a number of common places or events visited by the first user device and the second user device based at least
in part on the similarity of the context information being greater than a predetermined threshold; and

at least partly in response to the determining that the similarity of the context information is greater than the predetermined
threshold, indicating that a first user associated with the first user device and a second user associated with the second
user device are likely to share common interests.