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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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. 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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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,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.

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,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. 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,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,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,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,442,752

VIRTUAL SECURE EXECUTION ENVIRONMENTS

Amazon Technologies, Inc....

1. A computer-implemented method, comprising:
under the control of one or more computer systems that execute instructions,
managing a primary execution environment of a computing resource service provider;
receiving a request associated with the primary execution environment
determining whether to create an additional execution environment to fulfill the request; and
as a result of a determination to create the additional execution environment, fulfilling the request by at least
creating the additional execution environment, to:
share at least a portion of a resource that allocated to the primary execution environment;
have virtual memory that is mapped to virtual memory of the primary execution environment, whereby:
the primary execution environment is unable to access a portion of virtual memory that is allocated to the additional execution
environment from virtual memory of the primary execution environment; and

the additional execution environment has read and write access to the portion;
process information communicated to the additional execution environment by the primary execution environment; and
be inaccessible to execution environments other than the primary execution environment.

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,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,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,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,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,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,294,507

TECHNIQUES FOR DATA SECURITY IN A MULTI-TENANT ENVIRONMENT

Amazon Technologies, Inc....

1. A computer-implemented method of managing transmissions in a multi-tenant environment, comprising:
storing, by a computing device, a piece of information in the multi-tenant environment, the multi-tenant environment operated
by a service provider;

applying, by a customer of the service provider, a security tag to the piece of information;
associating at least one policy with the security tag, the at least one policy being selected from a set of policies associated
with a plurality of customers of the service provider;

causing the at least one policy to be enforced on a first transmission of information having the security tag applied, the
at least one policy indicating at least whether to allow the first transmission based at least in part upon the security tag,
the transmission causing a first component resource having a first security level and located within a first region in the
multi-tenant environment to be associated with the security tag as a result of the transmission;

determining that the first component resource is instructed to send a second transmission to a destination resource not associated
with the security tag outside the multi-tenant environment; and

blocking the second transmission from being transmitted to a second resource having a second security level and located within
a second region based at least in part upon the security tag being applied to the first component resource;

wherein enforcing the at least one policy includes associating the security tag with at least one of a source of the transmission,
an intended recipient of the transmission, or an intermediate resource for the transmission and wherein enforcing the at least
one policy includes determining whether the transmission is allowed to be received from, or transmitted by a resource associated
with the security tag and having a second security level.

US Pat. No. 9,288,309

QUALITY-BASED PHONE ROUTING

Amazon Technologies, Inc....

1. A non-transitory computer-readable medium embodying a program executable in at least one computing device, the program,
when executed, causing the at least one computing device to at least:
add at least one detected dropped call and a plurality of call quality ratings for a plurality of previously completed calls
to aggregated call quality data;

determine a call location as a function of a predefined quantity of leading digits of a call endpoint phone number;
calculate a plurality of selection scores for a plurality of call routes as a function of the aggregated call quality data;
select, from the plurality of call routes, one of the plurality of call routes from a subset of the plurality of call routes
having a corresponding one of the plurality of call quality ratings meeting a threshold and having a lowest call cost with
respect to the subset;

select a trunk corresponding to the one of the plurality of call routes;
initiate a call via the trunk to the call endpoint phone number; and
wherein the aggregated call quality data comprises a call quality rating for at least one previously completed call.

US Pat. No. 9,253,284

HISTORICAL BROWSING SESSION MANAGEMENT

Amazon Technologies, Inc....

1. A system comprising:
one or more computer processors;
at least one computer memory accessible by at least one of the one or more computer processors; and
a network computing component comprising an executable software module executed by the one or more computer processors, the
network computing component configured to:

obtain one or more historical content representations associated with a client computing device, each of the one or more historical
content representations comprising a historical version of content referenced by content previously requested by the client
computing device, at a time that the previously requested content was requested by the client computing device;

identify at least one historical content representation of the one or more historical content representations based at least
partly on a determination that the at least one historical content representation has not previously been provided to the
client computing device, wherein the at least one historical content representation comprises a historical version of content
indirectly referenced by content previously requested by the client computing device, at the time that the previously requested
content was requested by the client computing device; and

provide the at least one historical content representation to the client computing device.

US Pat. No. 9,224,386

DISCRIMINATIVE LANGUAGE MODEL TRAINING USING A CONFUSION MATRIX

Amazon Technologies, Inc....

23. A non-transitory computer readable medium storing a computer-executable module, the computer-executable module, when executed
by one or more processors, causing the one or more processors to perform a process comprising:
generating a lattice comprising a plurality of recognition hypotheses for acoustic model training data,
wherein the acoustic model training data is associated with a transcription,
wherein the transcription comprises a sequence of one or more transcribed subword units,
wherein a first path through the lattice comprises a first sequence of one or more recognized subword units,
wherein each transcribed subword unit of the sequence of transcribed subword units comprises one of a plurality of language
subword units, and

wherein each recognized subword unit of the sequence of recognized subword units comprises one of the plurality of language
subword units;

calculating a substitution probability that a first language subword unit is substituted by a second language subword unit
based at least in part on a comparison of the first sequence of one or more recognized subword units to the sequence of one
or more transcribed subword units;

generating a confusion matrix using the substitution probability, wherein the confusion matrix comprises a plurality of substitution
probabilities;

updating language model training data to generate updated language model training data, wherein updating the language model
training data comprises adding an alternate transcription based at least partly on the transcription and the confusion matrix;
and

discriminatively training a language model using the updated language model training data.

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,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,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,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,317,175

INTEGRATION OF AN INDEPENDENT THREE-DIMENSIONAL RENDERING ENGINE

Amazon Technologies, Inc....

1. A computing device, comprising:
one or more processors;
a display screen;
memory including instructions that, when executed by the one or more processors, cause the computing device to:
render a first projection of a first three-dimensional (3D) graphical element using an independent 3D rendering library, the
independent 3D rendering library being separate from an inherent 3D rendering library of an operating system executing on
the computing device;

display, on the display screen, the first projection of the first 3D graphical element within a first user interface (UI)
element that can be configured by a UI framework of the operating system, the first UI element included in a layout container
of the UI framework;

estimate a position of a user with respect to the computing device;
render a second projection of the first 3D graphical element based at least in part upon the position of the user with respect
to the computing device, the second projection rendered using the independent 3D rendering library;

display, on the display screen, the second projection of the first 3D graphical element within the first UI element; and
display, on the display screen, a second graphical element within a second UI element, the second graphical element rendered
by a rendering library other than the independent 3D rendering library, the second UI element included in the layout container.

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,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,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,231,897

ESTIMATED VALUE RATINGS FOR ELECTRONIC MESSAGES

Amazon Technologies, Inc....

1. A system, comprising at least one processing circuit in at least one computing device, the at least one processing circuit
configured to at least:
generate an estimated value rating for an email message that is received from a sender relative to a recipient by scraping
content of the email message that is received and comparing the content that is scraped to characteristics of the recipient;

send the email message that is received from the sender along with the estimated value rating and a placeholder for an actual
value rating to the recipient;

receive an actual value rating from the recipient;
compare the actual value rating to the estimated value rating for the email message; and
change a pattern of sending email messages to the recipient or to other recipients over time in response to the actual value
rating being substantially less than the estimated value rating for the email message.

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,183,258

BEHAVIOR BASED PROCESSING OF CONTENT

Amazon Technologies, Inc....

1. A system for popularity-based processing of network content, the system comprising:
a proxy server comprising hardware configured to execute specific instructions, the proxy server operable to:
receive, from a client computing device, a request for a content page;
retrieve the content page requested by the client computing device;
identify, based at least in part on prior user interactions with the content page, including zoom interactions in which users
zoom-in on particular portions of the page, a portion of the content page that is unpopular relative to other portions of
the content page; and

in response to identifying the relatively unpopular portion of the content page:
adjust a quality characteristic of the relatively unpopular portion, wherein adjusting the quality characteristic comprises
generating a reduced-resolution representation of the relatively unpopular portion; and

transmit, to the client computing device, a modified version of the content page, the modified version comprising the reduced
resolution representation of the relatively unpopular portion such that a page load time is reduced.

US Pat. No. 9,182,589

ELECTROWETTING DISPLAY STRUCTURES

Amazon Technologies, Inc....

16. An electrowetting display comprising:
a transparent substrate including transparent spacers surrounded by recessed regions corresponding to pixel regions;
a layer of electrically conductive material on the transparent spacers, wherein the electrically conductive material is transparent;
color filter material in the recessed regions; and
a support plate covering the recessed regions and the transparent spacers, wherein:
the support plate includes pixel walls that partition a liquid into liquid portions that each correspond to pixels, and
each of the liquid portions is in physical contact with the layer of electrically conductive material.

US Pat. No. 9,122,981

DETECTING UNEXPECTED BEHAVIOR

Amazon Technologies, Inc....

1. A non-transitory computer-readable medium embodying a program executable in a computing device, the program comprising:
logic that generates at least one intent grouping associated with at least one historical path followed by a plurality of
users by comparing statistical measures of the at least one historical path, the at least one historical path comprising content
request information and information associated with a topology of a site;

logic that tracks a path followed by a user, the path corresponding to at least one of a collection of content requests and
being associated with the topology of the site;

logic that identifies a starting point associated with the path;
logic that identifies at least one subsequent step associated with the at least one intent grouping;
logic that determines whether a subsequent step associated with the path deviates from the at least one subsequent step, the
subsequent step being at least one of: following a hyperlink, visiting a product detail page, or completing a purchasing checkout
workflow;

logic that, in response to determining that the subsequent step associated with the path deviates from the at least one subsequent
step, identifies the path as associated with an unexpected behavior; and

logic that generates at least one of a remedial measure and a preventative measure in response to the unexpected behavior
wherein the at least one of the remedial measure and the preventative measure is at least one of raising a fraud risk measure
associated with a user corresponding to the path, diverting subsequent content requests associated with the path to at least
one alternative computing device, and initiating additional monitoring of the path.

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,460,220

CONTENT SELECTION BASED ON TARGET DEVICE CHARACTERISTICS

AMAZON TECHNOLOGIES, INC....

1. A system for recommending content, the system comprising:
a server comprising hardware configured to execute specific instructions, the server operable to:
receive, from a client device having a plurality of device characteristics, a request for a content page;
obtain historical request data associated with a plurality of requests for content pages from client devices, the client devices
each having at least one device characteristic that is similar to at least one device characteristic of the client device,
wherein the historical request data describes, at least, one or more performance metrics associated with content pages being
presented on client devices that have particular device characteristics;

determine a recommendation of a content page related to the requested content page based, at least in part, on the historical
request data and one or more of the plurality of device characteristics of the client device, wherein determining the recommendation
comprises:

calculating a popularity level for one or more content pages associated with the historical request data; and
selecting a content page based at least in part on the one or more popularity levels; and
transmit data regarding the recommendation to the client device.

US Pat. No. 9,407,722

SCHEDULED DEVICE COMMUNICATION

Amazon Technologies, Inc....

1. A method comprising:
receiving, by a processing device of a user device from a server, a schedule;
determining, by the processing device, a next delivery time of an item using the schedule upon occurrence of an event comprising
at least one of receipt of a new schedule, receipt of an updated schedule, or download of an instruction item from the server;

detecting a first attempt by the user device to switch to a sleep mode;
determining that the next delivery time is within a defined time interval from a time at which the first attempt to switch
to the sleep mode is detected;

deferring the sleep mode until after the next delivery time; and
contacting, by the processing device at the next delivery time, the server to request the item from the server in accordance
with the schedule.

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,391,440

ELECTRICAL PANEL STRUCTURES

Amazon Technologies, Inc....

1. A modular building system, comprising:
a plurality of rooms including at least a first room, a second room, and a third room;
a first wall or floor separating the first room from the second room;
a second wall or floor separating the second room from the third room;
a first electrical panel structure mounted on the first wall or floor, the first electrical panel structure comprising: (i)
a first frame mounted against a side of the first wall or floor facing the first room; (ii) a second frame mounted against
a side of the first wall or floor facing the second room; (iii) at least one first power conduit extending from the first
frame to the second frame and comprising first couplers at opposite ends thereof configured for rotatively coupling for connecting
power cabling extending into the first room with power cabling extending into the second room; and (iv) at least one first
pass-through conduit distinct from the at least one first power conduit, extending from the first frame to the second frame,
and passing data cabling through the first wall or floor; and

a second electrical panel structure mounted on the second wall or floor, the second electrical panel structure comprising:
(i) a third frame mounted against a side of the second wall or floor facing the second room; (ii) a fourth frame mounted against
a side of the second wall or floor facing the third room; (iii) at least one second power conduit extending from the third
frame to the fourth frame and comprising second couplers at opposite ends thereof configured for rotatively coupling for connecting
power cabling extending into the second room with power cabling extending into the third room; and (iv) at least one second
pass-through conduit distinct from the at least one second power conduit, extending from the third frame to the fourth frame,
and passing data cabling through the second wall or floor.

US Pat. No. 9,304,674

DEPTH-BASED DISPLAY NAVIGATION

Amazon Technologies, Inc....

13. One or more non-transitory computer-readable storage media storing computer-executable instructions that, when executed
by one or more processors, cause the one or more processors to perform acts comprising:
projecting a graphical representation of an object onto a display surface with a projector;
detecting a gesture of a hand over the graphical representation of the object;
projecting a control menu comprising a plurality of content layers that are visually arranged concentrically in a stack at
different depths relative to each other, wherein each content layer comprises one or more graphical controls that outwardly
border the graphical representation of the object;

detecting a first change in a distance of the hand from the display surface;
in response to detecting the first change, making the one or more graphical controls of a first content layer available for
selection;

detecting a second change in the distance of the hand from the display surface; and
in response to detecting the second change, making the one or more graphical controls of a second content layer available
for selection, and making the one or more graphical controls of the first content layer unavailable for selection.

US Pat. No. 9,261,759

ASPECT CORRECTED LASER VIDEO PROJECTION

Amazon Technologies, Inc....

1. A computer-implemented method comprising:
projecting, using a projector, an image onto a surface;
measuring one or more distances between the projector and one or more corresponding points of the surface;
determining whether the surface is non-perpendicular in relation to an optical path of the projector, based on the one or
more measured distances;

determining, based at least in part on the one or more measured distances, a distortion of one or more pixels of the projected
image caused by the surface being non-perpendicular in relation to the optical path of the projector; and

in conjunction with projecting the image onto the surface, varying a length and a height of one or more individual pixels
of the projected image substantially simultaneously based at least in part on the one or more measured distances to correct
for the distortion.

US Pat. No. 9,135,581

RESOURCE CONSTRAINED TASK SCHEDULING

Amazon Technologies, Inc....

1. A computer-implemented method, comprising:
constructing a linear model using a matrix variable having a value that represents a speed at which a computing task of a
set of computing tasks is executing on a computing resource at a particular time, the linear model including the set of computing
tasks, a linearly expressible goal of completing the set of computing tasks in a shortest duration of time, one or more linear
resource constraints, and one or more computing task dependencies;

solving the one or more linear resource constraints included in the linear model using at least one of Dantzig's simplex algorithm,
Karmarkar's algorithm, or a branch-and-cut method with Dantzig's simplex algorithm to obtain resource time prediction constraints;

calculating, using one or more hardware processors, shadow prices for the resource time prediction constraints using a dual
problem solving technique, wherein individual shadow prices represent a priority value for a corresponding computing task;

storing individual computing tasks of the set of computing tasks in a queue ordered according to corresponding shadow prices;
selecting, from the queue, a particular computing task with a highest priority value indicated by the corresponding shadow
price that is able to use an available computing resource; and

executing, by the available computing resource, the particular computing task with the highest priority value selected from
the queue.