US Pat. No. 10,091,905

DUAL-ACTION STORAGE MEDIA CHASSIS STRUCTURE AND SYSTEM

YANDEX EUROPE AG, Lucern...

1. A dual-action storage media chassis structure, comprising: a chassis including: a partition corridor defined by two inner slide walls longitudinally extending in the chassis; two storage spaces and two chain storage spaces symmetrically disposed on both sides of the partition corridor, respectively; and a central back storage space located between the chain storage spaces for accommodating a third-type of electronic component having a third operating temperature; two storage media modules accommodated respectively in the two storage spaces, each storage media module including: a tray frame, each tray frame including a top access opening, each tray frame for accommodating a second-type of electronic component having a second operating temperature in a back portion of the tray frame and for accommodating a first-type of electronic component having a first operating temperature in a front portion of the tray frame; and an extension having guiding structures extended along a side opposite to the corresponding inner side wall and connected to a chain structure formed by hollow passages; a cable is connected to the third type of electronic component through the guiding structures and the hollow passages and received in the chain storage space; two dual-action slide assemblies, each dual-action slide assembly including: o a corresponding one of the two inner slide walls and a respective inner slide panel longitudinally extending in the chassis and attached to the respective tray frame, the corresponding one of the two inner slide walls adapted for slideably receiving the respective inner slide panel; each dual-action slide assembly for longitudinally and slideably moving the respective tray frame between a received position, a first withdrawn position and a second withdrawn position; the front portion of a given tray frame, the back portion of the given tray frame and the central back storage space being disposed longitudinally sequentially in the dual-action storage media chassis structure from the front end thereof to a back end thereof, such that the second operating temperature is superior to the first operating temperature, and the third operating temperature is superior to the second operating temperature.

US Pat. No. 10,089,412

METHOD OF AND SYSTEM FOR PROCESSING A SEARCH QUERY

YANDEX EUROPE AG, Lucern...

1. A computer-implemented method of processing a search query received from an electronic device associated with a user, the method executable at a server, the method comprising:executing a search based on the search query to generate search results, at least one of the search results being associated with a search result resource;
accessing a register comprising multiple entries, a first entry of the multiple entries comprising a first pair associating a first resource to a first transaction service identifier, the first transaction service identifier associating the first resource to a specific first transaction platform of a plurality of different transaction platforms, a second entry of the multiple entries comprising a second pair associating a second resource to a second transaction service identifier, the second resource being different from the first resource, the second transaction service identifier being different from the first transaction service identifier, the second transaction service identifier associating the second resource to a specific second transaction platform of the plurality of different transaction platforms, the specific second transaction platform being different from the specific first transaction platform, at least one of the first and second entries comprising at least one parameter differentiating the specific first transaction platform from the specific second transaction platform;
determining via the register that the search result resource associated with the at least one of the search results corresponds to the first resource;
determining, by processing the at least one parameter of the at least one of the first and second entries, that the first resource is associated with the specific first transaction platform of the plurality of different transaction platforms;
upon the determining that the search result resource associated with the at least one of the search results corresponds to the first resource of the multiple entries of the register and that the first resource is associated to the specific first transaction platform, generating a graphical component associated with the first transaction service identifier and the specific first transaction platform of the plurality of different transaction platforms;
inserting the graphical component within a search result page (SERP), the SERP comprising control logic to cause, as a result of an interaction of the user with the graphical component, the rendering of a frame within the SERP allowing the user to complete a transaction, without leaving the SERP, with the specific first transaction platform of the plurality of different transaction platforms; and
transmitting the SERP to the electronic device for rendering on a display of the electronic device.

US Pat. No. 10,073,832

METHOD AND SYSTEM FOR TRANSCRIPTION OF A LEXICAL UNIT FROM A FIRST ALPHABET INTO A SECOND ALPHABET

YANDEX EUROPE AG, Lucern...

1. A method for transcription of a lexical unit from a first alphabet into a second alphabet, the method executable at a server, the server being connected to a client device over a communication network, the server executing a machine learning algorithm (MLA), the method comprising:acquiring, by the MLA, a pair of (i) the lexical unit in the first alphabet, and (ii) the corresponding transcription of the lexical unit in the second alphabet, the lexical unit and the corresponding transcription of the lexical unit having been divided into respective segments, such that:
within the pair, every segment of the lexical unit has a corresponding segment in the corresponding transcription of the lexical unit; and
each lexical unit comprises one of:
(i) a sequence of sequentially alternating vowel and consonant segments,
(ii) a single vowel segment,
(iii) a single consonant segment;
each vowel segment consisting of at least one vowel and each consonant segment consisting of at least one consonant;
defining, by the MLA, for each given segment of the lexical unit, its context;
training the MLA to calculate a theoretical frequency of at least one second alphabet character representing transcription of a particular given segment based on the context of said particular given segment of the lexical unit;
repeating the acquiring, the defining and the training with respect to a plurality of pairs, each respective pair comprising a respective lexical unit and a respective corresponding transcription;
receiving, from the client device, a request to transcribe a second lexical unit, from the first alphabet, into the second alphabet;
splitting the second lexical unit into one of:
(i) a single vowel segment,
(ii) a single consonant segment,
(iii) a sequence of sequentially alternating vowel and consonant segments;
applying, by the MLA, the theoretical frequency of the transcription of each segment of the second lexical unit, the theoretical frequency based on the context of each given segment in the second lexical unit;
generating, by the MLA, the transcription of the second lexical unit into the second alphabet; and
sending, to the client device, instructions to display on a display screen of the client device the transcription of the second lexical unit in the second alphabet to the user.

US Pat. No. 9,471,613

METHODS AND SYSTEMS FOR INDEXING REFERENCES TO DOCUMENTS OF A DATABASE AND FOR LOCATING DOCUMENTS IN THE DATABASE

YANDEX EUROPE AG, Lucern...

1. A method for indexing references to documents of a database, the method comprising:
receiving a document, at the database, from a server;
storing the document in the database;
extracting a searchable term from the document, the searchable term being associated with a posting list;
dividing the posting list into blocks, each block comprising M database references;
for each block:
determining an encoding pattern based on values of the M database references, the determining the encoding pattern comprises:
determining a number n of patches according to a number of references, among the M database references, that are greater than
or equal to 2b; and

if n>0:
calculating, for each of n patches, a patch value vk by deleting b least significant bits from a corresponding one of the M database references that are greater than or equal
to 2b, wherein k is in a range from 1 to n, and

determining, for each of the n patches, a patch position pk corresponding to a position, in a range of 0 to M?1, of the corresponding one of the M database references that are greater
than or equal to 2b;

wherein the encoding pattern comprises b, n, p1 . . . pn, v1 . . . vn;

locating an encoding pattern table entry corresponding to the encoding pattern;
inserting a pointer corresponding to the located encoding pattern table entry in a header for the block; and
inserting in the block a sequence of M truncated references, each truncated reference comprising b least significant bits
of a corresponding one of the M database references.

US Pat. No. 9,971,762

SYSTEM AND METHOD FOR DETECTING MEANINGLESS LEXICAL UNITS IN A TEXT OF A MESSAGE

YANDEX EUROPE AG, Lucern...

1. A computer implemented method for detecting meaningless lexical units in an electronic message received by a server as to generate an abstract of the electronic message, the method comprising:(i) performing, by the server, a syntax analysis of a most significant part of the electronic message and determining at least one lexical unit as a first potential meaningless lexical unit, the first potential meaningless lexical unit comprising a plurality of control elements, the most significant part of the electronic message having been determined by analyzing a most significant logical block of source code from a plurality of the logical blocks of a source code of the electronic message;
(ii) determining, by the server, a numerical control sum of the first potential meaningless lexical unit, the numerical control sum being based on the plurality of control elements having a respective numeric value representative of the first potential meaningless lexical unit;
(iii) using the numerical control sum, accessing a lexical unit database located on the server, the lexical unit database containing a plurality of pre-determined meaningless lexical units with their associated pre-determined numerical control sums;
(iv) determining, by the server, the first potential meaningless lexical unit is a meaningless lexical unit if the lexical units database includes at least one meaningless lexical unit with the pre-determined numerical control sum matching the numerical control sum of the first potential meaningless lexical unit, the matching comprising checking a measure of a difference between the numerical control sums and determining the numerical control sums as matching if the measure of the difference is within a predefined permissible amplitude of the difference;
(v) if the first potential meaningless lexical unit is determined to be the meaningless lexical unit, generating, by the server, the abstract of the electronic message, the abstract not including the at least one meaningless lexical unit.

US Pat. No. 9,450,903

METHOD OF AND SYSTEM FOR PROCESSING AN E-MAIL MESSAGE TO DETERMINE A CATEGORIZATION THEREOF

YANDEX EUROPE AG, Luzern...

1. A method of processing an e-mail message to determine a categorization thereof after a determination whether the e-mail
message is junk e-mail was made, the categorization including a sender type and a message type, the method comprising:
receiving an e-mail message by at least one server, the e-mail message including a header having a plurality of header fields
and body having content;

if the e-mail message is not junk e-mail, determining, by the at least one server, the sender type of the e-mail message,
the sender type being one from a plurality of potential sender types, via a first analysis of the header and the body, the
first analysis including application of at least one first complex rule, each applied first complex rule including a first
plurality of elementary rules specific to that applied first complex rule, at least some of the first plurality of elementary
rules specific to that applied first complex rule including a regular expression analysis;

if the e-mail message is not junk e-mail, determining, by the at least one server, at least one message type of the e-mail
message, a message type being one from a plurality of potential message types, via a second analysis of the header and the
body, the second analysis being distinct from the first analysis, the second analysis including application of at least one
second complex rule, each applied second complex rule including a second plurality of elementary rules specific to that applied
second complex rule, at least some of the second plurality of elementary rules specific to that applied second complex rule
including a regular expression analysis, the second plurality of elementary rules being distinct from the first plurality
of elementary rules, the determination of the at least one message type being independent of the determination of the sender
type; and

determining the categorization of the e-mail message, the categorization including the determined sender type of the e-mail
message and the determined at least one message type of the e-mail message.

US Pat. No. 9,322,666

METHOD FOR DISPLAYING A POSITION ON A MAP

YANDEX EUROPE AG, Luzern...

1. A computer-implemented method for displaying a position on a map, the method executable by an electronic device causing
displaying of the map, the method comprising:
appreciating coordinates of the position;
appreciating coordinates of an object having a curve near the position;
identifying a point of the curve nearest to the position, said identifying comprising
identifying a first segment of the curve bounded by a first region and a second segment of the curve bounded by a second region;
wherein

identifying the first segment of the curve bounded by the first region and the second segment of the curve bounded by the
second region comprises dividing a monotonic segment of the curve into segments including the first segment and the second
segment; and wherein

dividing the monotonic segment of the curve into segments including the first segment and the second segment comprises dividing
the monotonic segment of the curve into segments including the first segment and the second segment such that the second segment
monotonically progresses away from the position from a known nearest point of the second region

determining that a distance from the position to a point of the first segment is not greater than a distance from the position
to a known nearest point of the second region; and

calculating a shortest distance from the position to the first segment as a shortest distance from the position to either
of the first segment and the second segment without calculating a distance from the position to at least one point of the
second segment other than the known nearest point of the second region; and

causing displaying, on the map, of an indication of the point of the curve nearest to the position.

US Pat. No. 10,074,271

METHODS AND SYSTEMS FOR GENERATING A TRAFFIC PREDICTION

YANDEX EUROPE AG, Lucern...

1. A method of generating a traffic prediction for a target zone, the target zone being defined by first boundary coordinates having been geometrically predetermined, traffic in the target zone being caused by a plurality of vehicles located in the target zone at a given moment in time, the plurality of vehicles comprising feedback vehicles and non-feedback vehicles, each of the feedback vehicles being associated with a respective navigational device, the navigational devices being communicatively coupled to a server by a communication network and configured to provide respective feedback signals to the server, the method being executable on the server and comprising:tracking, by the server, a feedback signal of each one of a first plurality of navigational devices entering a traffic sample zone, the traffic sample zone being defined by second boundary coordinates having been geometrically predetermined, the traffic sample zone being associated with traffic characteristics, the traffic characteristics being indicative of a maximum possible number of vehicles that can be located in the traffic sample zone at once, each feedback signal comprising positional coordinates of a respective one of the first plurality of navigational devices;
processing, by the server, the feedback signals tracked for the first plurality of navigational devices, the processing comprising:
determining, by the server, an actual number of feedback vehicles located in the traffic sample zone at a first moment in time by comparing the positional coordinates of each one of the first plurality of navigational devices against the second boundary coordinates at the first moment in time;
computing, by the server, a fill rate parameter of the traffic sample zone at the first moment in time based on (i) the positional coordinates of at least one navigational device within the second boundary coordinates, (ii) the second boundary coordinates and (iii) the traffic characteristics, the fill rate parameter being indicative of an estimated total number of vehicles located in the traffic sample zone at the first moment in time; and
determining, by the server, a feedback ratio associated with the traffic sample zone and being a ratio between (i) the estimated total number of vehicles located in the traffic sample zone and (ii) the actual number of feedback vehicles located in the traffic sample zone, the feedback ratio being indicative of an estimated proportion of feedback vehicles and of non-feedback vehicles located in the traffic sample zone;
determining, by the server, an actual number of feedback vehicles located in the target zone based on a feedback signal of each one of a second plurality of navigational devices entering the target zone; and
generating, by the server, the traffic prediction for the target zone based on (i) the actual number of feedback vehicles in the target zone and (ii) the feedback ratio, the traffic predication being indicative of an estimated number of non-feedback vehicles within the plurality of vehicles causing traffic in the target zone.

US Pat. No. 9,459,095

METHOD FOR DETERMINING WHETHER A POINT LIES ALONG A CURVE IN A MULTIDIMENSIONAL SPACE

YANDEX EUROPE AG, Luzern...

1. A computer-implemented method for determining whether a point lies along a first curve in a multidimensional space, the
method executable by a processor of an electronic device, the point and the first curve being presented on a display interface
of the electronic device, the point on the display interface corresponding to a click from a user of the electronic device,
the method comprising:
determining first curve coordinates defining each of a position and a form of the first curve generated in the multidimensional
space and presented on the display interface;

based on the first curve coordinates, identifying regions of the multidimensional space each encompassing a respective portion
of the first curve while generating a second curve approximating the first curve, the identifying the regions including:

identifying a first set of the regions while generating a first version of the second curve, the first version of the second
curve being a first polygonal chain, and

identifying a second set of the regions while generating a second version of the second curve, the second version of the second
curve being a second polygonal chain having more line segments than the first polygonal chain;

storing, in a non-transitory computer-readable medium, region coordinates of at least one of the regions;
analyzing the region coordinates and point coordinates defining a position of the point in the multidimensional space, the
analyzing being configured for providing, on the display interface, one of:

an indication that the point lies along the first curve, the indication that the point lies along the first curve being an
indication that the user has clicked on the first curve; and

an indication that the point does not lie along the first curve, the indication that the point does not lie along the first
curve being an indication that the user has not clicked on the first curve.

US Pat. No. 9,501,575

SEARCH RESULT RANKER

YANDEX EUROPE AG, Lucern...

1. A computerized method for optimizing search result rankings obtained from a search result ranker, the search result ranker
executing a search result ranking algorithm, the method comprising:
retrieving a first set of query-document pairs, each query-document pair of the first set having an associated post-impression
features vector representative of a number of post-impression features associated with a document of the query-document pair;

generating an original weight vector having a number of originally-assigned weights corresponding to the number of post-impression
features in each of the post-impression features vector of the first set;

generating a target function by using the weight vector and the post-impression features vectors of the first set, the original
weight vector having the number of originally-assigned weights of the first set;

using a performance metric associated with the search ranking algorithm, optimizing the originally-assigned weights of the
weight vector using the first set of query-document pairs to obtain an optimized target function, the optimized target function
including a number of optimized weights, the optimized weights of the optimized target function representative of an impact
of each post-impression feature of the post-impression features vector to a determination of a relevance of the document,
the optimizing being executed such that the performance metric of the search ranking algorithm is maximized;

using the optimized target function, generating a relevance label for each query-document pair of the first set;
optimizing the search result ranking algorithm using a relevance label of each query-document pair of the first set generated
by the optimized target function; and

using the optimized search result ranking algorithm to rank search results.

US Pat. No. 9,507,877

METHOD OF AND SYSTEM FOR STORING SPATIAL OBJECTS

YANDEX EUROPE AG, Lucern...

1. A method of retrieving an object list, the method executable at a server coupled to a database, the database storing a
quadrant tree comprising plurality of objects and a respective database entry storing detailed information for each one of
the plurality objects, the quadrant tree including elements of the quadrant tree, each element of the quadrant tree being
one of: a node and a leaf of the quadrant tree; an n-element of the quadrant tree being one of: a first element of a first
level of the quadrant tree, a second element of the first level of the quadrant tree, a third element of the first level of
the quadrant tree and a fourth element of the first level of the quadrant tree, and the n-element comprising four elements
of a second level of the quadrant tree, the method comprising:
aligning the quadrant tree into a singly linked linear list, the singly linked linear list being a data structure stored in
the database, by:

placing a first, a second, a third and a fourth markers of the first level, that correspond to a reference to the first, the
second, the third and the fourth elements of the first level of the quadrant tree, into the singly linked linear list;

placing respective objects stored in any of: the first, the second, the third and the fourth element of the first level of
the quadrant tree after a respective one of the first, the second, the third and the fourth marker of the first level accordingly
into the singly linked linear list;

placing a first, a second, a third and a fourth markers of the second level, that correspond to a reference to a first, a
second, a third and a fourth elements of the second level of the quadrant tree, into the singly linked linear list, and wherein
the placing

is after one of the first, the second, the third and the fourth marker of the first level related to the n-element of the
quadrant tree, and before directly following a first marker of a third level, when the fourth element of the second level
of quadrant tree is a quadrant tree node;

is after one of the first, the second, the third and the fourth marker of the first level related to the n-element of the
quadrant tree, and before a directly following another marker of the same level when the n-element of the first level of quadrant
tree is one of: the first, the second, the third element of the first level of quadrant tree, and when the fourth element
of the second level of quadrant tree is the leaf of quadrant tree;

is after the fourth marker of the first level, when the n-element of the first level of the quadrant tree is the fourth element
of the first level of quadrant tree, and when the fourth element of the second level of quadrant tree is the leaf of the quadrant
tree;

placing objects stored in any one of: the first, the second, the third and the fourth element of the second level of the quadrant
tree into the singly linked linear list, the placing executed after the first, the second, the third and the fourth markers
of second level accordingly;

receiving from an electronic device associated with a user, a request for providing to the electronic device the object list
placed in the n-element of the quadrant tree and in the four elements of the second level of the n-element comprising the
n-element of the quadrant tree, the request being a selection of a corresponding fragment of space by the user;

identifying the n-element of the quadrant tree as corresponding to the fragment of the space selected by the user;
retrieving, from the database, the object list and the detailed information associated with each of the objects associated
with the object list, placed in said n-element of the quadrant tree and in said four elements of the second level of the quadrant
tree, by selecting objects placed in the singly linked linear list based on a certain interval of the markers referenced by
the n-element of the quadrant tree corresponding to the fragment of the space selected by the user, the certain interval being
the n-element of the first level of the quadrant tree covering the selected fragment of space; and

transmitting to the electronic device the object list with the detailed information associated with each of the objects associated
with the objet list.

US Pat. No. 9,443,017

SYSTEM AND METHOD FOR DISPLAYING SEARCH RESULTS

Yandex Europe AG, Lucern...

1. A method for showing search information on a screen, the method comprising:
providing a user interface comprising:
a first user interface component for receiving one or more elements of a search query input from a user, and
a second interface component having a dual functionality, including (i) providing a preview of an integer number of search
results corresponding to at least a portion of the search query input without showing contents of the search results, and
(ii) receiving a user input that causes display of at least a portion of contents of the search results;

receiving, via the first user interface component, one or more elements of the search query input from the user;
processing, by a processor, the search query having the one or more received inputs prior to the user finalizing and submitting
the search query;

dynamically determining and updating, by the processor, an integer number of search results as the first user interface component
continues to receive the one or more elements of the search query input from the user;

dynamically providing for display to the user, via the second user interface component, only the integer number of search
results corresponding to at least a portion of the processed search query input without showing on the screen any additional
information relating to the search results;

detecting, by the processor, activation of the second user interface component by the user; and
providing for display to the user at least a portion of the search results in response to the activation of the second user
interface component.

US Pat. No. 10,073,913

SYSTEM AND METHOD FOR DISPLAYING OF MOST RELEVANT VERTICAL SEARCH RESULTS

Yandex Europe AG, Lucern...

1. A method of conducting a search and presenting results, the method executable at a server, the method comprising:receiving a search query from an electronic device associated with a user;
responsive to the search query, generating a search query result set, the search query result set including a vertical search result;
determining a confidence level that the vertical search result is the most relevant to the search query;
responsive to the confidence level being above a pre-determined threshold, causing the electronic device to display exclusively the vertical search result;
responsive to the confidence level being below the pre-determined threshold, causing the electronic device to display a standard search result page (SERP);
wherein said causing the electronic device to display the standard SERP comprises causing the electronic device to display both the general search results and the vertical search results; and
wherein said causing the electronic device to display both the general search results and the vertical search results includes causing the electronic device to display a widget application reflecting the vertical search result.

US Pat. No. 9,519,667

METHOD OF SPATIAL STORAGE OF AN OBJECT BY MEANS OF A FLEXIBLE HIERARCHICAL STRUCTURE, AND A NON-TRANSIENT STORAGE MEDIUM

YANDEX EUROPE AG, Lucern...

1. A method for the spatial storage of an object by means of a flexible hierarchical structure, the flexible hierarchical
structure containing a set of elements of an n-tree, the method executable at a server, the server comprising a non-transitory
storage medium for storing the flexible hierarchical structure and a network communication interface for two-way communication
with a client device associated with a user and an electronic device via a data transmission network, the method comprising:
obtaining, by the server from the electronic device via the data transmission network, an object for placement in one of the
set of elements of the n-tree;

determining, by the server, the most suitable element of the n-tree for the placement of the object;
determining, by the server, if a boundary of the object goes beyond boundaries of the most suitable element of the n-tree
that is intersected by a portion of the object when the object is placed in the element of the n-tree;

increasing, by the server, a size of the most suitable element of the n-tree in a single direction only by adding to the most
suitable element a zone of presence of the object, a boundary of the zone of presence of the object being distant from the
boundary of the most suitable element of the n-tree by a maximum value of projection of the object beyond the boundaries of
the most suitable element of the n-tree; and

receiving, by the server from the client device via the data transmission network, a user request by means of the user selecting
on a display of the client device the zone of presence of the object;

causing, by the server, a presentation of the object associated with the most suitable element of the n-tree by means of the
display of the client device.

US Pat. No. 9,294,435

METHOD OF AND SYSTEM FOR PROVIDING A CLIENT DEVICE WITH AN AUTOMATIC UPDATE OF AN IP ADDRESS ASSOCIATED WITH A DOMAIN NAME

YANDEX EUROPE AG, Lucern...

1. A method of providing a client device with an automatic update of at least one IP address associated with a domain name,
by at least one server via a communications network, the method comprising:
(a) if the domain name is a member of a second set of domain names, the second set being a subset of a first set of domain
names,

(i) obtaining by the at least one server from a first domain name resolution service at least one first IP address associated
with the domain name, and

(ii) storing by the at least one server in a database in communication with the at least one server at least one address record
including the domain name and the at least one first IP address;

(b) if the domain name is a member of a third set of domain names, the third set being a subset of the second set of domain
names, sending to the client device by the at least one server the at least one first IP address;

(c) if the domain name is a member of the second set of domain names, and if at least one second IP address associated with
the domain name being different from the at least one first IP address is obtainable by the at least one server from a second
domain name resolution service after the at least one server has obtained the at least one first IP address,

(iii) obtaining by the at least one server from the second domain name resolution service the at least one second IP address,
and

(iv) storing by the at least one server in the database an address record including the domain name and the at least one second
IP address; and

(d) if the domain name is a member of the third set of domain names, sending by the at least one server to the client device
the at least one second IP address without the at least one server having received from the client device a request for at
least one IP address associated with the domain name after the at least one server has sent to the client device the at least
one first IP address.

US Pat. No. 9,477,716

METHOD OF AND SYSTEM FOR RANKING ELEMENTS OF A NETWORK RESOURCE FOR A USER

YANDEX EUROPE AG, Lucern...

1. A method of ranking elements of a first network resource for a first user, the first network resource being hosted by a
first server, the method comprising, at a second server in communication with the first server via a communications network:
(a) receiving an indication of the elements from the first server;
(b) receiving an indication of the first user;
(c) based on at least one of the indication of the elements and the indication of the first user, acquiring information about
a past interaction of the first user with a second network resource, the second network resource being distinct from the first
network resource;

(d) based on the information about the past interaction, generating a first context information associated with the first
user;

(e) based on the first context information associated with the first user, determining a second user, the second user associated
with a second context information that matches, at least partially, the first context information; the second context information
containing a relevancy factor that is not contained within the first context information; and

(f) based at least in part on the relevancy factor, determining a ranking of the elements by relevance to the first user and
a most relevant one of the elements.

US Pat. No. 9,449,079

METHOD OF AND SYSTEM FOR DISPLAYING A PLURALITY OF USER-SELECTABLE REFINEMENTS TO A SEARCH QUERY

YANDEX EUROPE AG, Lucern...

1. A method of displaying by a client application running on at least one digital electronic device in communication with
a search engine a plurality of user-selectable refinements to a first search query including at least one first search term,
the method comprising:
(a) sending by the client application to the search engine the first search query;
(b) receiving by the client application from the search engine first search results in respect of the first search query and
first suggested search query refinements having been dynamically determined by the search engine based at least in part on
an analysis of groups of related search queries being related to the first search query, the analysis of groups including:

determining the related search queries as being meaningful based on past user behaviours by filtering the related search queries
to only those identified as having provided search results which provided a user with information sought by the user;

grouping the meaningful related search queries into the groups based on past behaviors of users with search results that are
provided in response to the meaningful related search queries, wherein the past behaviors of users include common Internet
resources having been visited by the users after they were provided with the search results in response to the meaningful
related search queries; and

determining a first suggested search query refinement for each group based on a comparison of the first search query and the
meaningful related search queries of a respective group, each of the first suggested search query refinements corresponding
to a refined search query including the at least one first search term and at least one additional search term derived from
one of the meaningful related search queries, the one of the meaningful related search queries having been determined as being
the most popular in its respective group, the at least one additional search term having being determined as being the most
unique as compared with previously identified suggested search query refinements;

(c) displaying by the client application at least one first search result and, apart from a search bar, the first suggested
search query refinements, the first suggested search query refinements being selectable by a user via at least one first graphical
object;

(d) receiving by the client application from a user via the at least one first graphical object a first selection of one of
the first suggested search query refinements, the first selection corresponding to a first refined search query including
the at least one first search term and at least one first additional search term;

(e) receiving by the client application from the search engine first refined search results in respect of the first refined
search query; and

(f) displaying by the client application at least one first refined search result and a visual representation of a refinement
relationship between the first search query and the first refined search query.

US Pat. No. 10,003,924

METHOD OF AND SERVER FOR PROCESSING WIRELESS DEVICE SENSOR DATA TO GENERATE AN ENTITY VECTOR ASSOCIATED WITH A PHYSICAL LOCATION

YANDEX EUROPE AG, Lucern...

1. A method executable at a server,the server being a part of a system,
the system including a plurality of user-wireless-devices accessible by the server via a communication network;
each of the plurality of user-wireless-devices including at least two sensors, each of the at least two sensors outputting a respective sensed parameter;
the server hosting a repository of user profiles;
the method comprising:
for a given geographical location:
receiving, by the server, from at least a portion of the plurality of user-wireless-devices, the at least the portion of the plurality of user-wireless-devices being temporally-associated with the given geographical location within a first period of time, a first sensed parameter from a first sensor and a second sensed parameter from a second sensor, the first sensed parameter and the second sensed parameter having been captured during the user-wireless-device being temporally-associated with the given geographical location;
for the each of the at least the portion of the plurality of user-wireless-devices, retrieving an associated user profile;
for each user-wireless-device of the portion of the plurality of user-wireless-devices, analyzing the first sensed parameter, the second sensed parameter, and the user profile to generate, respectively, a given-user first parameter vector, a given-user second parameter vector, and a given-user user profile vector;
aggregating, each user-wireless devices' (i) given-user first parameter vector, (ii) given-user second parameter vector, and (iii) the given-user user profile vector into a pool of vectors;
applying at least two analysis models to the pool of vectors, each analysis model generating its respective pooled-data vector;
based on the at least two respective pooled-data vectors, generating an entity-vector associated with the at least one geographical location.

US Pat. No. 9,558,272

METHOD OF AND A SYSTEM FOR MATCHING AUDIO TRACKS USING CHROMAPRINTS WITH A FAST CANDIDATE SELECTION ROUTINE

YANDEX EUROPE AG, Luzern...

1. A computer-implemented method of matching of a first incoming audio track with an indexed audio track, the method executable
at a server, the method comprising:
selecting the indexed audio track as a candidate audio track from a plurality of indexed audio tracks, the selecting by executing
steps of:

determining a first short audio fingerprint, the first short audio fingerprint being an audio fingerprint of a first portion
of the first incoming audio track, the first short audio fingerprint comprising a first chroma word, the first portion of
the first audio track being of a first predetermined duration from a start of the first incoming audio track;

determining the candidate audio track from a set of indexed audio tracks, the candidate audio track having a second short
audio fingerprint that contains a second chroma word, a beginning portion of the second chroma word being identical to a beginning
portion of the first chroma word, the beginning portion of the second chroma word being a sub-plurality of bytes having a
first byte and a following byte, the candidate audio track being indexed in a posting list within a set of posting lists amongst
a plurality of sets of posting lists, each posting list within the set of posting lists being associated with respective chroma
words having a same first byte and a different following byte, the different following byte being unique for each posting
list, the second short audio fingerprint being an audio fingerprint of a first portion of the candidate audio track, the first
portion of the candidate audio track being of said first predetermined duration from a start of the candidate audio track,

validating the candidate audio track against the first audio track by executing steps of:
determining a first long audio fingerprint, the first long audio fingerprint being an audio fingerprint of a second portion
of the first incoming audio track;

retrieving a second long audio fingerprint, the second long audio fingerprint being an audio fingerprint of a second portion
of the candidate audio track;

each of the second portion of the first audio track and the second portion of the candidate audio track are of a second predetermined
duration from the start of the respective one of the first audio track and the candidate audio track;

each of the first portion of the respective one of the first audio track and the candidate audio track being fully contained
within the second portion of the respective one of the first audio track and the candidate audio track

performing bit-by-bit comparing of the first long audio fingerprint with the second long audio fingerprint.

US Pat. No. 9,525,654

METHOD OF AND SYSTEM FOR REFORMATTING AN E-MAIL MESSAGE BASED ON A CATEGORIZATION THEREOF

YANDEX EUROPE AG, Lucern...

1. A method of reformatting an e-mail message having a header and a body having content in a received format, the method comprising:
receiving, by at least one server via a communications network, the e-mail message;
saving, by the at least one server, the e-mail message in a database in communication with the at least one server;
receiving, by the at least one server from a client device, a request to retrieve the e-mail message;
retrieving, by the at least one server, the e-mail message from at least one database;
determining, by the at least one server, a classification of the e-mail message from the at least one database, the classification
including a sender type and at least one message type;

sending, by the at least one server to the client device, at least some of the content of the body of the message; and
sending, by the at least one server to the client device, instruction to display, along with the content, a user-selectable
graphical element for causing a function to be performed in respect of the one of the e-mail messages, the function being
based, at least in part, on the classification of the first one of the e-mail messages.

US Pat. No. 10,043,510

METHOD AND SYSTEM FOR AUTOMATIC DETERMINATION OF STRESS POSITION IN WORD FORMS

Yandex Europe AG, Lucern...

1. A method for building a reference system for determining, by a computing device, a stress position of a new word form, the method comprising:sorting, in a reverse lexicographic order, a plurality of word forms, each word form of the plurality of word forms being marked with a particular stress position, in order to generate a plurality of sorted word forms,
clustering the plurality of sorted word forms into a plurality of clusters of word forms such that the plurality of clusters of word forms comprises a plurality of terminal clusters, each terminal cluster of the plurality of terminal clusters comprising word forms having both: (i) a same ending being a terminal common ending, and (ii) a same stress position, a combination of the terminal common ending and said same stress position being unique;
building, using the plurality of terminal clusters, the reference system for determining the stress position of the new word form, the reference system having a reference to at least one terminal cluster of the plurality of terminal clusters, the at least one terminal cluster comprising an indication of the particular stress position proper to word forms which are included in that respective terminal cluster.

US Pat. No. 9,581,459

METHOD FOR DISPLAYING A POSITION ON A MAP

YANDEX EUROPE AG, Lucern...

1. A computer-implemented method of operating a mapping application, the method executable by a processor of an electronic
device comprising a display interface, the display interface causing display of a map, the method comprising:
receiving a first coordinate indicative of a position associated with the electronic device;
receiving a second coordinate of an object having a curve displayable on the map near the position;
determining if the first coordinate lies on the curve;
upon determining that the first coordinate does not lie on the curve, identifying a point of the curve nearest to the position,
said identifying comprising

identifying a first segment of the curve bounded by a first region and a second segment of the curve bounded by a second region;
determining that a distance from the position to a point of the first segment is not greater than a distance from the position
to a known nearest point of the second region; and

calculating a shortest distance from the position to the first segment as a shortest distance from the position to either
of the first segment and the second segment without calculating, by the processor, a distance from the position to at least
one point of the second segment other than the known nearest point of the second region; and

displaying, by the display interface, an indication of the point of the curve nearest to the first coordinate on the map,
the indication being indicative of a correct position associated with the electronic device.

US Pat. No. 9,996,702

SYSTEM FOR AND METHOD OF DATA PROCESSING IN A COMPUTER-IMPLEMENTED SYSTEM

YANDEX EUROPE AG, Lucern...

1. A computer-implemented system for processing a user device request to process a user data portion, the computer-implemented system comprising:a server having a processor, the processor having a user space and a kernel space, the processor configured to perform:
receiving the user device request to process the user data portion from a user device,
upon receiving the user device request, reading the user data portion from a database at the server,
allocating space at the processor to define a sandbox environment, the sandbox environment defining a kernel space commands set of the processor to perform processing of the user data portion,
isolating the processor within the sandbox environment from the user space in order to perform isolated execution of the user device request by the kernel space commands set,
processing the user data portion by the processor within the sandbox environment,
de-isolating the sandbox environment from the user space by returning an indication of a processed user data portion, and
writing the indication of the processed user data portion to the user space of the processor; and
the processor being further configured to perform:
upon receiving the user device request for the user data portion processing from the user device, determining that the user device request comprises the at least one non-standard command,
transmitting the user device request to a temporal processor space,
modifying, in the temporal processor space, the user device request for the user data portion processing, said modifying including translating the at least one non-standard command into at least one kernel space command from the kernel space commands set,
transmitting the modified user device request to the kernel space of the processor, and
resuming with said reading the user data portion from the database at the server.

US Pat. No. 9,934,757

METHOD AND SYSTEM OF DOWNLOADING IMAGE TILES ONTO A CLIENT DEVICE

YANDEX EUROPE AG, Lucern...

1. A method for downloading image tile data from a server to a client device,the image tile data being organized, by the server, in a hierarchal structure, where each level of the hierarchal structure stores a subset of image tiles associated with a particular resolution level;
the client device including a memory and an output device, the client device being connectable to the server via a communication network, the output device displaying a first image view, the first image view being associated with a first viewport and a first resolution level, the first image view being generated using a portion of the plurality of the first-level image tiles associated with the first resolution level, the portion being determined by the first viewport;
the portion of the plurality of the first-level image tiles having been (i) downloaded by the client device from the server and (ii) stored by the client device in the memory to enable rendering thereof;
the method being executable by the server;
the method comprising:
receiving, from the client device, a request for a plurality of second-level image tiles to replace the plurality of first-level image tiles to display a second image view, the second image view being associated with a second view port and a second resolution level, the second resolution level being larger than the first resolution level; each image tile of the plurality of first-level image tiles having four child second-level image tiles within the plurality of second-level image tiles as defined by the hierarchal structure;
determining an anchor point of the first image view;
based on the anchor point, determining a first anchor image tile of the first-level image tiles;
using the hierarchical structure, determining a corresponding four child second-level image tiles, the corresponding four-child second-level image tiles forming a second anchor image tile;
sending to the client device the second anchor image tile, the sending configured to cause the client device to:
replace, in the memory, the first anchor image tile with the second anchor image tile;
replace, on the output device, the first anchor image tile with the second anchor image tile.

US Pat. No. 9,830,397

METHOD AND COMPUTER-BASED SYSTEM FOR PROCESSING A SEARCH QUERY FROM A USER ASSOCIATED WITH AN ELECTRONIC DEVICE

YANDEX EUROPE AG, Luzern...

1. A computer-implemented method of processing a search query from a user associated with an electronic device, the method
executable at a server coupled to the electronic device via a communication network, the method comprising:
receiving, from the electronic device, via the communication network, the search query;
determining, by a processor of the server, an indication associated with a geographical location associated with the user;
determining, by the processor of the server, an indication associated with a scenario chosen from a plurality of scenarios,
each of the scenario comprising data indicative of associated objects to the chosen scenario and defining a sequence of events;

generating a first result set and a second result set associated with the search query, the first result set grouping at least
two objects of interest of a first type, the second result set grouping at least two objects of interest of a second type,
the second type being different from the first type, each one of the first result set and the second result set being obtained
by executing:

determining, by the processor of the server, an indication associated with a first object of interest based on an analysis
of data associated with the first object of interest, the indication associated with the geographical location and the indication
associated with the scenario;

determining, by the processor of the server, an indication associated with a second object of interest based on an analysis
of data associated with the second object of interest, the indication associated with the geographical location and the indication
associated with the scenario;

executing an ordering routine to sequentially order the indication associated with the first and second objects of interest,
the ordering routine reflecting a priority of the objects of interests rather than a particular order that the user should
follow in real-life;

compiling, by the processor of the server, the first and second result set, each result set comprising the indication of the
first object of interest and the indication of the second object of interest;

storing, in a non-transitory computer-readable medium accessible by the server, the first result set and the second result
set; and

triggering the electronic device to display the first result set and the second result set to the user.

US Pat. No. 9,749,275

METHOD OF AND SYSTEM FOR CONSTRUCTING A LISTING OF E-MAIL MESSAGES

YANDEX EUROPE AG, Lucern...

1. A method of constructing a listing of e-mail messages, the method comprising:
retrieving, by at least one server, information in respect of a plurality of e-mail messages from at least one database in
electronic communication with the at least one server, each e-mail message including a header having a plurality of header
fields and a body having content;

sending, by the at least one server to a client device via a communications network, instruction to display in one of an e-mail
message listing pane or an e-mail message listing window in a graphical user interface of the client device, a listing of
e-mails, the listing including in respect of at least some of the e-mail messages listing information including at least some
of the header fields;

for at least some of the e-mail messages, one of determining a classification of the e-mail messages by the at least one server
and retrieving from the database a classification of the e-mail messages by the at least one server, the classification including
a sender type and at least one message type, the sender type having been determined from a plurality of potential sender types,
via a first analysis of the header and the body, the first analysis including application of at least one first complex rule,
each applied first complex rule including a first plurality of elementary rules specific to that applied first complex rule,
at least some of the first plurality of elementary rules specific to that applied first complex rule including a regular expression
analysis, the at least one message type having been determined from a plurality of potential message types, via a second analysis
of the header and the body, the second analysis being distinct from the first analysis, the second analysis including application
of at least one second complex rule, each applied second complex rule including a second plurality of elementary rules specific
to that applied second complex rule, at least some of the second plurality of elementary rules specific to that applied second
complex rule including a regular expression analysis, the second plurality of elementary rules being distinct from the first
plurality of elementary rules, the determination of the at least one message type being independent of the determination of
the sender type;

receiving, by the at least one server from the client device via the communications network, a request to order the listing
of e-mails by e-message classification;

ordering, by the at least one server, based on the classification of the e-mail messages, the listing of e-mails by e-mail
classification; and

sending, by the at least one server to a client device via a communications network, instruction to display in the one of
an e-mail message listing pane or an e-mail message listing window in a graphical user interface of the client device, the
ordered listing of e-mails.

US Pat. No. 9,721,018

SYSTEM AND METHOD FOR DISPLAYING OF MOST RELEVANT VERTICAL SEARCH RESULTS

YANDEX EUROPE AG, Luzern...

1. A method of conducting a search and presenting results, the method executable at a server, the method comprising:
receiving a search query from an electronic device associated with a user;
responsive to the search query, generating a search query result set, the search query result set being a ranked result set
and including a general search result and a vertical search result, each of the general search result and the vertical search
result having been generated by its respective search source, the vertical search result being represented as a widget application
within said ranked result set;

determining an intent weight associated with the search query;
determining a confidence level that the vertical search result is the most relevant response to the search query based on
an analysis of the search query, the vertical search result and at least one of: (i) data maintained within the widget application,
(ii) a hierarchical position of the widget application within the ranked result set, and (iii) the intent weight associated
with the search query; (iv) determinative words associated with the search query; (v) stop words associated with the search
query and (vi) a frequency of the search query and a response from the widget application combination when other users perform
similar search queries;

responsive to the confidence level being above a pre-determined threshold, causing the electronic device to display exclusively
the vertical search result represented as a widget application; and

responsive to the confidence level being below the pre-determined threshold, causing the electronic device to display both
the general search result and the vertical search result.

US Pat. No. 9,521,101

METHOD OF AND SYSTEM FOR REFORMATTING AN E-MAIL MESSAGE BASED ON A CATEGORIZATION THEREOF

YANDEX EUROPE AG, Lucern...

1. A method of reformatting an e-mail message having a header and a body having content in a received format, the method comprising:
receiving, by at least one server via a communications network, the e-mail message;
saving, by the at least one server, the e-mail message in a database in communication with the at least one server;
receiving, by the at least one server from a client device, a request to retrieve the e-mail message;
retrieving, by the at least one server, the e-mail message from at least one database;
determining, by the at least one server, a classification of the e-mail message from the at least one database, the classification
including a sender type and at least one message type; and

reformatting, by the at least one server, based on the determined classification, at least some of the content of the body
of the message into a predetermined format associated with the determined classification of the e-mail message, the predetermined
format being retrieved from a plurality of predetermined formats associated with potential classifications of the e-mail message;
and

sending, by the at least one server to the client device, at least some of the reformatted content of the body of the message.

US Pat. No. 9,521,102

METHOD OF AND SYSTEM FOR CONSTRUCTING A LISTING OF E-MAIL MESSAGES

YANDEX EUROPE AG, Lucern...

1. A method of constructing a listing of e-mail messages, the method comprising:
retrieving, by at least one server, information in respect of a plurality of e-mail messages from at least one database in
electronic communication with the at least one server, each e-mail message including a header having a plurality of header
fields and a body having content;

sending, by the at least one server to a client device via a communications network, instruction to display in one of an e-mail
message listing pane or an e-mail message listing window in a graphical user interface of the client device, a listing of
e-mails, the listing including in respect of at least some of the e-mail messages listing information including at least some
of the header fields;

for a first one of the e-mail messages, one of determining a classification of the first one of the e-mail messages by the
at least one server and retrieving from the database a classification of the first one of the e-mail messages by the at least
one server, the classification including a sender type and at least one message type; and

sending, by the at least one server to the client device via the communications network, instruction to display in the listing
information, additional information other than the header fields of the first one of the e-mail messages, the additional information
comprising at least one of extracted information extracted from the body of the first one of the e-mail messages and retrieved
information retrieved from a remote website, the additional information being displayed in a first predetermined format associated
with the classification of the e-mail message, the first predetermined format being other than a format in which the content
of the body was originally received.

US Pat. No. 9,971,775

METHOD OF AND SYSTEM FOR PARAMETER-FREE DISCOVERY AND RECOMMENDATION OF AREAS-OF-INTEREST

YANDEX EUROPE AG, Lucern...

1. A method of processing a user request for a recommended area of interest, the method being executable at a server, the method comprising:a. receiving the user request, the user request comprising an indication of an electronic device geo-location and a user defined search constraint;
b. receiving data associated with photographs, the photographs associated with geo-objects, the data comprising geo-location coordinates of the photographs, the geo-location coordinates of the photographs being in proximity with the electronic device geo-location;
c. computing a plurality of region representations based on the geo-location coordinates of the photographs, each region representation within the plurality of region representations being associated with a unique photograph density calculation parameter, the computing comprising:
i. computing a histogram representation of the geo-location coordinates of the photographs;
ii. calculating a plurality of density estimations of the histogram representation based on the unique photograph density calculation parameter;
iii. partitioning each density estimation of the plurality of density estimations, wherein each partitioned density estimation corresponds to each region representation, respectively; and
iv. determining a potential area of interest in each region representation, each region representation within the plurality of region representations being a candidate for an optimal region representation;
d. determining the optimal region representation based on the user defined search constraint; and
e. displaying to the user the recommended area of interest that corresponds to the potential area of interest of the optimal region representation.

US Pat. No. 9,613,132

METHOD OF AND SYSTEM FOR DISPLAYING A PLURALITY OF USER-SELECTABLE REFINEMENTS TO A SEARCH QUERY

YANDEX EUROPE AG, Lucern...

1. A method of displaying by a client application running on at least one digital electronic device in communication with
a search engine a plurality of user-selectable refinements to a first search query including at least one first search term,
the method comprising:
(a) sending by the client application to the search engine the first search query;
(b) receiving by the client application from the search engine first search results in respect of the first search query and
first suggested search query refinements having been determined by the search engine based at least in part on an analysis
of groups of related search queries being related to the first search query, each of the first suggested search query refinements
corresponding to a refined search query including the at least one first search term and at least one additional search term,
the analysis of groups of related search queries including:

filtering the related search queries to only those identified as having provided search results which provided a user with
information sought by the user;

grouping the filtered related search queries into the groups based on subsequent user behaviors of the users; and
determining a suggested search query refinement for each of at least some of the groups, the suggested search query refinement
corresponding to a refined search query including the at least one first search term and the at least one additional search
term which has been derived from one of meaningful related search queries, the one of the meaningful related search queries
having been determined as being the most popular in its respective group, the at least one additional search term having being
determined as being the most unique as compared with previously identified suggested search query refinements;

(c) displaying by the client application at least one first search result and, apart from a search bar, the first suggested
search query refinements, the first suggested search query refinements being selectable by a user via at least one first graphical
object;

(d) receiving by the client application from a user via the at least one first graphical object a first selection of one of
the first suggested search query refinements, the first selection corresponding to a first refined search query including
the at least one first search term and at least one first additional search term;

(e) sending by the client application to the search engine a request to obtain the first refined search results;
(f) receiving by the client application from the search engine first refined search results in respect of the first refined
search query; and

(g) displaying by the client application at least one first refined search result and a visual representation of a refinement
relationship between the first search query and the first refined search query.

US Pat. No. 9,448,985

BROWSER APPLICATION AND A METHOD OF OPERATING THE BROWSER APPLICATION

YANDEX EUROPE AG, Lucern...

1. A method of displaying a web resource to a user in a browser application executed on an electronic device, the browser
application configured to display content of the web resource on a user output interface of the electronic device at least
partially in response to a request from the user received via a user input interface, the electronic device further including
a network communication interface for two-way communication over a communication network; the method executable by the electronic
device, the method comprising:
receiving, via the user input interface, a first request from the user for a first web resource to be displayed in the browser
application;

obtaining, via the network communication interface, content of the first web resource;
displaying the first web resource in an entirety of a browsing window of the browser application;
receiving a second request from the user for a second web resource to be displayed in the browser application;
obtaining, via the network communication interface, content of the second web resource;
displaying the second web resource in the entirety of the browsing window of the browser application instead of displaying
the first web resource;

displaying, within a portion of the entirety of the browsing window, a browser element tab, the browser element tab for controlling
displaying of the first web resource and the second web resource within the browsing window, the browser element tab having:

responsive to the first web resource and the second web resource belonging to different domains:
a first browser element representative of the first web resource and a second browser element representative of the second
web resource;

responsive to the first web resource and the second web resource belonging to a single domain:
a unified browser element representative of the single domain, the unified browser element being selectively:
collapsible into the unified browser element for representing both the first web resource and the second web resource;
expandable to include a first browser sub-element representative of the first web resource and a second browser sub-element
representative of the second web resource;

responsive to receiving, via the user input interface, a third request from the user, the third request indicative of the
user closing one of the first web resource and the second web resource, removing an associated browser element tab from being
displayed within the browsing window.

US Pat. No. 9,875,232

METHOD AND SYSTEM FOR GENERATING A DEFINITION OF A WORD FROM MULTIPLE SOURCES

YANDEX EUROPE AG, Lucern...

1. A method of displaying an on-line definition of a first word on a screen of an electronic device, the first word being
part of a user-definition-request received from a user of the electronic device by a server via a communication network, the
server and the electronic device being communicatively coupled by the communication network, the method executed at the server,
the method comprising:
receiving, by the server, a first service response comprising a first definition set from a first source, the first definition
set being based on the first word;

receiving, by the server, a second service response comprising a second definition set from a second source, the second definition
set being based on the first word;

parsing, by the server, the first definition set to obtain individual first set words;
parsing, by the server, the second definition set to obtain individual second set words;
organizing, by the server, the individual first set words into at least one definition cluster;
responsive to at least one of the individual second set words matching any one of the individual first set words, merging,
by the server, at least a portion of the individual second set words with the first cluster, the first cluster comprising
a merged definition set being distinct from the first and second definition sets;

responsive to at least one of the individual second set words not matching any of the individual first set words, merging,
by the server, at least a portion of the individual second set words with a second cluster, the second cluster being distinct
from the first cluster;

causing, by the server, the electronic device to display on the screen to the user both the first cluster and the second cluster
as definitions of the first word, the first cluster and the second cluster being visually distinct when displayed on the screen.

US Pat. No. 9,824,084

METHOD FOR WORD SENSE DISAMBIGUATION FOR HOMONYM WORDS BASED ON PART OF SPEECH (POS) TAG OF A NON-HOMONYM WORD

YANDEX EUROPE AG, Lucern...

1. A computer-implemented method of processing a first text stream for execution by a processor, the method comprising:
accessing, from a non-transitory computer-readable medium, the first text stream;
parsing the first text stream by breaking the first text stream down into a first collection of words;
analysing the first collection of words to identify a homonym candidate, the homonym candidate being associated with a first
meaning and a second meaning;

generating a homonym word pattern, the homonym word pattern comprising at least one word of the first collection of words,
the at least one word being selected based on a distance between the at least one word and the homonym candidate in the first
text stream, the distance being a number of words separating the at least one word of the first collection of words from the
homonym candidate in the first text stream;

determining, for at least one word of the homonym word pattern, a first context element;
generating a homonym context pattern, the homonym context pattern being at least partially based on the first context element;
parsing a second text stream by breaking the second text stream down into a second collection of words, the second collection
of words being distinct from the first collection of words, the second text stream being in a same language as the first text
stream;

analysing the second collection of words to identify a non-homonym candidate, the non-homonym candidate being associated with
a lexical tag;

if a non-homonym context pattern at least partially matches the homonym context pattern, the non-homonym context pattern being
at least partially based on a second context element determined for at least one word of a non-homonym word pattern,

assigning the lexical tag associated with the non-homonym candidate to the homonym candidate;
storing, to a memory coupled to the processor, the lexical tag; and
rendering the lexical tag on a display of an electronic device.

US Pat. No. 9,787,763

METHOD OF AND SYSTEM FOR DETECTING SPAM ACTIVITY IN A CLOUD SYSTEM

YANDEX EUROPE AG, Lucern...

1. A method of detecting spam activity in a cloud service, the cloud service hosted on a server, the server having a first
digital object and a second digital object stored thereon, the server being accessible, via a communication network, by a
plurality of users of the cloud service, the method executable by the server, the method comprising:
receiving from a first user of the plurality of users of the cloud storage service an indication of a first sharing action
for sharing access to the first digital object;

responsive to the first indication, incrementing a first sharing counter value of a first sharing counter dedicated to the
first digital object, the first sharing counter being indicative of total sharing actions associated with the first digital
object across all of the user accounts of the cloud storage service;

receiving from a second user of the plurality of users of the cloud storage service an indication of a second sharing action
for sharing access to the first digital object;

responsive to the second indication further incrementing the first sharing counter value of a first sharing counter dedicated
to the first digital object;

responsive to the first sharing counter value reaching a pre-determined threshold value, executing a spam preventive action
associated with the first digital object;

the second digital object having a second sharing counter associated therewith, the second sharing counter being indicative
of total sharing actions associated with the second digital object across all of the user accounts of the cloud storage service;
and

the first sharing counter and the second sharing counter being incremented independently therebetween in response to sharing
actions associated with their associated first digital object and second digital object.

US Pat. No. 9,594,484

METHOD AND SYSTEMS FOR NAVIGATING TO A SUB-RESOURCE OF AN INTERNET RESOURCE

YANDEX EUROPE AG, Luzern...

15. A system for navigating to at least one sub-resource of an Internet resource, comprising a client device, the client device
including:
a computer processor;
a display operationally connected with the computer processor;
a user interface operationally connected with the computer processor;
a communication interface operationally connected with the computer processor and structured and configured to communicate
with at least one server;

a non-transient computer information storage device operationally connected with the computer processor, the information storage
device containing instructions that when executed by the computer processor effect:

a sending, from the client device to the at least one server, of instructions to furnish the client device with the Internet
resource;

a sending, from the client device to the at least one server, of instructions to furnish the client device with information
regarding at least one particularly determined sub-resource of the Internet resource, the at least one particularly determined
sub-resource being defined independently of the publisher of the Internet resource;

a receiving, from the at least one server on the client device, of the Internet resource;
a receiving, from the at least one server on the client device, of the information regarding the at least one particularly
determined sub-resource of the Internet resource;

a display, on the client device, of the Internet resource;
a display, on the client device contemporaneously with the display of the Internet resource, of at least one user-selectable
object, the user-selectable object having an associated indication of the at least one sub-resource of the Internet resource,
the associated indication based, at least in part, on the information;

upon a user of the client device selecting via the user interface one of the at least one user-selectable object, a sending,
from the client device to the at least one server, of instructions to furnish the client device with the sub-resource;

a receiving, from the at least one server on the client device, of the sub-resource;
a display, on the client device, of the sub-resource.

US Pat. No. 9,998,885

METHOD OF AND SYSTEM FOR PROCESSING AN ELECTRONIC MESSAGE DESTINED FOR AN ELECTRONIC DEVICE

Yandex Europe AG, Lucern...

1. A method of processing an incoming electronic message destined to an application associated with a user, the user being associated with a first electronic device and a second electronic device, both the first electronic device and the second electronic device executing at least one instance of the application, the method being executable at a server being responsible for handling incoming electronic messages for the application, the method comprising:receiving, by the server, the incoming electronic message destined for the user;
based on a message type of the incoming electronic message, determining a delivery preference parameter associated with the user, the delivery preference parameter being indicative of user past-behaviour indicative of which one of the first electronic device and the second electronic device the user is more likely to process the incoming electronic message of the message type;
based on the delivery preference parameter, determining, by the server, a specific one of the first electronic device and the second electronic device that is associated with a highest one of the delivery preference parameter, the at least one instance of the application of the specific one being a first instance of the application and a second instance of the application, both the first instance and the second instance being executed by the specific one, both the first instance and the second instance being capable of receiving the incoming electronic message;
based on the delivery preference parameter, determining, by the server, a specific one of the first instance of the application and the second instance of the application the user is more likely to use to process the incoming electronic message;
generating, by the server, a user-notification associated with the incoming electronic message;
transmitting, by the server, via the communication network the user-notification to the specific one of the first instance of the application and the second instance of the application; and
responsive to an absence of an action in response to the user-notification, transmitting, by the server, a copy of the user-notification to an other one of the first instance of the application and the second instance of the application, the absence of the action being determined in response to a lapse of a pre-determined period of time without the action in response to the user-notification.

US Pat. No. 9,876,761

METHOD AND SYSTEM FOR DETERMINING AN ADDRESS CORRESPONDING TO A MOST PROBABLE PHYSICAL LOCATION OF AN ELECTRONIC DEVICE ASSOCIATED WITH A USER

YANDEX EUROPE AG, Lucern...

1. A method of determining an address corresponding to a most probable physical location of an electronic device associated
with a user, the method being executable on a computer device, the method comprising:
receiving geolocation data from the electronic device, the geolocation data being associated with a predetermined radius;
based on the received geolocation data and the associated predetermined radius, determining at least two probable physical
locations of the electronic device, the at least two probable physical locations being within the predetermined radius associated
with the geolocation data, the at least two probable physical locations including a first probable physical location and a
second probable physical location, the first probable physical location corresponding to a first physical entity selected
from a predetermined list and associated with a first physical entity type, the first physical entity type being indicative
of a first type of business, and the second probable physical location corresponding to a second physical entity selected
from the predetermined list and associated with a second physical entity type, the second physical entity type being indicative
of a second type of business;

based on the first physical entity type and the second physical entity type, retrieving an interaction history of the user
with the first physical entity, the second physical entity, other physical entities of the first physical entity type, and
other physical entities of the second physical entity type;

based on the interaction history of the user, calculating for the first physical entity a first user specific probability
factor indicative of a likelihood of the user interacting with the first physical entity and calculating for the second physical
entity a second user specific probability factor indicative of a likelihood of the user interacting with the second physical
entity;

based on the first physical entity type and the second physical entity type, retrieving an interaction history of other users
with other physical entities of the first physical entity type and other physical entities of the second physical entity type;

based on the interaction history of the other users, calculating for the first physical entity a first user non-specific probability
factor indicative of the likelihood of the other users interacting with the first physical entity and calculating for the
second physical entity a second user non-specific probability factor indicative of the likelihood of the other users interacting
with the second physical entity;

based on the first user specific probability factor and the first user non-specific probability factor, calculating a first
general probability factor associated with the first probable physical location;

based on the second user specific probability factor and the second user non-specific probability factor, calculating a second
general probability factor associated with the second probable physical location;

determining a highest general probability factor among the first general probability factor and the second general probability
factor;

selecting one of the first probable physical location and the second probable physical location being associated with the
highest general probability factor as a most probable physical location of the electronic device, the most probable physical
location being associated with a selected physical entity, the selected physical entity being a respective one of the first
physical entity and the second physical entity;

retrieving an address associated with the selected physical entity; and
showing at least one of the selected physical entity and the address associated with the selected physical entity on a map
displayed on at least one of the electronic device and a different electronic device.

US Pat. No. 9,852,335

METHOD OF PROCESSING A VISUAL OBJECT

YANDEX EUROPE AG, Luzern...

1. A computer-implemented method executed on an electronic device, the electronic device having a display screen, the method
comprising:
displaying an image on the display screen;
receiving a user selection of a first portion of the image;
responsive to the user selection of the first portion of the image, the first portion of the image containing a selected text
portion, performing text recognition of the selected text portion and of an unselected text portion, the unselected text portion
located in a second portion of the image being distinct from the selected text portion located in the first portion of the
image, the second portion of the image being immediately adjacent to the first portion of the image;

after performing the text recognition of the selected text portion and of the unselected text portion, determining if the
unselected text portion should form part of a recognized text element, the determining comprises detecting at least one of
a logical continuation and a logical extension of the unselected text portion relative to the selected text portion;

responsive to determining that the unselected text portion should form part of the recognized text element, creating the recognized
text element that includes the selected text portion and at least a portion of the unselected text portion;

the display screen being a touch screen, wherein receiving the user selection of the first portion of the image is effected
by identifying a touch action performed by the user on the display screen; and

wherein the displaying the image on the display screen comprises displaying a blurred version of the image, and wherein the
touch action performed by the user on the display screen is sweeping a portion of the blurred version of the image, the portion
of the blurred version of the image corresponding to the first portion of the image.

US Pat. No. 9,801,132

METHOD AND SYSTEM FOR MANAGING TURBO MODE OPERATION

YANDEX EUROPE AG, Lucern...

1. A method of managing turbo mode operation of a first electronic device, the method being executable at a computing apparatus,
the method comprising:
clustering a second electronic device with the first electronic device, the second electronic device being other than the
first electronic device;

receiving, via a communication network, a signal indicative of turbo mode operation of the second electronic device while
the second electronic device is clustered with the first electronic device, the signal indicative of turbo mode operation
of the second electronic device being indicative of a connection speed of the second electronic device being less than a second
electronic device connection speed threshold;

causing turbo mode operation of the first electronic device in response to:
the second electronic device still being in the same cluster with the first electronic device; and
receiving the signal indicative of turbo mode operation of the second electronic device,
the first and the second electronic devices being configured to download less information in turbo mode operation than in
normal mode operation.

US Pat. No. 9,794,208

METHOD OF AND SYSTEM FOR CONSTRUCTING A LISTING OF E-MAIL MESSAGES

YANDEX EUROPE AG, Lucern...

1. A method of constructing a listing of e-mail messages, the method comprising:
retrieving, by at least one server, information in respect of a plurality of e-mail messages from at least one database in
electronic communication with the at least one server, each e-mail message including a header having a plurality of header
fields and a body having content;

sending, by the at least one server to a client device via a communications network, instruction to display in one of an e-mail
message listing pane or an e-mail message listing window in a graphical user interface of the client device, a listing of
e-mails, the listing including in respect of at least some of the e-mail messages listing information including at least some
of the header fields;

for a first one of the e-mail messages, one of determining a classification of the first one of the e-mail messages by the
at least one server and retrieving from the database a classification of the first one of the e-mail messages by the at least
one server, the classification including a sender type and at least one message type, the sender type having been determined
from a plurality of potential sender types, via a first analysis of the header and the body, the first analysis including
application of at least one first complex rule, each applied first complex rule including a first plurality of elementary
rules specific to that applied first complex rule, at least some of the first plurality of elementary rules specific to that
applied first complex rule including a regular expression analysis, the at least one message type having been determined from
a plurality of potential message types, via a second analysis of the header and the body, the second analysis being distinct
from the first analysis, the second analysis including application of at least one second complex rule, each applied second
complex rule including a second plurality of elementary rules specific to that applied second complex rule, at least some
of the second plurality of elementary rules specific to that applied second complex rule including a regular expression analysis,
the second plurality of elementary rules being distinct from the first plurality of elementary rules, the determination of
the at least one message type being independent of the determination of the sender type; and

sending, by the at least one server to the client device via the communications network, instruction to display in the listing
information in respect of the first one of the e-mail messages appearing in the listing of e-mail messages a first user-selectable
graphical element for causing a first function to be performed in respect of the first one of the e-mail messages, the first
function being based, at least in part, on the classification of the first one of the e-mail messages.

US Pat. No. 9,600,579

PRESENTING SEARCH RESULTS FOR AN INTERNET SEARCH REQUEST

YANDEX EUROPE AG, Lucern...

1. A method of constructing a search engine result page, the method executable at a server in communication with an electronic
device via a communications network, the method comprising:
receiving from the electronic device via the communications network, a search request;
effecting a search in respect of the search request to yield search results, the search results including at least one webpage;
identifying, by the search engine server, a repeating pattern of information of the at least one web page by analyzing the
coding of the at least one web page;

using the repeating pattern of information, retrieving at least one non-repeating data segment from within the at least one
webpage;

generating the search engine result page, the search engine result page including the at least one non-repeating data segment;
sending a command signal to the electronic device via the communications network, the command signal being instrumental in
causing the electronic device to execute displaying, to the user via a user output interface of the electronic device, (i)
the search results including a link to at least one webpage and (ii) for at least one webpage, the non-repeating data segment
in close proximity to the link; and

wherein said retrieving at least one non-repeating data segment from within the at least one webpage comprises:
using the repeating pattern of information, retrieving a plurality of non-repeating data segments from within the at least
one webpage, at least some of the plurality of non-repeating data segments being at least partially different from others
of the plurality of non-repeating data segments.

US Pat. No. 9,900,318

METHOD OF AND SYSTEM FOR PROCESSING AN UNAUTHORIZED USER ACCESS TO A RESOURCE

YANDEX EUROPE AG, Lucern...

1. A method of authenticating a user in a network, the method executed on a server, the method comprising:
acquiring a non-authorized user-behavior model associated with a non-authorized access to a network resource by an unauthorized
entity, the non-authorized user-behavior model having been generated during blocking the non-authorized access to the network
resource by the unauthorized entity, the non-authorized user-behavior model having a first model portion based on at least
one device-specific parameter and a second model portion based on at least one user-device interaction parameter, the user-device
interaction parameter being indicative of a type of action performed by the unauthorized entity with the network resource;

retrieving from a log stored on the network server, an indication of a plurality of users, each respective user of the plurality
of users being associated with a respective user-behavior model, the respective user-behavior model having a respective first
model portion based on at least one device-specific parameter and a respective second model portion based on at least one
user-device interaction parameter, the user-device interaction parameter being indicative of a type of action performed by
the respective user with the network resource;

responsive to the first model portion and the second model portion of one of the respective user-behavior model associated
with a respective user of the plurality of users matching the first model portion and the second model portion of the non-authorized
user-behavior model, associating a user account associated with the respective user associated with the one of the respective
user-behavior model with a security-violation parameter;

responsive to the security-violation parameter, restricting user activity within the user account.

US Pat. No. 9,838,374

METHOD AND COMPUTER-BASED SYSTEM FOR ANONYMOUSLY AUTHENTICATING A SERVICE USER

YANDEX EUROPE AG, Lucern...

1. A computer-implemented method of anonymously authenticating a service user having an account associated with a first web
service system, the method executable by a processor of a second web service system, the second web service system being different
from the first web service system, the method comprising:
receiving a token generated by the first web service system in response to an authentication request originating from an electronic
device of the service user, the token comprising first data anonymously authenticating the service user while preventing the
second web service system from identifying information associated with the account of the service user and second data identifying
an action that the second web service system is authorized to perform for the service user;

storing, in a non-transitory computer-readable medium of the second web service system, the first and second data of the token;
accessing at least one of the first and second data of the token in response to an attempt of the second web service system
to perform an action associated with the service user;

determining, based on the at least one of the first and second data of the token, whether the second web service system is
authorized to perform the action for the service user; and

responsive to the determining rendering a positive determination, authorizing by the second web service system the service
user to access the second web service system, the authorizing being done without the second web service system being able
to identify information associated with the account of the service user; the authorizing including allowing the service user
to perform the action.

US Pat. No. 9,824,109

METHODS AND SYSTEMS FOR INDEXING REFERENCES TO DOCUMENTS OF A DATABASE AND FOR LOCATING DOCUMENTS IN THE DATABASE

YANDEX EUROPE AG, Lucern...

1. A method for indexing references to documents of a database, the method comprising:
receiving a document, at the database, from a server;
storing the document in the database;
extracting a searchable term from the document, the searchable term being associated with a posting list, the posting list
comprising a plurality of references to documents;

dividing the posting list into a plurality of blocks, each block comprising M number of references to documents of the plurality
of references to documents, M being an integer;

for each block of the plurality of blocks, compressing the block into a compressed block of a plurality of compressed blocks
by:

determining an encoding pattern for the block based on values of each one of the respective M number of references to documents;
encoding content of the block based on the encoding pattern;
locating an encoding pattern table entry corresponding to the encoding pattern; and
inserting a pointer corresponding to the located encoding pattern table entry in a header of the compressed block,
the plurality of compressed blocks forming a compressed posting list.

US Pat. No. 9,674,308

MANAGING SEARCH SESSION DATA

YANDEX EUROPE AG, Lucern...

1. A method of synchronizing a first browsing session and a second browsing session for a user, the first browsing session
having been executed on a first electronic device, the first browsing session being a search engine session, the method comprising:
receiving, by a server via a communication network, a request for the second browsing session, the second browsing session
being the search engine session, from one of the first electronic device and a second electronic device at a point of time
after initiation of the first browsing session; the first electronic device and the second electronic device being a subset
of a set of electronic devices associated with the user;

tracking, by the server, server processing of the user interactions with the search engine session to create, based on the
server processing of the user interactions, a server-side history including at least one indication of server processing of
the user interaction with the search engine session, the at least one indication of server processing of the user interaction
with the search engine session not being visible from a browsing history stored on any one of the set of electronic devices,
the at least one indication of server processing of the user interaction with the search engine session not being visible
from the browsing history by virtue of it never having been stored in the browsing history of any one of the set of electronic
devices;

responsive to the user being a subscriber of a synchronization feature, causing by the server via the communication network
the second browsing session to be displayed on the one of the first electronic device and the second electronic device, the
second browsing session including information from the browsing history of the first electronic device and the server-side
history associated with the at least one indication of server processing of the user interactions within the first browsing
session performed prior to said receiving, the server-side history including the at least one indication of server processing
of the user interaction with the search engine session.

US Pat. No. 9,922,036

SYSTEM AND METHOD FOR DUPLICATING FILES ON CLIENT DEVICE FOR CLOUD STORAGE

YANDEX EUROPE AG, Lucern...

1. A method for duplication of files on a user device, the user device being connected to a cloud storage server over a communication
network, the method comprising:
receiving, by a hardware processor of a user device, a request to upload a file stored locally on the user device into the
cloud storage server;

responsive to the request, determining, by the hardware processor, a time required to generate a unique file identifier for
said file, the unique file identifier for verifying a presence of a duplicate of said file on the cloud storage server, a
time required to upload said file to the cloud storage server, and an average probability of said file not being a unique
file on the cloud storage server;

responsive to (i) the time required to generate the unique file identifier for said file exceeding (ii) the time required
to upload said file to the cloud storage server multiplied by the average probability of the file not being the unique file
on the cloud storage server, initiating, by the hardware processor, the uploading of the file to the cloud storage server;

responsive to the time required to upload said file to the cloud storage server multiplied by the average probability of the
file not being the unique file on the cloud storage server exceeding the time required to generate the unique file identifier,
executing steps of:

generating, by the hardware processor, said unique file identifier and transmitting the unique file identifier to the cloud
storage server;

receiving, from the cloud storage server, an indication of the presence of the unique file number on the cloud storage server;
and

responsive to the indication of the presence of the unique file number on the cloud storage server being negative, initiating,
by the hardware processor, the uploading of the file to the cloud storage server.

US Pat. No. 9,740,782

METHOD FOR ESTIMATING USER INTERESTS

YANDEX EUROPE AG, Lucern...

1. A computer-implemented method for estimating user interests, the method executable by a computing device in communication
with an output device, the method comprising:
determining, by the computing device, a first input vector corresponding to a first user event and a second input vector corresponding
to a separate second user event;

configuring a first vector-mapping module to map given input vectors to output vectors in a first multidimensional space such
that a respective distance separating the output vectors from each other is correlated to a difference between a user event
context associated with the first input vector having been mapped to its output vector and a user event context associated
with the second input vector having been mapped to its output vector, the configuring the first vector-mapping module including
configuring a first neural network and a second neural network by:

connecting the first neural network and the second neural network in a coupled Siamese neural network arrangement, and
training the first and second neural networks to minimize a cross-modal loss between the first neural network and the second
neural network;

mapping, using the first vector-mapping module of the computing device, the first input vector to a first output vector in
the first multidimensional space and the separate second input vector to a second output vector in the first multidimensional
space,

the first vector-mapping module being enabled to map both the first output vector and the second output vector to the first
multidimensional space even if the first user event and the second user event are of different types;

determining, by the computing device, a third input vector based at least in part on the first output vector and the separate
second output vector;

configuring a second vector-mapping module to map input vectors to output vectors in a second multidimensional space such
that a respective distance separating the output vectors from each other is correlated to a difference between a user event
context associated with one input vector, the one input vector being a respective output vector of the first vector-mapping
module and a user event context associated with another input, the other input vector being another respective output vector
of the first vector-mapping module, the configuring the second vector-mapping module including configuring a third neural
network;

mapping, using the second vector-mapping module of the computing device, the third input vector to a third output vector in
the second multidimensional space;

determining, by the computing device, a message to be provided to a user based at least in part on an analysis of at least
one of the first output vector and the third output vector; and

causing, by the computing device, the output device to provide the message to the user.

US Pat. No. 9,773,035

SYSTEM AND METHOD FOR AN ANNOTATION SEARCH INDEX

YANDEX EUROPE AG, Lucern...

1. A method of generating an annotated search index, the method executable at a server having a processor and memory, the
method comprising:
a) retrieving a portion of a historical search session for a first search query, the portion including a first resource and
a second resource, both the first and the second resource being relevant to the first search query,

the first resource including at least some of the search terms from the first search query and having been indexed to the
included search terms in a first search index,

the second resource being associated with a reformulated query in the historical search session, the second resource having
none of the search terms of the first search query and not having been indexed to the search terms in the first search index,
the second resource having been accessed after the first resource in the historical search session by at least one user after
submitting the reformulated query;

b) generating an association parameter for the second resource, the association parameter being based on a first historical
parameter and a second historical parameter,

the first historical parameter being a number of transitions between the first resource and the second resource in the historical
search session, and

the second historical parameter being a prior user time spent interacting with the second resource in the historical search
session; and,

c) responsive to the association parameter for the second resource being above a predetermined threshold, associating the
second resource with one or more of the first resource and the included search terms;

d) generating an entry in the annotated search index, the entry comprising the second resource being associated with one or
more of the first resource and the included search terms, the entry in the annotated search index rendering the second resource
to be discoverable with the one or more of the first resource and the included search terms in the annotated search index.

US Pat. No. 9,690,757

METHOD OF AND SYSTEM FOR PROCESSING CONTENT OF A WEB RESOURCE IN A BROWSER APPLICATION

YANDEX EUROPE AG, Lucern...

3. A method of storing content of a web page, the web page having a static object and a dynamic object, the web page being
displayed in a browser application executed on an electronic device, the electronic device having a memory, the method being
executed by the electronic device, the method comprising:
storing, in an archive file, an indication of the static object;
storing, in the archive file, an indication of the dynamic object;
identifying at least one binding between the dynamic object to the static object, the binding being representative of a link
therebetween;

storing an indication of the binding in the archive file;
storing the archive file in the memory; and wherein:
said archive file comprises an MHTML file;
said storing the indication of the static object comprises storing a DOM tree element in the MHTML file;
said storing the indication of the dynamic object comprises serializing a JavaScript heap and storing an indication thereof
in the MHTML file; and

said storing the indication of the binding comprises:
maintaining a reference tracker, mapping the static object to an associated hibernate-ID and maintaining an element information
table mapping an identifier of the static object and the associated hibernate-id, the mapping having a unique record identifier;

augmenting a record associated with the DOM tree element in the MHTML file with an indication of the unique record identifier;
and

augmenting a record associated with the dynamic object in the JavaScript heap with an indication of the hibernate-ID of the
static object.

US Pat. No. 9,916,292

METHOD OF IDENTIFYING A TARGET OBJECT ON A WEB PAGE

YANDEX EUROPE AG, Lucern...

1. A method of identifying a target object on a web page, the web page being associated with rendering instructions for rendering
web page elements of the web page, the method executed by an electronic device, the method comprising:
receiving the rendering instructions associated with the web page;
parsing the rendering instructions to identify a target object candidate amongst the web page elements;
rendering, on a screen of the electronic device, the web page based on the rendering instructions;
executing a verification process to confirm that the target object candidate is the target object, the verification process
being executed on a rendered version of the web page, the rendered version of the web page including a rendered version of
the target object candidate, the verification process comprising:

applying a set of predetermined rules to the rendered version of the target object candidate, the set of predetermined rules
having been predetermined based on rendered object characteristics of the target object, the applying comprises:

determining at least one rendered object characteristic value associated with the rendered version of the target object candidate;
validating each rule within the set of predetermined rules with the at least one rendered object characteristic value; and
assigning a likelihood parameter indicative of a probability of the target object candidate being the target object, the likelihood
parameter being based on an outcome of the validating each rule within the set of predetermined rules with the at least one
rendered object characteristic value,
wherein the parsing the rendering instructions comprises identifying a type of the target object candidate, the type being
one of potential types of the target object, the verification process being further executed on the rendering instructions,
the verification process further comprising:
applying at least one other predetermined rule within the set of predetermined rules to the target object candidate, the at
least one other predetermined rule having been predetermined based on code features related to the potential types of the
target object, the code features related to the potential types of the target object having been assessed by a human assessor,
the applying comprises:

validating the at least one other predetermined rule with a code feature value of the target object candidate, the code feature
value being determined from the rendering instructions; and

the likelihood parameter being further based on an outcome of the validating the at least one other predetermined rule with
the code feature value,
wherein the target object candidate is one of a plurality of target object candidates identified during execution of the parsing,wherein a first target object candidate of the plurality of target object candidates is of a first type and a second target
object candidate of the plurality of target object candidates is of a second type,wherein the set of predetermined rules comprises sub-sets of predetermined rules, each sub-set of predetermined rules having
been predetermined based on the rendered object characteristics of the target object and based on the code features that are
related, respectively, to each potential type, the potential types including the first type and the second type, andwherein the likelihood parameters of the first target object candidate and of the second target object candidate have been
assigned based on the outcome of the validating each rule within a first and a second sub-set of predetermined rules respectively,
the first sub-set of predetermined rules having been predetermined based on the rendered object characteristics of the target
object and the code features being related to the first type and the second sub-set of predetermined rules having been predetermined
based on the rendered object characteristics of the target object and the code features being related to the second type.

US Pat. No. 10,068,086

SYSTEM AND METHOD OF AUTOMATIC PASSWORD RECOVERY FOR A SERVICE

YANDEX EUROPE AG, Lucern...

1. A method of automatic password recovery of a password for a user account associated with one or more web services hosted by a first server, the user account associated with a user, the password being a part of user credentials, the user credentials for accessing the one or more web services using an electronic device, the method executed at a second server, the method comprising:(i) obtaining, via a communication network, user registration data of the user account and a request password restoration from the electronic device of the user;
(ii) determining a first security question for the user, the first security question based on prior user interaction with the one or more web services, the first security question being associated with a first complexity factor, the first complexity factor being indicative of a level of complexity of the first security question, the first complexity factor being based on a number of past correct and incorrect answers from other users to the first security question;
(iii) causing the first security question to be asked to the user;
(iv) responsive to the first security question, obtaining the first answer from the user;
(v) assigning a first weighting factor to the first user's answer, the first assigned weighting factor of the user's answer depending on the first complexity factor of the first security question;
(vi) determining of a second security question to be asked of the user, the second security question based on prior user interaction with one or more web services, the second security question being associated with a second complexity factor, the second complexity factor being indicative of a level of complexity of the second security question, the second complexity factor being based on a number of correct and incorrect answers from other users to the second security question;
(vii) causing the second security question to be asked to the user;
(viii) responsive to the second security question, obtaining the second answer from the user;
(ix) assigning a second weighting factor to the second user's answer, the second assigned weighting factor of the user's answer depending on the second complexity factor of the second security question;
(x) adding up the first weighting factor and the second weighting factor;
(xi) if the sum of the first weighting factor and the second weighting factor exceeds a given threshold, automatically restoring the password;
(xii) if the sum of the first weighting factor and the second weighting factor is below the given threshold, denying automatic password restoration.

US Pat. No. 10,327,352

DUAL-ACTION STORAGE MEDIA CHASSIS STRUCTURE AND SYSTEM

YANDEX EUROPE AG, Lucern...

1. A dual-action storage media chassis structure, comprising: a chassis including: a partition corridor defined by two inner slide walls longitudinally extending in the chassis with airflow apertures respectively; two storage spaces and two chain storage spaces symmetrically disposed on both sides of the partition corridor, respectively; and a central back storage space for accommodating a third-type of electronic component having a third operating temperature; two storage media modules accommodated respectively in the two storage spaces, each storage media module including: a tray frame, each tray frame including a top access opening, each tray frame for accommodating a second-type of electronic component having a second operating temperature in a back portion of the tray frame and for accommodating a first-type of electronic component having a first operating temperature in a front portion of the tray frame; “two dual-action slide assemblies, each dual-action slide assembly including: a corresponding one of the two inner slide walls and a respective inner slide panel longitudinally extending in the chassis and attached to the respective tray frame, the corresponding one of the two inner slide walls adapted for slideably receiving the respective inner slide panel; each dual-action slide assembly for longitudinally and slideably moving the respective tray frame between a received position, a first withdrawn position and a second withdrawn position; the front portion of a given tray frame, the back portion of the given tray frame and the central back storage space being disposed longitudinally sequentially in the dual-action storage media chassis structure from the front end thereof to a back end thereof, such that the second operating temperature is superior to the first operating temperature, and the third operating temperature is superior to the second operating temperature; and each storage media module further includes a chain structure attached at one end to the respective tray frame and pivotably attached at the other end to the chassis; and the airflow apertures allow airflows to pass over the first-type of electronic component in the received position when the each chain structure is received in corresponding chain storage space.

US Pat. No. 9,916,825

METHOD AND SYSTEM FOR TEXT-TO-SPEECH SYNTHESIS

YANDEX EUROPE AG, Lucern...

1. A method for text-to-speech synthesis configured to output a synthetic speech having two or more selected speech attributes,
the method executable at a computing device, the method comprising the steps of:
a) receiving a training text data and a respective training acoustic data, the respective training acoustic data being a spoken
representation of the training text data, the respective training acoustic data being associated with one or more defined
speech attribute;

b) extracting one or more of phonetic and linguistic features of the training text data;
c) extracting vocoder features of the respective training acoustic data, and correlating the vocoder features with the phonetic
and linguistic features of the training text data and with the one or more defined speech attribute, thereby generating a
set of training data of speech attributes;

d) using a deep neural network (dnn) to determine interdependency factors between the speech attributes in the training data,
the dnn generating a single, continuous acoustic space model based on the interdependency factors, the acoustic space model
thereby taking into account a plurality of interdependent speech attributes and allowing for modelling of a continuous spectrum
of the interdependent speech attributes;

e) receiving a text;
f) receiving a selection of the two or more speech attributes, the two or more selected speech attributes having respective
selected attribute weights desired in a synthetic speech to be outputted;

g) converting the text into the synthetic speech using said acoustic space model, the synthetic speech having a weighted sum
of the two or more selected speech attributes; and

h) outputting the synthetic speech as audio having the two or more speech attributes having the respective selected attribute
weights desired in the synthetic speech.

US Pat. No. 9,881,083

METHOD OF AND A SYSTEM FOR INDEXING AUDIO TRACKS USING CHROMAPRINTS

YANDEX EUROPE AG, Lucern...

1. A method of maintaining an audio track inverted index, the method comprising:
receiving an audio track to be indexed;
determining an audio fingerprint of the audio track to be indexed;
determining a first chroma word associated with the audio track to be indexed and being part of the audio fingerprint, the
first chroma word being split into a plurality of bytes, the first chroma word comprising a beginning portion of the first
chroma word, the beginning portion of the first chroma word being a sub-plurality of bytes having a first byte and a following
byte, the first byte being a first multi-byte sequence, the following byte located immediately after said first byte;

accessing the audio track inverted index, the audio track inverted index comprising a plurality of sets of posting lists,
each posting list within the plurality of sets of posting lists being a posting list associated with a chroma word, each chroma
word being associated with a unique posting list within the plurality of sets of posting lists, wherein each posting list
associated with chroma words having a same first byte and a different following byte within the beginning portions of the
chroma words is grouped into a given set of posting lists of the plurality of sets of postings lists, the given set of posting
lists representing the first multi-byte sequence of the same first byte and comprising more than one posting lists, the different
following byte being unique for each posting list amongst the more than one posting lists;

based on the first byte, determining a specific set of posting lists within the plurality of sets of posting lists, the specific
set of posting lists containing posting lists associated with chroma words having the same first byte as the first chroma
word;

responsive to the following byte of the first chroma word matching the following byte of any chroma word associated with a
given posting list within the specific set of posting lists, storing an indication of the audio track in the given posting
list;

responsive to the following byte of the first chroma word not matching the following byte of any chroma word associated with
any posting list within the specific set of posting lists, creating a new posting list associated with the first chroma word
within the specific set of posting lists and storing an indication of the audio track in the new posting list.

US Pat. No. 9,692,804

METHOD OF AND SYSTEM FOR DETERMINING CREATION TIME OF A WEB RESOURCE

YANDEX EUROPE AG, Lucern...

1. A method of determining a creation time of a target page, the method being executable at a server coupled to a communication
network, the method comprising:
creating a page network representation of a plurality of pages including the target page and a plurality of links, the creation
time of the target page being unknown,

each page of the plurality of pages of the page network representation being linked to at least one other page of the plurality
of pages of the page network representation, each link of the plurality of links of the page network representation having
a source page and a destination page, each of the source page and the destination page for each link of the plurality of links
of the page network representation being one of the plurality of pages, each page of the plurality of pages of the page network
representation being one of a source page and a destination page for at least one of the plurality of links,

the plurality of links comprising an outgoing target link, the outgoing target link being a link for which the source page
is the target page, the outgoing target link having a destination page defining an outgoing target link creation time;

assigning a plurality of hypothetical values for the creation time of the target page having the unknown creation time, an
earliest one of the plurality of hypothetical values being one of:

the outgoing target link creation time; and
a time later than the outgoing target link creation time;
determining a respective page network probability for the page network representation corresponding to each one of the plurality
of hypothetical values for the creation time of the target page,

the respective page network probability corresponding to a given one of the plurality of hypothetical values for the creation
time of the target page being indicative of an occurrence of the page network having the plurality of links and the plurality
of pages including the target page with the given one of the plurality of hypothetical values for the creation time of the
target page,

the page network probability being based on a respective link probability for each link of the plurality of links of the page
network representation,

the link probability for each link being indicative of an occurrence of the link from the source page of the link to the destination
page of the link,

the link probability for each link being based on a creation time for the source page of the link and a creation time for
the destination page of the link;

identifying a particular one of the plurality of hypothetical values of the creation time of the target page that corresponds
to a greatest one of the respective page network probability; and

assigning the particular one of the plurality of hypothetical values of the creation time to the creation time for the target
page.

US Pat. No. 10,104,196

METHOD OF AND SERVER FOR TRANSMITTING A PERSONALIZED MESSAGE TO A USER ELECTRONIC DEVICE

Yandex Europe AG, Lucern...

1. A method of sending personalized content to an electronic device associated with a user, the method executable in a personalized content system, the personalized content system including: a communication network; a network resource server hosting a network resource and accessible via the communication network, the web resource having a generic content portion and a personalized content portion; the electronic device configured to access the network resource via the communication network, a personalized content server coupled to the communication network and accessible by the network resource server and the electronic device via the communication network; the method comprising: receiving, by the network resource server from the electronic device, a user request to access the network resource; in response to the user request, transmitting, by the network resource server to the electronic device a trigger associated with the network resource, the trigger configured to cause the electronic device to download the generic content portion of the network resource from the network resource server and the personalized content portion of the network resource from the personalized content server such that the generic content portion and the personalized content portion are rendered on a screen of the electronic device; transmitting by the network resource server to the personalized content server an auxiliary request for the personalized content portion, the auxiliary request including a first user identifier, the first user identifier uniquely identifying the user for the network resource server, the auxiliary request configured to cause the personalized content server (i) to match the first user identifier with a second user identifier, the second user identifier uniquely identifying the user for the personalized content server, and (ii) to return to the network resource server the personalized content portion that is selected for the user based on the second user identifier; inserting, by the network resource server, the personalized content portion into the network resource to render an updated network resource; transmitting, by the network resource server to the electronic device, the updated network resource for rendering on the screen; receiving, by the network resource server from the electronic device, an indication of inability of the electronic device to download the personalized content portion, and wherein transmitting by the network resource server to the personalized content server the auxiliary request is executed in response to the indication of inability; and further comprising, at a time prior to the receiving, by the network resource server from the electronic device, the user request to access the network resource: provisioning by the network resource server the first user identifier; and transmitting by the network resource server to the electronic device a data packet containing the indication of the first user identifier; the electronic device being configured to send the data packet to the personalized content server such that the personalized content server (i) generates the second user identifier; and (ii) creates a pairing between the first user identifier and the second user identifier and (iii) stores an indication of the pairing of the first user identifier and the second user identifier.

US Pat. No. 10,012,423

COOLING DEVICE

Yandex Europe AG, Lucern...

1. A cooling system comprising:a main cooling unit including a heat exchanger;
a main chiller in fluid communication, via a first fluid line, with the heat exchanger, the main chiller being configured to cool a cooling fluid for use with the heat exchanger; and
a back-up cooling unit including:
a cooling reservoir including a plurality of self-contained cooling accumulators;
a secondary chiller configured to cool the plurality of cooling accumulators, during a charging phase;
a second fluid line in fluid communication with the first fluid line;
a first three-way valve coupling the second fluid line to the cooling reservoir;
a third fluid line in fluid communication with the first fluid line;
a second three-way valve coupling the third fluid line to the cooling reservoir;
a fourth fluid line fluidly connecting the first three-way valve to the second three-way valve, the first and second valves being configured to:
form a first closed circuit within the back-up cooling unit during the charging phase by selectively allowing the cooling fluid to flow through the second fluid line, the third fluid line, and the fourth fluid line, flow of the cooling fluid from the first fluid line into the cooling reservoir being restricted during the charging phase, and
form a second closed circuit extending between the back-up cooling unit and the main cooling unit by selectively allowing the cooling fluid to flow through the first fluid line, the second fluid line, and the third fluid line during a release phase, such that the plurality of cooling accumulators provide a heat sink to cool the cooling fluid for the main cooling unit,
the cooling reservoir comprising a compensator configured to expand and contract a volume of the cooling reservoir.

US Pat. No. 10,169,388

METHODS AND SYSTEMS FOR INDEXING REFERENCES TO DOCUMENTS OF A DATABASE AND FOR LOCATING DOCUMENTS IN THE DATABASE

Yandex Europe AG, Lucern...

1. A method for locating documents of a database that contain search terms, the method comprising:receiving a search term, at the database, from a client, the search term being associated with a posting list, the posting list being arranged in blocks, each block comprising a header and M truncated references, the M being an integer, each block having been compressed into a compressed block by encoding content of each block using an encoding pattern, the encoding pattern for each block having been determined based on values of the M truncated references in each block;
reading a pointer from a header of a current block of the posting list;
using the pointer to extract a decoding protocol from a decoding protocol table, wherein the decoding protocol defines the encoding pattern for the current block, the encoding pattern of the current block comprises:
a base length b of M truncated references in the current block;
a number n of patches in the current block;
if n>0, one or more patch values vk of the current block, wherein k is in a range from 1 to n;
if n>0, one or more patch positions pk in the current block, wherein pk is in a range of 0 to M?1;
decompressing the current block based on the decoding protocol by:
reading, in the current block, b·M bits comprising the M truncated references, wherein M?n of the M truncated references are database references; and
if n>0, for each patch from k=1 to n, calculating an expanded patch value as vk·2b and adding the expanded patch value to a pkth of the M truncated reference numbered from 0 to M?1 for providing n additional database references; and
the decompressing comprises identifying M database references based on the decoding protocol and the M truncated references within the current block.

US Pat. No. 10,140,254

METHODS AND SYSTEMS FOR REPRESENTING A DEGREE OF TRAFFIC CONGESTION USING A LIMITED NUMBER OF SYMBOLS

Yandex Europe AG, Lucern...

1. A method of presenting traffic congestion to a user of a client device, the method executable by a server, the method comprising:inputting, by the server at a given time, into a first artificial neural network, a first set of data as input, the first set of data including traffic data in respect of roads within a geographical area and preceding the given time, the geographical area including a plurality of road segments, the first artificial neural network being one of a plurality of artificial neural networks,
each artificial neural network of the plurality of artificial neural networks having been trained to generate a symbol representative of traffic congestion in an entirety of the geographical area for one specific time interval of a plurality of time intervals, the symbol being one of a limited number of symbols,
the one specific time interval for which the first artificial neural network had been trained being a first time interval;
receiving, by the server in response to the input, from the first artificial neural network, the symbol representative of the traffic congestion in the entirety of all of the plurality of road segments within the geographic area for the first time interval; and
sending, by the server to the client device for displaying to the user in respect of the first time interval, the symbol for the first time interval; and
wherein the symbol for the first time interval is a combination of a number and a color representative of the traffic congestion in the entire geographical area for the first time interval.

US Pat. No. 9,910,932

SYSTEM AND METHOD FOR COMPLETING A USER QUERY AND FOR PROVIDING A QUERY RESPONSE

YANDEX EUROPE AG, Luzern...

1. A method of completing a search query, the method executable at a server, the method comprising:
receiving a portion of the search query from an electronic device associated with a user;
determining a first query-completion suggestion for the received search query portion, the first query-completion suggestion
based on information searchable within a first vertical search domain;

determining a second query-completion suggestion for the received search query portion, the second query-completion suggestion
based on information searchable within a second vertical search domain;

determining a first most suitable response to the search query based on information maintained within the first vertical search
domain;

determining a second most suitable response to the search query based on information maintained within the second vertical
search domain;

wherein said determining the first most suitable response and the second most suitable response comprises executing a first
vertical search based on a first proxy search query and a second vertical search based on a second proxy search query, the
first proxy search query comprising said portion of the search query and the first query-completion suggestion and the second
proxy search query comprising said portion of the search query and the second query-completion suggestion;

retrieving the first most suitable response to the first proxy search query from the first vertical search;
retrieving the second most suitable response to the second proxy search query from the second vertical search; and
causing the electronic device to display to the user:
(a) a first suggest line on a first line of a suggest box, the first suggest line including both: (i) the first query-completion
suggestion and (ii) a first representation of the first most suitable response;

(b) a second suggest line on a second line of the suggest box, the second suggest line including both: (i) the second query-completion
suggestion and (ii) a second representation of the second most suitable response to the query.

US Pat. No. 9,898,448

METHOD FOR TEXT PROCESSING

YANDEX EUROPE AG, Luzern...

1. A computer-implemented method for text processing, the method being executable at a computing device, the method comprising:
at a training phase:
acquiring one or more source phrases, each of the source phrase comprising a first set of sequential words, each word of the
first set of sequential words being a source word;

acquiring one or more target phrases, each of the target phrase being in a same language as the source phrases, each of the
target phrase comprising a second set of sequential words being at least partially different from the first set of sequential
words of a respective source phrase, each word of the second set of sequential words being a target word;

associating, for a given source phrase, a respective source word feature set with each one of the source words, the respective
source word feature set for a given source word comprising:

one or more grammatical features of the given source word; and
a meaning of the given source word;
associating, for a respective target phrase, a respective target word feature set with each one of the target words, the respective
target word feature set for a given target word comprising:

one or more grammatical features of the given target word; and
a meaning of the given target word;
analyzing the respective source word feature set of each source words of the given source phrase and the respective target
word feature set of each target words of the respective target phrase;

mapping the given source word of the given source phrase to a corresponding target word of the respective target phrase based
on a similarity of the source word feature set of the given source word to the target word feature set of the corresponding
target word;

based on the mapping, generating one or more phrase transformation rules applicable to the given source phrase to transform
the first set of sequential words into the second set of sequential words of the respective target phrase;

storing the one or more source phrases and the associated one or more generated phrase transformation rules in a memory of
the computing device;

at an in-use phase:
acquiring a text phrase, the text phrase comprising a third set of sequential words being at least partially different from
the first set of sequential words; and

retrieving the one or more source phrases from the memory;
performing at least one of a grammatical analysis and a semantic analysis of the text phrase and the one or more stored source
phrases, to determine similarity of the text phrase to the one or more stored source phrases;

upon determining that the text phrase has the similarity to the given stored source phrase greater than a threshold, applying
the associated one or more phrase transformation rules to the text phrase to generate a transformed text phrase, the transformed
text phrase comprising a fourth set of sequential words being at least partially similar to the second set of sequential words
of the respective target phrase.

US Pat. No. 10,066,961

METHODS AND SYSTEMS FOR PREDICTING DRIVING CONDITIONS

YANDEX EUROPE AG, Lucern...

1. A method for providing a predicted driving condition to an electronic device, the electronic device being associated with a current vehicle having a current vehicle characteristic, the method executable on a server, the method comprising:receiving, by the server, an indication of the current vehicle approaching a road segment and the current vehicle characteristic of the current vehicle;
identifying, by the server, at least one preceding vehicle which has a time of travel along the road segment which is before a current time, a time difference between the preceding vehicle time of travel and the current time being within an acceptable predetermined range, the preceding vehicle having a preceding vehicle characteristic;
determining, by the server, the predicted driving condition for the current vehicle for the road segment, the predicted driving condition being based on the current vehicle characteristic of the current vehicle and the preceding vehicle characteristic of the preceding vehicle; and
providing, by the server, to the electronic device associated with the current vehicle before the current vehicle reaches the road segment, the predicted driving condition for the current vehicle on the road segment.

US Pat. No. 9,929,973

METHOD OF AND A SYSTEM FOR PROVIDING ACCESS TO A FILE TO A WEB RESOURCE

YANDEX EUROPE AG, Lucern...

1. A method of providing access to a file to a web resource from a user, the method executable at a first server, the first server maintaining a storage account associated with the user, the storage account having the file stored therein, the web resource being stored on a second server that is separate from the first server and is in communication with the first server via a communication network, the method comprising:receiving, by the first server, identification information from the user, via the communication network, from the second server, the identification information having been generated by the user having:
accessed the web resource on the second server, via an electronic device associated with the user, the electronic device being separate from the first server and the second server and being in communication with the communication network,
indicated a desire to allow the first server to provide the web resource on the second server access to the file,
been presented a form on the electronic device via the web resource, and
entered identifying information into the form;
accessing, by the first server, the storage account based upon the identification information;
receiving, by the first server, a selection of the user, via the form, of the file to be accessed by the web resource on the second server from files stored in the storage account;
creating, by the first server in response to the selection of the user, a file link to the file to be accessed by the web resource on the second server; and
transmitting, by the first server, the file link to the web resource on the second server, the file link being configured to allow the web resource on the second server to access the file stored on the first server without having to (i) transmit the file via the communication network from the first server to the second server and (ii) store the file on the second server, the file becoming accessible to both the first server and the second server.

US Pat. No. 10,736,229

DUAL-ACTION STORAGE MEDIA CHASSIS STRUCTURE AND SYSTEM

YANDEX EUROPE AG, Lucern...

1. A dual-action storage media chassis structure, comprising:a chassis including:
a partition corridor defined by two inner slide walls longitudinally extending in the chassis;
two storage spaces symmetrically disposed on both sides of the partition corridor, respectively, the partition corridor being located between the two storage spaces; and
a central back storage space for accommodating a third-type of electronic component having a third operating temperature;
two storage media modules accommodated respectively in the two storage spaces, each storage media module including:
a tray frame, each tray frame including a top access opening, each tray frame for accommodating a second-type of electronic component having a second operating temperature in a back portion of the tray frame and for accommodating a first-type of electronic component having a first operating temperature in a front portion of the tray frame;
two dual-action slide assemblies, each dual-action slide assembly including a corresponding one of the two inner slide walls and a respective inner slide panel longitudinally extending in the chassis and attached to the respective tray frame, the corresponding one of the two inner slide walls having a recess formed by a top protrusion, the corresponding one of the two inner slide walls adapted for slideably receiving the respective inner slide panel, each dual-action slide assembly being configured to longitudinally and slideably move the respective tray frame between a received position, a first withdrawn position and a second withdrawn position;
the front portion of a given tray frame, the back portion of the given tray frame and the central back storage space being disposed longitudinally sequentially in the dual-action storage media chassis structure from the front end thereof to a back end thereof, such that the second operating temperature is superior to the first operating temperature, and the third operating temperature is superior to the second operating temperature; and wherein when the tray frames are in any one of the first withdrawn position and the second withdrawn position, at least one electronic component of each of the tray frames is accessible simultaneously through the respective top access openings.

US Pat. No. 10,133,731

METHOD OF AND SYSTEM FOR PROCESSING A TEXT

Yandex Europe AG, Lucern...

1. A computer-implemented method for generating a summary of a digital text, the method executable on a server, the server coupled to a communication network, the method comprising:acquiring by the server, an indication of the digital text to be processed, the digital text comprising a plurality of sentences;
parsing by the server, each of plurality of sentences into one or more concept phrases, each of the one or more concept phrases having at least one word; the parsing being executed by applying at least one parsing parameter;
executing, by the server, a first analysis to generate a context-independent relation (CIR) value for a given concept phrase of the one or more concept phrases, the CIR value representing a first ratio of a co-inclusion of: (i) at least one word of the given concept phrase and (ii) at least one word of each of the remaining concept phrases of the one or more concept phrases;
executing, by the server, a second analysis to generate a context-dependent relation (CDR) value for the given concept phrase, the CDR value representing a second ratio of: (i) a number of sentences where the given concept phrase co-occurs with another concept phrase of the one or more concept phrases to (ii) a total number of the plurality of sentences containing the other concept phrase within the digital text;
determining by the server, a total CIR weight and a total CDR weight for each of the concept phrases;
determining by the server, for each of the concept phrase, a concept meaning value, based at least in part on its respective total CIR weight and the total CDR weight;
determining by the server, for a given sentence of the plurality of sentences, a sentence meaning value, based at least in part of the concept meaning value of each concept phrase contained in the given sentence;
ranking by the server, each sentence based at least on the determined sentence meaning value; and,
generating by the server, the summary of the digital text, the summary of the digital text comprising at least one sentence extracted from the digital text based on its determined ranking.

US Pat. No. 10,097,668

SYSTEM AND METHOD OF REQUEST PROCESSING IN A DISTRIBUTED DATA PROCESSING NETWORK

Yandex Europe AG, Lucern...

1. A computer-implemented method of processing a request, the method being executable on a first electronic device, the first electronic device being connected to a second electronic device and a third electronic device, the second electronic device being at least a part of a second subsystem, the first electronic device being at least a part of a first subsystem, the third electronic device being at least a part of a third subsystem, the second subsystem, the third subsystem and the first subsystem being at least a part of a distributed data processing system, the first electronic device and the second electronic device having respectively a first subsystem identifier and a second subsystem identifier associated with them correspondingly, the method comprises:receiving, by the first electronic device from the second electronic device, the request to be processed and a first version of a request identifier, the first version of the request identifier comprising:
a unique invariable part of the request identifier and
the second subsystem identifier;
generating, by the first electronic device, a second version of the request identifier by including the first subsystem identifier into the first version of the request identifier;
transmitting, by the first electronic device to the third electronic device, the request and the second version of the request identifier;
receiving, by the first electronic device from the third electronic device, a demand to provide a request processing history; and,
responsive to receiving the demand to provide the request history:
obtaining, by the first electronic device, a most complete version of the request identifier;
reading, by the first electronic device, subsystem identifiers from the most complete version of the request identifier, the subsystem identifiers comprising the first subsystem identifier and the second subsystem identifier;
determining, by the first electronic device, the request processing history by
retrieving, by the first electronic device from a first data storage of the first subsystem, information about processing of the request by the first electronic device, and
retrieving, by the first electronic device from a second data storage of the second subsystem, information about processing of the request by the second electronic device; and
transmitting, by the first electronic device, the request processing history from the first electronic device to the third electronic device.

US Pat. No. 10,061,820

GENERATING A USER-SPECIFIC RANKING MODEL ON A USER ELECTRONIC DEVICE

Yandex Europe AG, Lucern...

1. A method of generating a user-specific ranking model on an electronic device associated with a user, the method comprising:receiving, by the electronic device, from a search engine server, via a communication network, an indication of a plurality of resource-specific features associated with a web resource, at least a portion of the plurality of the resource-specific features being only trackable at the electronic device, the search engine server using a generic ranking model;
receiving, by the electronic device, a user interaction with the web resource performed by the user using the electronic device;
based on the user interaction, determining, by the electronic device, a value parameter for the web resource;
generating, by a machine learning algorithm (MLA) on the electronic device, the user-specific ranking model on the basis of the value parameter and the plurality of resource-specific features;
transmitting to the search engine server the user-specific ranking model, the transmitting causing the search engine server to retrain the generic ranking model with the user-specific ranking model to obtain a combined ranking model;
sending, to the search engine server, a query from the user of the electronic device, causing the search engine server to:
retrieve search results associated with the query;
rank the search results by using the combined ranking model to generate a user-specific ranked search results list; and
transmit the user-specific ranked search results list to the electronic device.

US Pat. No. 9,934,319

METHOD OF AND SYSTEM FOR DETERMINING CREATION TIME OF A WEB RESOURCE

YANDEX EUROPE AG, Lucern...

1. A method of determining a creation time of a target page, the method being executable at a server coupled to a communication network, the method comprising:creating a page network comprising a plurality of pages including the target page and a plurality of links, each link of the plurality of links having a source page and a destination page, each of the source page and the destination page being one of the plurality of pages, each page of the plurality of pages being one of a source page and a destination page for at least one of the plurality of links, the target page having at least one of an incoming link from a corresponding source page and an outgoing link to a corresponding destination page, each page of the plurality of pages having a corresponding creation time, the creation time for each page being one of known and unknown, the creation time of the target page being unknown, each page of the plurality of pages being associated with a corresponding creation time parameter T indicative of the corresponding creation time of the page, assigning an initial value to the creation time parameter T for each page of the page network, the initial value assigned to the creation time parameter T for any page having a known creation time being the corresponding known creation time, the initial value assigned to the creation time parameter T of the target page being a propagated value of creation time determined based on the creation time parameter of the corresponding at least one of the source page of the incoming link and the destination page of the outgoing link;
varying the initial value of the creation time parameter T of the target page to maximize a page network probability Pnetwork, the page network probability Pnetwork being based on a link probability P for each link of the plurality of links, the link probability P for each link being based at least in part on a difference between a creation time parameter T of the source page of the link and a creation time parameter T of the destination page of the link, the difference being the age difference a between the source page and the destination page; and
determining the creation time of the target page to be the value of the creation time parameter T of the target page which maximizes the page network probability Pnetwork.

US Pat. No. 9,916,390

MANAGING WEB BROWSER CACHE FOR OFFLINE BROWSING

YANDEX EUROPE AG, Lucern...

1. A computer-implemented method for managing a browser cache to facilitate offline browsing by a web browser associated with
the browser cache, the web browser executable by a user device, the method executable by the user device, the method comprising:
storing in the browser cache of the web browser on the user device information about a first plurality of contents of a first
web page visited by a user during one or more web browsing sessions;

storing in the browser cache of the web browser on the user device information about a second plurality of contents of a second
web page visited by the user during one or more web browsing sessions, the first plurality of contents of the first web page
and the second plurality of contents of the second web page forming a total plurality of contents of the first and the second
web pages;

analyzing, by the user device, the total plurality of contents of the first and the second web pages;
determining, by the user device, logical relationships among the total plurality of contents of the first and the second web
pages, the logical relationships comprising a contextual relationship among the total plurality of contents of the first and
the second web pages, the logical relationships between first and second portions of the total plurality of contents of the
first and the second web pages existing when the second portion is opened from a link embedded in the first portion;

associating at least a portion of the total plurality of contents of the first and the second web pages with a cluster in
the browser cache based on the determined logical relationships among the total plurality of contents of the first and the
second web pages, the at least a portion of the total plurality of contents of the first and the second web pages comprising
at least some content from the first plurality of contents of the first web page and at least some content from the second
plurality of contents of the second web page, the cluster being assigned a given unique identifier;

storing, in the browser cache, the given unique identifier with each of the at least the portion of the total plurality of
contents of the first and the second web pages thereby grouping each of the at least the portion of the total plurality of
contents of the first and the second web pages into the cluster in the browser cache;

determining that a given content of the total plurality of contents of the first and the second web pages is unimportant for
the user based on user interactions with the respective first and second web pages being indicative of non-importance of the
given content to the user;

de-clustering the given content from the cluster;
receiving a request to load the first and the second web pages from the web browser on the user device;
upon detecting that the user device is offline, determining if the first and the second web pages are stored in the cache
and if the first and the second web pages are associated with the cluster;

when the first and the second web pages are stored in the cache and associated with the cluster, retrieving from the cache
for offline browsing on the user device the at least the portion of the total plurality of contents of the first and the second
web pages associated with the cluster excluding the given content having been de-clustered from the cluster;

receiving from the user via the web browser one or more edits to at least a portion of a given web page contents when the
user device is offline;

associating an edited portion of the given web page contents with the cluster with which said web page is associated;
storing the given unique identifier with the edited portion and with the given web page contents in the browser cache thereby
grouping the edited portion and the given web page contents into the cluster in the browser cache; and

when the user device is online, synchronizing the edited portion with the given web page contents stored in the browser cache
with a remote web server.

US Pat. No. 9,916,831

SYSTEM AND METHOD FOR HANDLING A SPOKEN USER REQUEST

YANDEX EUROPE AG, Lucern...

1. A computer-implemented method for handling a spoken user request received from a user of an electronic device comprising
a processor configured to execute applications, the method executable by each one of at least two of the applications, each
one of the at least two applications executing a speech-to-text instructions module on the electronic device, each one of
the two applications aware of actions executable by others of the at least two of the applications, the method comprising:
processing, by a first speech-to-text module of one of the at least two of the applications of the electronic device, an audio
representation of the spoken user request to obtain a first text representation of the spoken user request;

determining by the first speech-to-text module of one of the at least two of the applications of the electronic device, based
on its awareness of actions executable by others of the at least two of the applications that the first text representation
of the spoken user request corresponds to an action better suited to be executable by an other one of the at least two of
the applications;

transferring at least part of the first text representation of the spoken user request to the other one of the at least two
of the applications by the one of the at least two of the applications, the at least part of the first text representation
of the spoken user request comprising an audio representation of the spoken user request;

processing, by a second speech-to-text module of the other one of the at least two of the applications the at least part of
the first text representation of the spoken user request comprising the audio representation of the spoken user request to
obtain a second text representation of the spoken user request;

determining, by the second speech-to-text module of the other one of the at least two of the application, that the second
text representation of the spoken user request corresponds to the action; and

causing execution of the action by the other one of the at least two of the applications.

US Pat. No. 10,192,324

METHOD AND ELECTRONIC DEVICE FOR DETERMINING WHETHER A POINT LIES WITHIN A POLYGON IN A MULTIDIMENSIONAL SPACE

YANDEX EUROPE AG, Lucern...

1. A computer-implemented method for determining whether a point lies within a first polygon in a multidimensional space, the method executable by a processor of a device, the point corresponding to a location of the device, the first polygon bounding an area on a map displayable on the device, the method comprising:reading, from a non-transitory computer-readable medium, region coordinates of at least one of a plurality of regions of the multidimensional space each encompassing a respective portion of first polygon coordinates, the first polygon coordinates defining first polygon boundaries of the first polygon, each region comprising a respective region boundary such that each region boundary intersects at least once the first polygon boundaries of the first polygon, the regions approximating the first polygon;
accessing point coordinates defining a position of the point in the multidimensional space;
executing an analysis of the region coordinates and the point coordinates to determine a number of times a ray projecting from the point towards any direction intersects the plurality of regions;
generating, based on the number of times the ray projecting from the point towards any direction intersects any of the plurality of regions, one of an indication that the point lies within the first polygon and an indication that the point does not lie within the first polygon;
using, by the device, the generated indication for displaying the map to a user of the device;
wherein the multidimensional space has only two dimensions, and each one of the regions is a respective area of the multidimensional space consisting of:
all points no further than a first boundary distance away from a first side of a line approximating the respective portion of the first polygon of the one of the regions, the first boundary distance being a shortest distance away from the first side of the line to a point most distant from the first side of the line on the respective portion of the first polygon; and
all points no further than a second boundary distance away from a second side of the line, the second boundary distance being a shortest distance away from the second side of the line to a point most distant from the second side of the line on the respective portion of the first polygon.

US Pat. No. 10,135,754

METHOD FOR COORDINATING WEB COMMUNICATIONS

Yandex Europe AG, Lucern...

1. A computer-implemented method for coordinating web communications, the method being executable at a browser coordination server in communication with a first electronic device and a second electronic device via a network, the first electronic device executing a first browser and the second electronic device executing a second browser, the method comprising:receiving, from the first electronic device, an indication that the first browser obtained a first version of a web resource from a web server;
receiving, from the second electronic device, an indication that the second browser obtained a second version of the web resource from the web server, the second version of the web resource being different from the first version of the web resource and the web server being different from the browser coordination server;
determining that the second version of the web resource is an updated version of the web resource relative to the first version of the web resource; and
sending, to the first electronic device, an indication that the first version of the web resource is out of date.

US Pat. No. 10,102,292

METHOD AND SYSTEM OF PROCESSING A SEARCH QUERY

Yandex Europe AG, Lucern...

1. A method of processing a search query, the method executable by a search engine server, the search engine server implementing a search engine for determining one or more search results to a search query, the search engine server coupled to a crawled web resource database and a communication network, the search engine server accessible by an electronic device associated with a user via the communication network, the method comprising:receiving, by the search engine server, the search query from the electronic device associated with a user;
executing a first ranking process, the first ranking process comprising:
executing a ranking algorithm of the search engine server, the ranking algorithm being configured to select at least one relevant web resource to the search query for inclusion into a higher-ranked position of a search engine result page (SERP), the at least one web resource being selected based at least on:
a web-resource-inherent data associated with the at least one relevant web resource; and
a prior-history feature, the prior-history feature corresponding to previously collected user interaction data associated with the at least one web resource, the user interaction data comprising one or more user interactions with the at least one web resource;
executing a second ranking process, the second ranking process comprising:
acquiring from the crawled web resource database, a plurality of candidate web resources, each candidate web resource of the plurality of candidate web resources having no prior-history feature to be used by the ranking algorithm for inclusion into the higher-ranked position of the SERP;
applying a first machine learned algorithm, the first machine learned algorithm being different from the ranking algorithm, to determine, for each of the candidate web resources of the plurality of candidate web resources, a predicted relevancy parameter, the predicted relevancy parameter being based, at least in part, on a respective web-resource-inherent data, the predicted relevancy parameter being indicative of a predicted relevancy of the respective candidate web resource to the search query;
applying a second machine learned algorithm to determine, for each of the plurality of candidate web resources, an exploration score based at least in part of the respective predicted relevancy parameter, and inputting the determined exploration score of the plurality of candidate web resources into a bandit-based-ranking algorithm for:
ranking the plurality of candidate web resources;
selecting a subset of higher-ranked candidate web resources by applying a predefined inclusion parameter indicative of an acceptable number of candidate web resources of the plurality of candidate web resources to be included into the SERP;
generating the SERP for rendering search results in a decreased relevancy order, the generating including adding to the higher-ranked position of the SERP:
the subset of higher ranked candidate web resources determined by the second ranking process;
the at least one relevant web resource to the search query determined by the first ranking process;
receiving user interaction data with a displayed web resource on the SERP, the displayed web resource being one of the at least one of the subset of higher ranked candidate web resources and the at least one relevant web resource; and
storing an indication of the user interaction data in association with the subset of higher ranked candidate web resources.

US Pat. No. 10,346,455

METHOD AND SYSTEM FOR GENERATING A SUMMARY OF THE DIGITAL CONTENT

YANDEX EUROPE AG, Lucern...

1. A method for generating a summary of digital content, the method implementable by a processor of a computer-device, the method comprising:receiving an indication of the digital content;
executing a syntax analysis of a textual representation of the digital content;
segmenting the digital content into an ordered set of fragments, including a first fragment and a second fragment;
executing a semantic analysis of each fragment of the textual representation of the digital content;
determining a utility parameter for each fragment of the set of fragments, the utility parameter being indicative of a predicted level of interest for a given user;
determining a linkage between each pair of fragments of the set of fragments, the linkage of the second fragment paired with the first fragment being indicative of a comprehensibility of the second fragment without the first fragment to the user;
in response to the utility parameter of the second fragment exceeding a pre-determined threshold value of the utility parameter, including the second fragment in a subset of fragments for inclusion in the summary of the digital content;
in response to the linkage having been determined between the second fragment and the first fragment, including the first fragment in the subset of fragments;
generating the summary of the digital content based on the subset of fragments.

US Pat. No. 10,339,561

METHOD OF DETECTING A CHANGE IN USER INTERACTIVITY WITH A SERP

YANDEX EUROPE AG, Lucern...

1. A method of detecting if a change in user interactivity has occurred between a first and a second version of a SERP, the second version of the SERP being a modified version of the SERP, the method executable at a server, the method comprising:presenting the first version of the SERP to a first set of users and the second version of the SERP to a second set of users;
assessing first measures and second measures of user interactions with the first and the second version of the SERP respectively, the user interactions being of a pre-selected type of user interactions;
computing a first and a second distribution of the first measures and the second measures of user interactions, respectively;
analyzing the first and the second distribution conjointly for determining a magnitude of the change in user interactivity, the analyzing comprises:
determining a set of ratios, each ratio within the set of ratios being a ratio between a value of the first distribution and a corresponding value of the second distribution for each measure of user interaction, respectively;
determining a lowest ratio and a highest ratio within the set of ratios, the lowest ratio being indicative of a smallest relative change between the first and the second distributions and the highest ratio being indicative of a largest relative change between the first and the second distributions;
determining the magnitude of the change in user interactivity based on a combination of the lowest ratio and the highest ratio; and
determining when the magnitude of the change in user interactivity is statistically significant;
responsive to the magnitude of the change in user interactivity being statistically significant, determining that the change in user interactivity has occurred between the first and the second version of the SERP; and
based at least partially on the change in user interactivity and the pre-selected type of user interactions, determining if the second version of the SERP should be used instead of the first version of the SERP as a current production version of the SERP.

US Pat. No. 9,871,813

METHOD OF AND SYSTEM FOR PROCESSING AN UNAUTHORIZED USER ACCESS TO A RESOURCE

YANDEX EUROPE AG, Lucern...

1. A method of processing a potentially unauthorized user access request, the method executable on a server, the method comprising:
receiving a first session identifier associated with a first communication session associated with a user account;
receiving a second session identifier associated with a second communication session associated with the user account, the
second communication session being active concurrently with the first communication session;

based on user behaviour within the first communication session, generating a first user behaviour model associated with the
first communication session, the first user behaviour model having a first model portion based on at least one device-specific
parameter and a second model portion based on at least one user-device interaction parameter, the user-device interaction
parameter being indicative of a type of action performed by a first electronic device within the first communication session;

based on user behaviour within the second communication session, generating a second user behaviour model associated with
the second communication session the second user behaviour model having a first model portion based on at least one device-specific
parameter and a second model portion based on at least one user-device interaction parameter, the user-device interaction
parameter being indicative of a type of action performed by a second electronic device within the second communication session;

responsive to one of the first user behaviour model and the second user behaviour model being different from a stored authorized
user behaviour model associated with the user account, the stored authorized user behaviour model having a first model portion
based on at least one device-specific parameter and a second model portion based on at least one user-device interaction parameter,
restricting user activity within the respective one of the first communication session and the second communication session;
and

allowing unrestricted user activity within the other one of the first communication session and the second communication session.

US Pat. No. 10,425,420

METHOD OF AND SYSTEM FOR GENERATING USER PROFILES

Yandex Europe AG, Lucern...

1. A method of generating a user profile, the method executable at a server, the server having previously generated a first profile of a first user based on user interaction parameters received over a predetermined period of time and associated with a plurality of communication sessions, the first profile being associated with an updating period for updating the first profile, the first profile of the first user having been stored in a first database associated with the server, the method comprising:receiving a request to provide access to the first profile of the first user;
retrieving the first profile of the first user from the first database;
in response to at least one user interaction parameter in the request differing from the user interaction parameters in the first profile of the first user, performing a verification action associated with the first user;
upon receiving a confirmation in response to the verification action, generating a second profile of the first user including the at least one interaction parameter of the first user, which is different from the interaction parameters in the first profile of the first user, the second profile being associated with a limited activity period, the limited activity period being extendable in response to the first user continuing to use interaction parameters different from the user interaction parameters in the first profile of the first user, but matching the interaction parameters in the second profile of the first user;
at the updating period of the first profile:
in response to the limited activity period of the second profile being non-expired at a given iteration of the updating period, adding to the first profile of the first user the interaction parameter of the first user from the second profile of the first user; and
deleting the second profile.

US Pat. No. 10,324,992

METHOD AND APPARATUS FOR GENERATING A RECOMMENDED CONTENT LIST

YANDEX EUROPE AG, Lucern...

1. A method for generating a content recommendation for a given user of a recommendation system, the method executable at a recommendation server, the method comprising:receiving, by the recommendation server, from an electronic device associated with the given user a request for the content recommendation;
responsive to the request generating, by the recommendation server, a set of content recommendations for the given user, the generating being executed by a prediction module of the recommendation server, the prediction module having been trained using a training set of training events, such that for each given training event from the training set of training events:
at least one user-nonspecific feature is used as a first input parameter for the prediction module training, the at least one user-nonspecific feature having been retrieved from the latest version of a snapshot archive available at a time of the given training event occurring, the latest version of the snapshot archive having been generated prior to the time of the given training event occurring;
at least one user-specific feature is used as a second input parameter for the prediction module training the at least one user-specific feature available at the time of the given training event occurring;
the generating comprising:
acquiring at least one in-use user non-specific feature from a then latest version of the snapshot archive, the then latest version of the snapshot archive having been generated prior to the generating the set of content recommendations;
generating an in-use user-specific feature at a moment of time of generating the set of content recommendations;
using the at least one in-use user non-specific feature and the in-use user-specific feature for generating the set of content recommendations;
transmitting at least a sub-set of the set of content recommendations to the electronic device.

US Pat. No. 10,447,817

METHOD OF AND SYSTEM FOR PROVIDING INFORMATION TO A USER OF A CLIENT DEVICE

YANDEX EUROPE AG, Lucern...

1. A method of providing information to a user of a client device:displaying, on a screen of the client device, a browser having an address bar;
in response to a search request with a searched search term, displaying a search results page on the screen of the client device within the browser, the search results page having been generated based on the searched search term;
receiving, from the user of the client device via the browser, an indication of a network resource to be furnished to the client device, the indication having been generated in response to user interaction with the search results page by selecting the network resource;
sending, from the client device to at least one server, a request to furnish the network resource to the client device;
receiving, by the client device from the at least one server, the network resource and information regarding the network resource;
displaying, on the screen of the client device, the network resource and the information regarding the network resource; and
displaying, on the screen of the client device, within the address bar of the browser, information from other than the publisher of the network resource,
wherein the information from other than the publisher of the network resource includes historical navigation information,
the historical navigation information including
a first user-selectable object displaying the searched search term that led to the network resource being displayed, the first user-selectable object being configured to cause displaying of the search results page for the searched search term in response to being selected by the user, and
second user-selectable objects displaying references to network resources, other than the network resource, the network resources having been selected by the user following the search results page and displayed following the search results page, the second user-selectable objects:
(i) being displayed simultaneously with each other and the first user-selectable object and
(ii) being selectable independently from each other and the first user-selectable object, and
each second user-selectable object being configured, in response to being selected by the user, to cause returning to a network resource page of the network resource, and
the historical navigation information being displayed in a breadcrumb format within the address bar of the browser.

US Pat. No. 10,255,240

METHOD AND SYSTEM FOR PROCESSING A VOICE-BASED USER-INPUT

Yandex Europe AG, Luzern...

1. A method of processing a search query, the method executable at a server, the method comprising:receiving, via a communication network from an electronic device associated with the user, a first voice command from the user, the first voice command comprising an indication of a first search query;
receiving, via the communication network from the electronic device associated with the user, a second voice command from the user, the second voice command comprising an indication of a second search query;
determining if the second search query is a refinement of the first search query, said determining comprising:
performing a first pseudo search based on a combination of the first search query and the second search query;
performing a second pseudo search including the second search query alone;
determining relative weight of the first pseudo search results and the second pseudo search results;
deducing that;
(i) the second search query is a refinement of the first search query responsive to the relative weight of the first pseudo search results being higher than that of the second pseudo search results;
(ii) the second search query is a brand new query independent of the first search query responsive to the relative weight of the first pseudo search results being lower than that of the second pseudo search results.

US Pat. No. 10,191,856

METHOD OF MANAGING WEB BROWSER CACHE SIZE USING LOGICAL RELATIONSHIPS AND CLUSTERING

Yandex Europe AG, Lucern...

1. A computer-implemented method for managing a browser cache, the method comprising:storing in a cache of a web browser on a user device a plurality of web pages visited by a user during one or more web browsing sessions;
generating a web page identifier for each web page of the plurality of web pages;
defining a plurality of clusters of the plurality of web pages stored in the cache by:
determining logical relationships among the plurality of web pages stored in the cache, and
associating each web page of the plurality of web pages with one or more clusters of the plurality of clusters based on the determined logical relationships among the plurality of web pages such that each given cluster of the plurality of clusters includes at least one web page of the plurality of web pages, a list of identifiers, and a unique cluster identifier, the list of identifiers including the web page identifier of each web page of the at least one web page of the given cluster;
upon detecting a usage size of the cache equal to or exceeding a threshold value, determining, based on information associated with the plurality of clusters, at least a portion of at least one cluster of the plurality of clusters to be deleted from the cache, the information associated with the plurality of clusters including at least: (i) the list of identifiers and (ii) the unique cluster identifier of each cluster of the plurality of clusters; and
deleting from the cache at least the portion of the at least one cluster based on at least one corresponding web page identifier of the list of identifiers of the at least one cluster.

US Pat. No. 10,496,711

METHOD OF AND SYSTEM FOR PROCESSING A PREFIX ASSOCIATED WITH A SEARCH QUERY

Yandex Europe AG, Lucern...

1. A computer-implemented method, the method comprising:receiving, from an electronic device, a user input, the user input including at least two characters defining a prefix, the prefix defining at least a portion of a search query which can be submitted to a search engine;
identifying, by a processor, a list of suggested search queries associated with the prefix, each one of the list of suggested search queries having been ranked according to a likelihood of being selected by the user;
identifying, in the list of suggested search queries, a first plurality of suggested search queries, each one of the first plurality of suggested search queries being associated with a first resource;
a given one of the first plurality of suggested search queries having been assigned a parameter reflective of a likelihood of the first resource being selected as a result of the given one of the first plurality of suggested search queries having been submitted to the search engine;
the first plurality of suggested search queries including a top ranked suggested search query, the top ranked suggested search query being a suggested search query having been determined to be the most likely one to be selected by the user in the list of suggested search queries;
identifying, in the list of suggested search queries, a second plurality of suggested search queries, each one of the second plurality of suggested search queries being associated with a second resource;
a given one of the second plurality of suggested search queries having been assigned a parameter reflective of a likelihood of the second resource being selected as a result of the given one of the first plurality of suggested search queries having been submitted to the search engine;
calculating a first cumulative resource weight based on parameters assigned to each one of the first plurality of suggested search queries; and
calculating a second cumulative resource weight based on parameters assigned to each one of the second plurality of suggested search queries;
upon determining that the first cumulative resource weight is no less than the second cumulative resource weight:
identifying display data associated with a content item associated with the first resource for transmission to the electronic device; and
transmitting, prior to a completed search query associated with the prefix being submitted to the search engine, to the electronic device, the display data along with the list of suggested search queries.

US Pat. No. 10,445,379

METHOD OF GENERATING A TRAINING OBJECT FOR TRAINING A MACHINE LEARNING ALGORITHM

YANDEX EUROPE AG, Lucern...

1. A computer implemented method of generating a training object for training a machine learning algorithm, the training object including a digital training document and an assigned label, the method executable at a training server, the method comprising:acquiring the digital training document to be used in the training;
transmitting, via a communication network, the digital training document to a plurality of assessors, transmitting further including indicating a range of possible labels for the assessors to assess from the range of possible labels including at least a first possible label and a second possible label;
obtaining from each of the plurality of assessors a selected label to form a pool of selected labels;
generating a consensus label distribution based on the pool of selected labels, the consensus label distribution representing a range of perceived labels for the digital training document and an associated probability score for each of the perceived labels;
the consensus label distribution being generated by aggregating an assessor-specific perceived label distribution for each assessor of the plurality of assessors, wherein:
the assessor-specific perceived label distribution for a given assessor of the plurality of assessors, is determined by:
determining, for each of the range of possible labels, an assessor-inherent probability score, the assessor-inherent probability score for a given one of the range of possible labels being indicative of the probability of the given one of the range of possible labels being selected by the given assessor;
determining, for each of the range of possible labels, a conditional probability score, the conditional probability score for a given one of the range of possible labels being indicative of the probability of the given one of the range of possible labels being perceived as a most relevant label to the digital training document by the given assessor despite the given assessor having selected a different one of the range of possible labels; and
obtaining the assessor-specific perceived label distribution by aggregating, for each of the range of possible labels, the assessor-inherent probability score and the conditional probability score for the given assessor;
training the machine learning algorithm using the digital training document and the consensus label distribution.

US Pat. No. 10,394,420

COMPUTER-IMPLEMENTED METHOD OF GENERATING A CONTENT RECOMMENDATION INTERFACE

YANDEX EUROPE AG, Lucern...

1. A computer-implemented method of generating a content recommendation interface for a user of an electronic device, the method executable by the electronic device, the electronic device having a processor and a user-interface device coupled to the processor, the processor being configured to execute a browser application, the electronic device further comprising a network interface for connecting to a recommendation server via a communication network, the method comprising:receiving, via the user-interface device, a first user-indication for activating the browser application;
responsive to the first user-indication, generating on the user-interface device a first graphical user interface (GUI) of the browsing application, the first GUI comprising three simultaneously presented visual-interface elements disposed within the first GUI:
a first interface element comprising an omnibox, the omnibox configured to receive at least one of a network address and a search query, the first interface element being located substantially in a center of the first GUI;
a second interface element comprising at least one icon representing user-selected content, each of the at least one icons being linked to an associated network resource accessible via the communication network,
the second interface element being spaced a first distance away, in a first direction, from the first interface element;
a third interface element comprising at least one recommendation icon, the first recommendation icon associated with recommended content selected, by the recommendation server, from a plurality of potentially recommendable content items,
the third interface element being spaced a second distance away, in a second direction, from the first interface element, the second direction being opposite to the first direction;
the at least one recommendation icon including a first recommendation icon being partially visible within the first GUI;
receiving, via the user-interface device, an indication of a first user-interaction with the first GUI;
responsive to determining the first user-interaction being a user-gesture associated with the first direction, generating a second GUI, to be displayed in place of the first GUI, the second GUI including:
a portion of the first interface element located at an extremity of the second GUI located in the first direction; and
the second interface element located such that the first distance is collapsed; and
not including the third interface element;
responsive to determining the first user-interaction being the user-gesture associated with the second direction, generating the second GUI, to be displayed in place of the first GUI, the second GUI including:
the third interface element, such that at least one recommendation icon includes the first recommendation icon and at least a second recommendation icon, the first recommendation icon to be displayed in its entirety and
the at least the second recommendation icon to be at least partially displayed; and
not including the first interface element and the second interface element;
executing an animated transition between the first GUI and the second GUI responsive to the user-gesture; and
determining a parameter of the animated transition, the parameter including at least a speed of transition, the determining comprising:
receiving a first location and a first time of the user-gesture,
receiving a second location and a second time of the user-gesture, and
determining the speed of transition by computing the difference between the second location and the first location and the difference between the second time and the first time of the user-gesture.

US Pat. No. 10,346,182

METHOD AND SYSTEM FOR DYNAMIC INDEXATION AND LOADING OF MODULE CODES

YANDEX EUROPE AG, Lucern...

1. A computer-implemented method for loading module codes, the module codes required by a computing device for executing an action, the method executed on the computing device,the computing device being coupled to a remotely stored first predetermined index;
the computer device storing a locally stored at least a portion of the first predetermined index;
the method comprising:
receiving, by the computing device, a request for executing the action, the action being executable using a first module code;
responsive to the request for executing the action, performing a verification whether the locally stored at least the portion of the first predetermined index is available;
in response to the locally stored at least the portion of the first predetermined index being available, acquiring, from one of the locally stored at least the portion of the first predetermined index and the remotely stored first predetermined index:
a first module code reference, the first module code reference indicating a first module code location, and
an indication that executing the first module code requires a second module code, and
an indication of a second predetermined index, the second predetermined index comprising a second module code reference, the second module code reference indicating a second module code location, the second module code supporting execution of the first module code;
in response to the locally stored at least the portion of the first predetermined index being unavailable, acquiring, from the remotely stored first predetermined index:
the first module code reference;
the indication that executing the first module code requires the second module code; and
the indication of the second predetermined index;
acquiring, from the second predetermined index, the second module code reference;
based on the first module code reference, acquiring the first module code from the first module code location;
based on the second module code reference, acquiring the second module code from the second module code location; and
responsive to the presence of the first module code and the second module code, executing the action by running the first module code and the second module code.

US Pat. No. 10,331,711

METHOD AND APPARATUS FOR PROVIDING AN INTERACTIVE MAP SECTION ON A USER INTERFACE OF A CLIENT DEVICE

YANDEX EUROPE AG, Lucern...

1. A method for providing an interactive map section on a user interface of a client device comprising:sending, from the client device to at least one server via a communication network, a request for a map section;
sending, from the client device to the at least one server via the communication network, a request for information associated with the map section;
receiving, from the at least one server by the client device via the communication network, the map section, the map section forming a map layer;
receiving, from the at least one server by the client device via the communication network, instructions for generating an object layer, the object layer containing at least one object associated with the requested information;
generating the object layer on the client device using the instructions for generating the object layer;
receiving, from the at least one server by the client device via the communication network, instructions for generating a logical layer, the logical layer containing at least one interactive element, the at least one interactive element being adapted to be activated as a result of a user interacting, via the user interface, with the at least one object of the object layer, the at least one interactive element for providing information associated with the at least one object;
generating the logical layer on the client device using the instructions for generating the logical layer;
merging the map layer, the object layer and the logical layer on the client device to generate the interactive map section; and
displaying the interactive map section on the user interface of the client device;
in response to receiving, via the user interface, a user interaction with the at least one object of the object layer, activating the at least one interactive element for displaying information associated with the at least one object on the user interface.

US Pat. No. 10,282,358

METHODS OF FURNISHING SEARCH RESULTS TO A PLURALITY OF CLIENT DEVICES VIA A SEARCH ENGINE SYSTEM

YANDEX EUROPE AG, Lucern...

1. A method of furnishing search results to a plurality of client devices via a search engine system, the search engine system including:at least one server,
a first database comprising an inverted index having a plurality of posting lists in electronic communication with the at least one server wherein each posting list corresponds to a search term and comprises postings indicative of data items that include the search term,
a second database having information related to previous user interactions with search results having been provided by the system in electronic communication with the at least one server,
a third database having a plurality of data items each assigned with a respective data item number;
an indexing server configured to, in response to acquiring a new data item from the third database:
assign a data item number to the new data item;
renumber the respective data item number of a subset of the plurality of data items;
analyze the new data item to determine one or more search terms; and
generate a posting in the associated posting list, the posting comprising the data item number;
a communications network configured to provide for electronic communication between the at least one server and the plurality of client devices,
the method comprising, via the at least one server:
receiving a search query from a one of the plurality of client devices via the communications network, the search query including search terms and information indicative of a property of an application running on the client device originating the search query, wherein the property indicates desktop browser or smartphone app;
performing a search by exploring in parallel each of the posting lists of the inverted index corresponding to the search terms to determine search results in respect of the search query, wherein a given data item whose number is encountered in each posting list relevant to the search query is considered to be a search result, the search results having a relevance rank order;
determining a probable user search result interaction sequence based on information in the second database and on the information indicative of the property of the application running on the one of the client devices originating the search query, the probable user search result interaction sequence being different from the relevance rank order of the search results and depends on the application property;
sending the search results to the one of the client devices via the communications network, the search results for or displaying on an associated output device of the one of the client devices, the search results including information allowing for visual configuration of the search results provided to the user by the application originating the search query according to probable user search result interaction sequence, while maintaining the relevance rank order.

US Pat. No. 10,275,406

SYSTEM AND METHOD FOR RANKING SEARCH RESULTS BASED ON USEFULNESS PARAMETER

Yandex Europe AG, Lucern...

1. A method of generating a search engine results page (SERP), the method executable at a server, the method comprising:a) receiving, by the server, a search query from an electronic device associated with a user;
b) responsive to the search query, generating, by the server, a search query result set, the search query result set including at least one general search result and at least one vertical search result;
c) ranking, by the server, based at least in part on a usefulness parameter, the search query result set to obtain a ranked plurality of search results, the usefulness parameter being indicative of an optimal position of the at least one vertical search result in the ranked plurality of search results; and
d) generating, by the server, the SERP, the SERP displaying the ranked plurality of search results with the at least one vertical search result being placed at the optimal position;
wherein the usefulness parameter has been predetermined based on a training set of user data on past user interactions with the at least one vertical search result, by:
i) previously receiving the search query from a test electronic device associated with a first member of a first test user group (TUG);
ii) in response to the receiving the search query, generating and ranking a second search query result set to obtain a second ranked plurality of search results, the second ranked plurality of search results including a mixed ranking of the at least one general search result and the at least one vertical search result, the ranking the second search query result set including: modifying an original rank of the at least one vertical search result to rank the at least one vertical search result randomly;
iii) displaying the second ranked plurality of search results in a previous SERP on the test electronic device associated with the first member of the first TUG, the previous SERP including the at least one vertical search result placed at a first random position;
iv) analyzing user interactions of the first member of the first TUG with respect to the at least one vertical search result on the previous SERP;
v) based at least in part on the user interactions of the first member of the first TUG with respect to the at least one vertical search result at the first random position on the previous SERP, determining a usefulness of the at least one vertical search result relative to the search query; and
vi) generating the usefulness parameter based on the determined usefulness of the at least one vertical search result relative to the search query, the usefulness parameter for determining, in use, the optimal position of the at least one vertical search result.

US Pat. No. 10,798,852

METHOD OF CONTROLLING COOLING IN SERVER ROOM AND SYSTEM IMPLEMENTING THEREOF

YANDEX EUROPE AG, Lucern...

1. An air flow control method for cooling a data center comprising at least a first server room and a second server room, the first server room comprising a first chamber and a second chamber partitioned therebetween by a first server rack and being in fluid communication therebetween via the first server rack, the first chamber having a first air inlet fluidly coupled to an outside area of the server room, the second chamber having an air outlet fluidly coupled to the outside area, the second server room comprising a third chamber and a fourth chamber partitioned therebetween by a second server rack and being in fluid communication therebetween via the second server rack, the third chamber having a second air inlet fluidly coupled to the outside of the data center, and the fourth chamber being fluidly coupled to the second chamber, the method being executable by a controller unit coupled to:a first damper partitioning the second chamber into a first portion and a second portion fluidly coupled to the air outlet, the first damper configured to control the amount of air to flow from the first portion into the second portion;
a second damper partitioning the fourth chamber into a third portion and a fourth portion fluidly coupled to the air outlet, the second damper configured to control the amount of air to flow from the third portion into the fourth portion;
a first inlet fan configured to flow air from the outside area into the first chamber at different speeds, via the first air inlet;
a second inlet fan configured to flow air from the outside area into the third chamber at different speeds via the second inlet;
an outlet fan configured to flow air from the second chamber into the outside area at different speeds, via the air outlet;
a first differential pressure gauge configured to measure a first differential pressure value of an air pressure of the first chamber relative to an air pressure of the outside area;
a second differential pressure gauge configured to measure a second differential pressure value of an air pressure of the second chamber relative to the air pressure of the outside area;
a third differential pressure gauge configured to measure a third differential pressure value of an air pressure of the third chamber relative to the air pressure of the outside area;
a fourth differential pressure gauge configured to measure a fourth differential pressure value of an air pressure of the first portion relative to the air pressure of the outside area;
a fifth differential pressure gauge configured to measure a fifth differential pressure value of an air pressure of the third portion relative to the air pressure of the outside area; and
the method comprising:
receiving the first differential pressure value from the first differential pressure gauge;
receiving the second differential pressure value from the second differential pressure gauge;
receiving the third differential pressure value from the third differential pressure gauge;
receiving the fourth differential pressure value from the fourth differential pressure gauge;
receiving the fifth differential pressure value from the fifth differential pressure gauge;
generating a first control signal to adjust the speed of the first inlet fan based on the first differential pressure value;
generating a second control signal to adjust the speed of the outlet fan based on the second differential pressure value;
generating a third control signal to adjust the speed of the second inlet fan, based on the third differential pressure value;
generating a fourth control signal to adjust the opening of the first damper based on the fourth differential pressure value;
generating a fifth control signal to adjust the opening of the second damper based on the fifth differential pressure value;
transmitting the first, the second and the third control signals to the respective inlet and outlet fans to adjust the first differential pressure value to a first target value, the second differential pressure value to a second target value, and the third differential value to a third target value, the first target value being above the second target value, thereby maintaining a flow of air from the first chamber to the second chamber; and
transmitting the fourth and fifth control signals to the respective first and second dampers to adjust the fourth differential pressure value to a fourth target value, and adjust the fifth differential pressure value to a fifth target value, the fourth target value being below the first target value and above the second target value, the fifth target value being below the third target value and above the second target value.

US Pat. No. 10,628,493

METHOD AND SYSTEM FOR GENERATING SEARCH QUERY SUGGESTIONS

Yandex Europe AG, Lucern...

1. A method of generating search query suggestions for a search query received from a user in a search application, the method being executable by a processor that is communicatively coupled to the search application, the method comprising:receiving a search query, the search query being a received search query and including at least one received search query term;
receiving an indication of a current cursor position with respect to the at least one received search query term of the received search query;
responsive to the current cursor position, being one of a plurality of predefined cursor positions, generating at least one suggested search query based on at least one of a plurality of predefined suggest actions, wherein:
each one of the plurality of predefined cursor positions has been associated with at least one of the plurality of predefined suggest actions;
the at least one of the plurality of predefined suggest actions being one of an inserting suggest action and a deleting suggest action;
the one of the plurality of predefined cursor positions is one of a search query beginning cursor position, a search query ending cursor position, a search term beginning cursor position, and a search term ending cursor position; and
the at least one of the plurality of predefined suggest actions is for executing of a respective one of a plurality of suggest algorithms to generate the at least one suggested search query, such that:
in response to detection of the current cursor position being one of: the search query beginning cursor position and the search term beginning cursor position, executing the inserting suggest action for executing an insertion suggest algorithm for inserting a term into terms of the search query at the current cursor position;
in response to detection of the current cursor position being the search query ending cursor position, executing at least one of the inserting suggest action and the deleting suggest action, the deleting suggest action for executing a deletion suggest algorithm for deleting a cursor indicative term from the search query;
in response to detection of the current cursor position being the search query term ending cursor position, executing the deleting suggest action;
the at least one suggested search query generated by the at least one of the plurality of suggest actions being different from another suggested search query generated by another one of the plurality of predefined suggest actions.

US Pat. No. 10,324,764

METHOD AND SYSTEM FOR PROCESSING TASKS IN A CLOUD SERVICE

YANDEX EUROPE AG, Lucern...

1. A method of processing a task, the method executable in a system including:a first data center,
at least one second data center, and
a cross-datacenter storing device, the cross-datacenter storing device being remote from and communicatively coupled to the first data center and the at least one second data center;
the first data center including a first controlling electronic device associated with a plurality of servers of the first data center and coupled to the cross-datacenter storing device, the second data center including a second controlling electronic device associated with a plurality of servers of the second data center and coupled to the cross-datacenter storing device,
the method comprising:
receiving, by the first controlling electronic device, a first task for processing, determining whether at least one server of the plurality of servers of the first data center is available for performing the first task;
responsive to the at least one server of the plurality of servers of the first data center being available for performing the first task, assigning the first task to said at least one server as part of an internal task queue;
responsive to none of the plurality of servers of the first data center being available for performing the first task, transmitting the first task to the cross-datacenter storing device, thereby generating an external task queue,
the external task queue for receiving overflow tasks from both the first datacenter and the second datacenter;
the cross-datacenter storing device being configured to:
receive a request from the second controlling electronic device, the request being indicative of at least one of the plurality of servers of the second datacenter being available;
responsive to receiving the request, transmit the first task to the second controlling electronic device for execution by the at least one of the plurality of servers of the second datacenter.

US Pat. No. 10,289,931

METHOD AND SYSTEM FOR SEARCHING IMAGES

YANDEX EUROPE AG, Lucern...

1. A method of processing an image to enable indexing and comparison of the image against other images, the method executable at a server, the method comprising:identifying a first local region of the image and a second local region of the image;
determining a first visual word associated with the first local region of the image and a second visual word associated with the second local region of the image, the first visual word and the second visual word being indicative of local descriptors of the first local region and of the second local region, a given local descriptor being indicative of visual features of a respective local region;
determining a visual features composite parameter associated with the image, the visual features composite parameter comprising the first visual word and the second visual word, the visual features composite parameter further comprising relationship information characterizing a relationship between the first local region and the second local region, the relationship information comprising a geometric co-location information of the first local region of the image and the second local region of the image, the geometric co-location information comprising a location of one key point associated with the first visual word relative to a location of one other key point associated with the second visual word;
determining at least one key for an index of images, the at least one key including at least a portion of the visual features composite parameter associated with the image to be indexed; and storing an indication of the image matching the visual features composite parameter in a posting list associated with the at least one key.

US Pat. No. 10,198,842

METHOD OF GENERATING A SYNTHETIC IMAGE

YANDEX EUROPE AG, Lucern...

1. A method of generating a synthetic image, the method executable at a server, the method comprising:receiving, by the server, first data associated with a first image and second data associated with a second image, the first data comprising first pixels and a first timestamp, the second data comprising second pixels and a second timestamp, the first image and the second image depicting a common object;
determining, by the server, an actual position of first common object pixels within the first pixels and an actual position of second common object pixels within the second pixels, the first common object pixels and the second common object pixels being associated with the common object in the first image and the second image, respectively;
computing, by the server, a common object motion information based on the actual position of the first common object pixels, the actual position of the second common object pixels, the first timestamp and the second timestamp, the common object motion information being representative of a movement pattern of the common object between a position of the common object in the first image and a position of the common object in the second image;
receiving, by the server, third data associated with a third image, the third data comprising third pixels and a third timestamp, the third image depicting the common object, the third image having been captured after the second image, and the second image having been captured after the first image in a sequential manner, with a time delay between the end of capturing of one image and beginning of capturing of a following image in the sequence is at least zero seconds;
determining, by the server, an actual position of third common object pixels within the third pixels, the third common object pixels being associated with the common object in the third image;
computing, by the server, an estimated position of the third common object pixels within the third pixels based on the common object motion information, the third timestamp and the third pixels;
determining, by the server, if the actual position of the third common object pixels and the estimated position of the third common object pixels match; and
in response to the actual position of the third common object pixels and the estimated position of the third common object pixels not matching, generating, by the server, the synthetic image based on the third image and at least one of the first image and the second image and comprising at least the third common object pixels and correction pixels, the generating comprises:
assigning, by the server, the third common object pixels to the estimated position of the third common object pixels within the synthetic image;
determining, by the server, correction pixel positions of the correction pixels by parsing the synthetic image to determine pixel positions that have been left blank after the assigning the third common object pixels;
determining, by the server, the correction pixels by identifying pixels within at least one of the first image and the second image to be assigned to the pixel positions that have been left blank in the synthetic image; and
assigning, by the server, the correction pixels to the correction pixel positions of the correction pixels within the synthetic image.

US Pat. No. 10,165,488

METHOD OF AND SYSTEM FOR PROCESSING A TRANSACTION REQUEST IN DISTRIBUTED DATA PROCESSING SYSTEMS

YANDEX EUROPE AG, Lucern...

1. A method of processing a transaction request associated with a computer transaction which has to be executed in a succeed-or-fail-as-a-whole manner, the method executable in a distributed processing system, the distributed processing system including:a plurality of nodes, the plurality of nodes including a controlling node and a set of executing nodes, wherein
each of the set of executing nodes:
being associated with a pre-defined type of the computer transaction;
is directly addressable by the controlling node;
the set of executing nodes being organized in a hierarchy in accordance with the pre-defined type of the computer transaction executable by a given one of the set of executing nodes, such that:
the given node of the set of executing nodes is a child node to another node of the set of executing nodes based on the pre-defined type of the computer transaction executable by the child node being a nested type of the computer transaction to the pre-defined type of the computer transaction executable by the other node of the set of executing nodes, the other node of the set of executing nodes being a parent node;
the controlling node maintaining:
a list of unique addresses for each of the set of executing nodes; and
a mapping of each specific node of the set of executing nodes and an associated pre-defined type of the computer transaction executable by the specific node of the set of executing nodes;
the controlling node of the distributed processing system accessible by a client device via a communication network;
a data storage device for storing data with which the computer transaction is executed by the distributed processing system;the method comprising:receiving by the controlling node, from the client device, a transaction request to modify at least a portion of the data maintained in the data storage device, the transaction request including an indication of the pre-defined type of the computer transaction to be executed;
determining, by the controlling node, based on the pre-defined type of the computer transaction and the mapping, the specific node of the set of executing nodes responsible for the pre-defined type of the computer transaction;
using the list of unique addresses, sending the transaction request directly to the determined specific node of the set of executing nodes for execution thereof; the sending the transaction request to the identified specific node of the set of executing nodes causing the identified specific node of the set of executing nodes to execute:
blocking, by the identified specific node of the set of executing nodes, receiving of additional transaction requests until the transaction request is executed.

US Pat. No. 10,572,550

METHOD OF AND SYSTEM FOR CRAWLING A WEB RESOURCE

YANDEX EUROPE AG, Lucern...

1. A method of setting up a crawling schedule, the method executable at a crawling server, the crawling server coupled to a communication network, the communication network having coupled thereto a first web resource server and a second web resource server, the method comprising:acquiring a first new web page associated with the first web resource server;
acquiring a second new web page associated with the second web resource server;
calculating a first crawling benefit parameter associated with the first new web page, the first crawling benefit parameter being based on:
a first predicted popularity parameter being indicative of long-term popularity of the first new web page, wherein the long-term popularity of the first new web page represents total number of visits to the first new web page, and
a first predicted popularity decay parameter of the first new web page, the first predicted popularity decay parameter being indicative of a rate at which the popularity of the first web page increases and decreases with time,
the first predicted popularity decay parameter having been predicted based on short-term popularity of the first web page indicative of a number of visits to the first web page over a predefined time interval after the first web page has been discovered, the long term popularity of the first new web page, and the predefined time interval and current age of the first new web page, wherein
the larger the first predicted popularity parameter is, the larger the first crawling benefit parameter is, and wherein
the first crawling benefit parameter decreases at the rate represented by the first predicted popularity decay parameter;
calculating a second crawling benefit parameter associated with the second new web page, the second crawling benefit parameter being based on:
a second predicted popularity parameter being indicative of long-term popularity of the second new web page, wherein the long-term popularity of the second new web page represents total number of visits to the second new web page, and
a second predicted popularity decay parameter of the second new web page, the second predicted popularity decay parameter being indicative of a rate at which the popularity of the second web page increases and decreases with time,
the second predicted popularity decay parameter having been predicted based on a short-term popularity of the second web page indicative of a number of visits to the second web page over a predefined time interval after the second web page has been discovered, the long term popularity of the second new web page, and the predefined time interval and current age of the second new web page, wherein
the larger the second predicted popularity parameter is, the larger the second crawling benefit parameter is, and wherein
the second crawling benefit parameter decreases at the rate represented by the second predicted popularity decay parameter; and
based on the first crawling benefit parameter and the second crawling benefit parameter, determining a crawling order for the first new web page and the second new web page, such that the first new page and the second new page are ordered in a descending order of an associated one of the first crawling benefit parameter and the second crawling benefit parameter.

US Pat. No. 10,430,481

METHOD AND APPARATUS FOR GENERATING A CONTENT RECOMMENDATION IN A RECOMMENDATION SYSTEM

YANDEX EUROPE AG, Lucern...

1. A computer-implemented method of generating a content recommendation for a user of an electronic device, the method executable by a recommendation server accessible by the electronic device via a communication network, the content recommendation being associated with a content item available at one of a plurality of network resources accessible via the communication network, the method comprising:receiving, from the electronic device, a request for the content recommendation, the content recommendation including at least one recommended content item;
executing a first machine learning algorithm module in order to determine a sub-set of recommended content sources from a plurality of possible content sources, the determining the sub-set of recommended content sources including:
acquiring an indication of user-past-interactions with at least one of: (i) the recommendation system and (ii) at least some of the plurality of network resources;
based on the user-past-interactions, determining a first sub-set of user-specific content sources;
based on
(i) a machine learning algorithm trained formula of other user interactions with at least some others of the plurality of network resources
and at least one of:
(ii) the first sub-set of user-specific content sources; and
(iii) a user-profile-vector generated based on the user-past-interactions,
generating a second sub-set of user-non-specific content sources;
processing the first sub-set of user specific content sources and the second sub-set of user-non-specific content sources in order to generate the sub-set of recommended content sources;
analyzing the sub-set of recommended content sources to select a plurality of potentially-recommendable content items;
executing a second machine learning algorithm module in order to select, from the plurality of potentially-recommendable content items, at least one recommended content item; the selection being made on the basis of the user-profile-vector.

US Pat. No. 10,423,690

METHOD OF AND SERVER FOR CLASSIFYING A WEB RESOURCE

YANDEX EUROPE AG, Lucern...

1. A method for classifying a web resource, the method executable on a server communicatively coupled to a plurality of user devices, the method comprising:retrieving data associated with a plurality of browser logs associated with browser applications installed on the plurality of user devices, the plurality of browser logs containing information associated with past browsing activities of at least some of the browser applications associated with at least some of the plurality of user devices; a given record of the plurality of browser logs being associated with a given past browsing activity, the given record containing data representative of:
an identifier of a given web resource associated with an access attempt during the given past browsing activity,
an indication of a parent process that initiated the access attempt, by the browser application, to the given web resource; and
a first launch parameter indicative of whether the access attempt was executed as part of a first launch of the browser application;
analyzing the first launch parameter and the indication of the parent process contained in each of the records;
for each record of the plurality of browser logs, the record being associated with the given past browsing activity, in response to (i) the first launch parameter being indicative of the access attempt being executed as part of the first launch of the browser application and (ii) the parent process not being listed in a parent process white list, executing:
accessing a search history log associated with a search engine server, the search history log storing a plurality of past search sessions executed on the search engine server;
analyzing the plurality of past search sessions to determine a historical search parameter associated with the given web resource;
in response to the historical search parameter being below a pre-determined threshold, adding the given web resource to a blacklist of web resources.

US Pat. No. 10,368,182

DEVICE AND METHOD OF MODIFYING AN AUDIO OUTPUT OF THE DEVICE

YANDEX EUROPE AG, Lucern...

1. A method of selectively modifying an initial audio output of a device, the device comprising at least two speakers communicatively coupled to a processor, the method comprising:detecting, by the processor, a volume level of the initial audio output reproducible by the at least two speakers;
comparing, by the processor, the volume level to a volume level threshold;
based on the comparison of the volume level to the volume level threshold, controlling, by the processor, reproduction of the initial audio output by the at least two speakers by a selective execution of:
responsive to the volume level being inferior to the volume level threshold, transmitting, by the processor, an identical audio signal to each one of the at least two speakers for reproducing a modified audio output, the modified audio output being of a mono audio output type; and
responsive to the volume level being superior to the volume level threshold, transmitting, by the processor, respective audio signals to the at least two speakers for reproducing the modified audio output, the respective audio signals being different from one another, the modified audio output being of a stereo audio output type.

US Pat. No. 10,297,226

METHOD AND SYSTEM OF DOWNLOADING IMAGE TILES ONTO A CLIENT DEVICE

YANDEX EUROPE AG, Lucern...

1. A method of downloading image tiles onto a client device, the client device having an output device and being connectable to a sever via a communication network,the server storing a plurality of image tiles organized in a hierarchical structure, each level of the hierarchical structure storing a sub-set of the plurality of image tiles being associated with a particular resolution level,
the method executable at the client device,
the method comprising:
receiving a request for an image view, the image view being associated with a first viewport and a first resolution level;
transmitting, to the server, a first request for a first set of image tiles, the first set of image tiles for enabling the client device to display a requested image view on the output device, the first set of image tiles being part of a plurality of image tiles of the first resolution level;
the first request being further configured to cause the server to prepare a second set of image tiles, the second set of image tiles for enabling the client device to display a different image view, which is:
associated with a second viewport at least partially overlapping with the first viewport; and
having a second resolution level being lower than the first resolution level;
each given image tile of the second set of image tiles having four child image tiles in the plurality of image tiles of the first resolution level as prescribed by the hierarchical structure;
receiving, from the server:
the first set of image tiles;
a first subset of the second set of image tiles, the first subset of the second set of image tiles excluding a second subset of the second set of image tiles, each one of the second subset of the second set of image tiles having all four child image tiles in the first set of image tiles;
receiving a request to change the first viewport to a third viewport;
rendering and displaying a transition view, the transition view made up of the first subset of the second set of image tiles and the respective child image tiles in lieu of the second subset of the second set of image tiles;
transmitting, to the server, a third request for map tiles native to the third viewport required for displaying the third viewport;
rendering the third viewport using the map tiles native to the third viewport;
replacing the transition view with the third viewport.

US Pat. No. 10,261,979

METHOD AND APPARATUS FOR RENDERING A SCREEN-REPRESENTATION OF AN ELECTRONIC DOCUMENT

Yandex Europe AG, Lucern...

1. A method of rendering an augmented screen-representation of an electronic document, the method executed on an electronic device, the electronic device having a display, the method comprising:acquiring, by the electronic device, the electronic document to be rendered, the electronic document comprising a content portion and a rendering-instruction portion, the rendering-instruction portion containing at least one instruction for enabling the electronic device to render the content portion on the display;
generating, by the electronic device, at least one rendering command, the at least one rendering command based on the at least one instruction, the at least one rendering command for rendering a screen-representation of the electronic document;
rendering the screen-representation of the electronic document based on the at least one rendering command;
identifying, by the electronic device, a portion of the content portion to be modified for an augmented presentation of the portion of the content portion in the augmented screen-representation of the electronic document;
generating, by the electronic device, at least one additional rendering command being configured to cause a change in appearance of the portion of the content portion via the augmented presentation, the augmented presentation of the portion of the content portion being different from a presentation of the portion of the content portion that would result from the at least one rendering command, the at least one additional rendering command not directly derivable from the at least one instruction, the generating the at least one additional rendering command being based on the portion of the content portion to be modified, the at least one rendering command to change presentation of the portion of the content portion to be modified; and
generating, by the electronic device, instead of the screen-representation of the electronic document, the augmented screen-representation of the electronic document based on a combination of the at least one rendering command and the at least one additional rendering command, without modifying the at least one instruction contained in the rendering-instruction portion of the electronic document, the augmented screen representation having been generated by overlaying the portion of the content portion with the augmented portion of the content portion; and
wherein:
the portion of the content portion to be modified is a textual portion, and wherein the identifying the portion of the content portion to be modified comprises:
identifying a totality of text within the content portion, and
identifying, within the totality of text, the textual portion to be modified; and
the identifying, within the totality of text, the textual portion to be modified comprises applying a rule mask.

US Pat. No. 10,713,293

METHOD AND SYSTEM OF COMPUTER-PROCESSING ONE OR MORE QUOTATIONS IN DIGITAL TEXTS TO DETERMINE AUTHOR ASSOCIATED THEREWITH

YANDEX EUROPE AG, Lucern...

1. A computer implemented method for processing one or more quotations in digital texts to determine an author associated therewith, the method executable by a server configured to execute a news aggregator service, the server being coupled to a plurality of digital news services via a communication network, the method comprising:receiving a plurality of digital texts from a database;
parsing each of the plurality of digital texts to extract one or more quotations therefrom, the parsing being executed by applying one or more parsing rules;
identifying at least one associated candidate author for each of the one or more quotations, the identifying being executed by applying one or more identification rules;
assigning, by a first classifier, a quotation similarity value for a given quotation with respect to each of a remaining one or more quotations, the quotation similarity value being representative of a likelihood of the given quotation originating from a same quotation with respect to each of the remaining one or more quotations;
generating a quotation cluster, the quotation cluster comprising:
one or more similar quotations, the one or more similar quotations comprising the given quotation and a subset of the remaining one or more quotations each having the similarity value above a threshold;
a set of candidate authors, the set of candidate authors comprising at least one candidate author associated with each of the one or more similar quotations;
analyzing the set of candidate authors to identify a given candidate author meeting a condition; and
storing the candidate author meeting the condition as the author of the one or more similar quotations.

US Pat. No. 10,607,113

METHOD AND APPARATUS FOR SELECTING A NETWORK RESOURCE AS A SOURCE OF CONTENT FOR A RECOMMENDATION SYSTEM

YANDEX EUROPE AG, Lucern...

1. A method of selecting a network resource as a source of a content item, the content item to be analyzed by a recommendation system as part of a plurality of content items to generate a set of recommended content items as a content recommendation for a given user of the recommendation system, the recommendation system being executed at a server coupled to a communication network, the method comprising:prior to acquiring a content recommendation request from the given user:
acquiring, by the server, an indication of the network resource;
receiving, by the server, a plurality of features associated with the network resource;
generating, by the server, a given network resource profile for the network resource, the given network resource profile being based on the plurality of features;
executing, by the server, a machine learning algorithm in order to, based on the given network resource profile, determine a source suitability parameter for the network resource, the source suitability parameter being indicative of the network resource being susceptible to publishing the content item that can be processed by the recommendation system,
acquiring the content recommendation request from the given user;
selecting at least one content item from the network resource if the source suitability parameter is determined to be above a pre-determined threshold, the at least one content item for submitting to the recommendation system for processing; and
generating the content recommendation for the given user, the content recommendation including the least one content item from the network resource.

US Pat. No. 10,552,505

METHOD AND SYSTEM FOR GENERATING A USER-PERSONALIZATION INTEREST PARAMETER FOR IDENTIFYING PERSONALIZED TARGETED CONTENT ITEM

YANDEX EUROPE AG, Lucern...

1. A computer implemented method of generating a user-personalization interest parameter, the method being executable on a server coupled to, via a communication network, a client device associated with a user, the client device configured to execute a browser application having previously accessed, via the communication network, at least one web resource during a pre-determined past period of time;the method comprising:
receiving, by the server, navigational history data associated with the browser application, the navigational history data including one or more uniform resource locators (URLs) associated to a respective one of the at least one web resources;
generating, based on the navigational history data, one or more navigational session transition patterns, a given navigational session transition pattern including at least one of the one or more URLs accessed by the browser application during a given past browsing session;
for each navigational session transition pattern:
truncating each of the one or more URLs included within the navigational session transition pattern to obtain a respective URL segment;
generating, by a first machine learning algorithm, a respective vector value representative for each of the URL segments;
the first machine learning algorithm having been trained to map the URL segments to respective vector values based on a co-occurrence of the URL segments within the navigational session transition pattern;
assigning a weight value for each URL segment, wherein for a given URL segment, the weight value being determined based on at least one of
a first value being inversely proportional to a frequency of the given URL segment in a log of URL segments associated with URLs visited by users of the server;
a second value being based on a recentness of access to the URL associated with the given URL segment by the browser application;
determining a navigational profile value for the user, based on at least one vector value and the associated weight value, the navigational profile value being associated with the user's navigational history data over a pre-determined period of time; and
generating, by a second machine learning algorithm, the user-personalization interest parameter associated with the user based on the navigational profile value, the second machine learning algorithm having been trained to map a user's navigational profile value to at least one user-personalization interest parameter.

US Pat. No. 10,430,448

COMPUTER-IMPLEMENTED METHOD OF AND SYSTEM FOR SEARCHING AN INVERTED INDEX HAVING A PLURALITY OF POSTING LISTS

YANDEX EUROPE AG, Lucern...

1. A computer-implemented method of searching an inverted index having a plurality of posting lists, the method comprising:receiving, from a first client device by at least one server, a first search query to be searched, the first search query including a first plurality of search terms, the first plurality of search terms comprising a first term;
effecting, by the at least one server, a first search of a first plurality of posting lists to yield first search results, each of the first plurality of posting lists associated with a one of the first plurality of search terms, the first plurality of posting lists comprising a first posting list associated with the first term,
each of the first plurality of posting lists including a plurality of a first type of postings, the first type of postings being a reference to a data item actually containing the search term with which that posting list is associated,
the first search results including a first plurality of result items, the first search results including
a result item missing the first term;
sending, by the at least one server to the first client device, at least a portion of the first search results including
the result item missing the first term;
receiving, from the first client device by the at least one server, an indication of a first user-selected result item,
the first user-selected result item being the result item missing the first term, and
the first user-selected result item having been selected by the user from the first search results;
effecting, by the at least one server, insertion of a reference to the first user-selected result item into the first posting list that is associated with the first term even though the first user-selected result item misses the first term, the reference to the first user-selected result item being a second-type of posting; and
storing, by at least one server, the first posting list with the inserted second-type of posting.

US Pat. No. 10,387,801

METHOD OF AND SYSTEM FOR GENERATING A PREDICTION MODEL AND DETERMINING AN ACCURACY OF A PREDICTION MODEL

YANDEX EUROPE AG, Lucern...

1. A method of determining an accuracy parameter of a trained decision tree prediction model, the method being executable at a machine learning system, the method comprising:accessing, from a non-transitory computer-readable medium, the trained decision tree prediction model having been generated at least partially based on a set of training objects, each training object of the set of training objects comprising features and a parameter of interest, the trained decision tree prediction model comprising nodes associated with factors and leaves associated with parameters of interest of training objects of the set of training objects, the association between the leaves and the parameters of interest having been determined by a comparison of at least two of the factors and the features of the training objects of the set of training objects;
generating, by a processor, a subset of random parameters of interest, the generating comprising generating random values of a target function associated with the trained decision tree prediction model;
associating, in the non-transitory computer-readable medium, the subset of random parameters of interests with a given leaf;
determining, by the processor, a leaf accuracy parameter based on (i) the parameters of interest associated with the given leaf and (ii) the subset of random parameters of interest of the given leaf; and
determining, by the processor, the accuracy parameter of the trained decision tree prediction model based on the determined leaf accuracy parameter by determining a total error in the leaves in accordance with a formula:
wherein M is a number of leaves, Nj is a number of parameters of interest associated with a j-th leaf, and bj is a number of random parameters of interest associated with the j-th leaf.

US Pat. No. 10,353,974

METHODS AND SYSTEMS FOR REFINING SEARCH RESULTS

YANDEX EUROPE AG, Lucern...

1. A method of generating a refined search engine results page (SERP) for a first search query received from a user, the method executable at a server, the method comprising:a) receiving the first search query from an electronic device associated with the user;
b) responsive to the first search query, generating a first search query result set;
c) displaying the first search query result set to the user on a first SERP, the first search query result set including a first search result and a second search result, both the first search result and the second search result including a first search result element, wherein:
the first search result element comprises at least one of a word, a phrase, a link, and an image, and
the first search result element is a common element of both the first search result and the second search result;
d) based at least in part on user interaction with the first search result element on the first SERP, generating a first user interest parameter for the first search result element, the first user interest parameter indicating user interest in the first search result element, the first user interest parameter being generated by:
i) receiving an indication of a first user interaction with the first search result element on the first search result;
ii) determining a first weight for the first search result element based on the first user interaction with the first search result element on the first search result;
iii) receiving an indication of a second user interaction with the first search result element on the second search result;
iv) determining a second weight for the first search result element based on the second user interaction with the first search result element on the second search result; and
v) generating the first user interest parameter based on summing the first weight and the second weight for the first search result element,
the first user interest parameter being a weighted accumulation of the first user interaction with the first search result element on the first search result and the second user interaction with the first search result element on the second search result;
e) generating a second search query, the generating being based on reformulating the first search query, the reformulating being based at least on the first search result element and the first user interest parameter associated therewith, the first user interest parameter being indicative of significance of the first search result element;
f) responsive to the second search query, generating a second search query result set; and
g) displaying the second search query result set to the user, thereby generating the refined SERP.

US Pat. No. 10,324,998

METHOD AND SYSTEM FOR CONTROLLING PRESENTATION OF WEB RESOURCES IN A BROWSER WINDOW

YANDEX EUROPE AG, Lucern...

13. A method of stacking tabs in a tab panel of a browser window, the tab panel facilitating multiple web pages being open simultaneously in the browser and allowing a user to switch between viewing any one of the multiple web pages, the method being executable by an electronic device, the method comprising:in a first tab associated with a first web resource, receiving a user request for opening a second web resource;
identifying whether a web resource type of the first web resource is of a hub type, the hub type corresponding to a web resource serving as a routing page for navigating to other web resources;
responsive to the web resource type of the first web resource not being of the hub type, identifying the web resource type of the first web resource type as being of a node type;
responsive to the first web resource being of the node type, opening the second web resource in the first tab in lieu of the first web resource;
responsive to the first web resource being of the hub type,
creating a second tab;
opening the second web resource in the second tab; and
stacking the second tab on the first tab, the first tab being thereby stacked under the second tab, the first tab and the second tab being comprised in a tab stack of the browser window, the tab stack comprising a plurality of stacked tabs;
providing a first back operation element selectable by the user for requesting a first back operation; and
providing a second back operation element selectable by the user for requesting a second back operation;
responsive to receiving a user request for the first back operation, executing a first back operation routine comprising:
responsive to the subject web resource being of the hub type, closing each tab of the tab stack being stacked on the subject tab;
accessing a browser history for the subject tab;
responsive to the browser history including a previously accessed web resource, opening the previously accessed web resource in the subject tab; and
responsive to the browser history being indicative of the subject web resource being an earliest accessed web resource, closing the subject tab; and
responsive to receiving a user request for the second back operation, executing a second back operation routine comprising:
closing the subject tab;
responsive to the subject web resource being of the hub type, closing each tab of the tab stack being stacked on the subject tab; and
activating a third tab of the tab stack other than the subject tab, the third tab being stacked under the subject tab.

US Pat. No. 10,319,223

METHODS AND SYSTEMS FOR GENERATING A TRAFFIC PREDICTION

YANDEX EUROPE AG, Lucern...

1. A method of generating a traffic prediction for a target zone, the target zone being defined by first boundary coordinates having been geometrically predetermined, traffic in the target zone being caused by a plurality of vehicles located in the target zone at a given moment in time, the plurality of vehicles comprising feedback vehicles and non-feedback vehicles, each of the feedback vehicles being associated with a respective navigational device, the navigational devices being communicatively coupled to a server by a communication network and configured to provide respective feedback signals to the server, the method being executable on the server and comprising:tracking, by the server, a feedback signal of each one of a first plurality of navigational devices entering a traffic sample zone, the traffic sample zone being defined by second boundary coordinates having been geometrically predetermined, the traffic sample zone being associated with traffic characteristics, the traffic characteristics being indicative of a maximum possible number of vehicles that can be located in the traffic sample zone at once, each feedback signal comprising positional coordinates of a respective one of the first plurality of navigational devices;
determining, by the server, an actual number of feedback vehicles located in the target zone based on a feedback signal of each one of a second plurality of navigational devices entering the target zone; and
generating, by the server, the traffic prediction for the target zone based on (i) the actual number of feedback vehicles in the target zone and (ii) a feedback ratio, the traffic predication being indicative of an estimated number of non-feedback vehicles within the plurality of vehicles causing traffic in the target zone, the feedback ratio having been determined by processing the feedback signals tracked for the first plurality of navigational devices, the processing comprising:
determining, by the server, an actual number of feedback vehicles located in the traffic sample zone at a first moment in time by comparing the positional coordinates of each one of the first plurality of navigational devices against the second boundary coordinates at the first moment in time;
computing, by the server, a fill rate parameter of the traffic sample zone at the first moment in time based on (i) the positional coordinates of at least one navigational device within the second boundary coordinates, (ii) the second boundary coordinates and (iii) the traffic characteristics, the fill rate parameter being indicative of an estimated total number of vehicles located in the traffic sample zone at the first moment in time; and
determining, by the server, the feedback ratio associated with the traffic sample zone and being a ratio between (i) the estimated total number of vehicles located in the traffic sample zone and (ii) the actual number of feedback vehicles located in the traffic sample zone, the feedback ratio being indicative of an estimated proportion of feedback vehicles and of non-feedback vehicles located in the traffic sample zone.

US Pat. No. 10,277,694

METHOD FOR DETERMINING A TREND OF A USER ENGAGEMENT METRIC

YANDEX EUROPE AG, Lucern...

1. A computer-implemented method for determining a trend of a user engagement metric with respect to a web service, the method being executable by a server, the method comprising:receiving, at the server, a plurality of user device requests relating to a web service during an experimental period, the plurality of user device requests originating from a plurality of user devices;
providing, by the server, a test version of the web service to a test group selected from the plurality of user devices, the test version of the web service being the web service having an experimental treatment applied thereto;
providing, by the server, a control version of the web service to a control group selected from the plurality of user devices, the control version of the web service being a version of the web service without the experimental treatment applied thereto;
acquiring an amplitude metric and a phase metric for each one of the user devices of the control and test groups, the acquiring including, for a given one of the user devices of the control and test groups:
acquiring, by the server, a plurality of indications for the given one, the plurality of indications being based on interactions of the given one with its corresponding web service,
accessing the plurality of indications for the given one,
calculating a periodicity metric based at least in part on a discretization transform performed on the plurality of indications,
calculating the amplitude metric based at least in part on a magnitude of the periodicity metric, the amplitude metric representing a magnitude of change of the user engagement metric with respect to the corresponding web service, and
calculating the phase metric based at least in part on an imaginary part of the periodicity metric, the phase metric representing a direction of change of the user engagement metric with respect to the corresponding web service;
determining, by the server, average group metrics including:
calculating a control average amplitude metric by averaging amplitude metrics calculated for each of the user devices of the control group,
calculating a test average amplitude metric by averaging amplitude metrics calculated for each of the user devices of the test group, and
calculating a test average phase metric by averaging phase metrics calculated for each of the user devices of the test group;
determining the trend of the user engagement metric with respect to the web service, the determining the trend being based on analyzing of the control average amplitude metric and the test average amplitude and phase metrics; and
when a difference between the test average amplitude metric and the control average amplitude metric and the test average phase metric have oppositely signed values, determining that the experimental treatment applied to the web service has caused a decreasing trend in the user engagement metric over the web service without the experimental treatment,
wherein:
the difference between the test average amplitude metric and the control average amplitude metric is negative and the test average phase metric is positive, and
the decreasing trend in the user engagement metric indicates an increase in user engagement.

US Pat. No. 10,261,989

METHOD OF AND SYSTEM FOR MAPPING A SOURCE LEXICAL UNIT OF A FIRST LANGUAGE TO A TARGET LEXICAL UNIT OF A SECOND LANGUAGE

YANDEX EUROPE AG, Lucern...

1. A computer-implemented method for mapping a source lexical unit of a source digital text in a first language with a corresponding target lexical unit of a target digital text in a second language, the target digital text being a translation of the source digital text, the method executable on a server, the method comprising:acquiring, by the server, an indication of the source digital text to be processed, the source digital text comprising a plurality of source sentences;
parsing by the server, at least some of the plurality of source sentences into one or more source lexical units;
generating, for each of the one or more source lexical units a source context parameter, the source context parameter comprising:
a first set of source context dependent relation (CDR) values, each source CDR value representing a ratio of (i) a number of source sentences where the given source lexical unit and each one or more source lexical units co-occur to (ii) a total number of source sentences containing the given source lexical unit; and
an indication of one or more source sentences in which each one or more source lexical units occur;
acquiring, by the server, an indication of the target digital text to be processed, the target digital text comprising a plurality of target sentences;
parsing by the server, at least some of the plurality of target sentences into one or more target lexical units;
generating, for each one or more target lexical units, a target context parameter, the target context parameter comprising:
a first set of target CDR values, each target CDR value representing a ratio of (i) a number of target sentences where the given source lexical unit and each one or more target lexical units co-occur to (ii) a total number of target sentences containing the given target lexical unit;
an indication of one or more target sentences in which each one or more target lexical units occur;
selecting, a first source lexical unit, the first source lexical unit having a first source context parameter;
comparing, by the server, the first source context parameter with a plurality of target context parameters to determine a given target context parameter having a lowest difference value; and
mapping the first source lexical unit with a first target lexical unit, the first target lexical unit being associated with the given target context parameter having the lowest difference value.

US Pat. No. 10,243,895

METHOD OF AND SYSTEM FOR PROCESSING AN ELECTRONIC MESSAGE DESTINED FOR AN ELECTRONIC DEVICE

Yandex Europe AG, Luzern...

1. A method of processing an incoming electronic message destined to an application associated with a user, the user being associated with a first electronic device and a second electronic device, both the first electronic device and the second electronic device executing an instance of the application, the method being executable at a server being responsible for handling incoming electronic messages for the application, the method comprising:receiving, by the server, the incoming electronic message destined for the user;
retrieving, by the server, a user-activity-log associated with user activity using a first instance of the application being executed on the first electronic device and a second instance of the application being executed on the second electronic device;
based on the user-activity-log, determining, by the server, a specific one of the first electronic device and the second electronic device that is associated with the most recent user activity within the respective one of the first instance of the application and the second instance of the application;
generating, by the server, a user notification, the user-notification having a first user-notification and a second user-notification associated with the incoming electronic message;
transmitting, by the server, via the communication network the first user-notification to the specific one of the first electronic device and the second electronic device that is associated with the most recent user activity, the first user-notification being an active user notification, the active user notification comprising (i) the incoming message and (ii) a trigger operable to cause the specific one of the first electronic device and the second electronic device to display the incoming message and to provide an actuatable notification of the incoming message to the user, the actuatable notification further including at least one of a visual notification, audible and tangible notification of the incoming message; and
transmitting, by the server, via the communication network, the second user-notification to another one of the first electronic device and the second electronic device, the second user-notification being different from the first user-notification by being a passive user notification comprising the incoming message for background uploading to the instance of application being executed on the another one of the first electronic device and the second electronic device, and the second user-notification further comprising a trigger operable to cause the another one of the first electronic device and the second electronic device to display information of the incoming message without providing any one of a visual notification, audible and tangible notification of the incoming message.

US Pat. No. 10,175,052

METHOD OF DETERMINING A GEOLOCATION OF AN ELECTRONIC DEVICE

YANDEX EUROPE AG, Lucern...

1. A method of determining a geolocation of an electronic device, the electronic device having a first sensor and a second sensor, the method executable at a server, the server being in communication with the electronic device via a communications network, the method comprising:acquiring a route information associated with a route for the electronic device, the route information being a path from a first geo-point to a second geo-point;
determining a plurality of route points along the route, each route point being a point potentially associated with a deviation from the route information;
for a given one of the plurality of route points:
receiving, from the first sensor, a first sensor state, the first sensor state indicative of the electronic device geo-position, wherein the first sensor is one of a GPS module and a global navigation satellite system (GLONASS) module;
based on the electronic device geo-position, determining the geo-location of the given one of the plurality of route points;
receiving, from the second device sensor, a second sensor state associated with a specific geo-maneuver at the given route point;
comparing the second sensor state to a predetermined second sensor state for the given route point and for the specific geo-maneuver;
responsive to the second sensor state being indicative of a variance from the predetermined second sensor state, determining that the electronic device has deviated from the route at the given route point;
generating a revised route information, including a revised geo-position of the electronic device in association with the given route point, the generating being based on a difference of the second sensor state and the electronic device geo-position generated based on the first sensor state;
sending the revised route information to the electronic device.

US Pat. No. 10,713,795

METHOD AND ELECTRONIC DEVICE FOR GENERATING AN INDEX OF SEGMENTS OF POLYGONS

YANDEX EUROPE AG, Lucern...

11. An electronic device for generating an index of segments of at least one polygon defining a boundary of a respective geographic area on a map, the electronic device having access to a database for hosting the index, the electronic device being configured to:segment a reference zone at a reference level into first level zones at a first level, the reference zone covering at least a portion of the map which encloses all segments of the at least one polygon, the reference zone being a parent zone to the first level zones;
responsive to at least one segment being at least partially located within more than one first level zones, index the at least one segment in association with the reference zone, the electronic device being configured to index comprising the electronic device being configured to:
store data about the at least one segment in association with the reference zone;
such that segments located within only one first level zone are indexed in association with zones other than the reference zone;until a terminal condition is met, iteratively:segment a given zone at a given level into subsequent level zones at a subsequent level, the given zone being a parent zone to the respective subsequent level zones; and
responsive to at least one other segment being at least partially located within more than one respective subsequent level zones, index the at least one other segment in association with the given zone, the electronic device being configured to index comprising the electronic device being configured to:
generate a geo-marker for the given zone, the geo-marker being indicative of (i) a location of the given zone in a respective parent zone, the respective parent zone of the given zone being at a preceding level to the given level, and (ii) a geographic association between the given zone and other child zones of the respective parent zone; and
store data about the at least one other segment in association with the geo-marker of the given zone;
such that segments located within only one respective subsequent level zone are indexed in association with child zones of a respective one of the only one subsequent level zone.

US Pat. No. 10,713,308

METHOD AND SYSTEM FOR GENERATING AN OFFLINE SEARCH ENGINE RESULT PAGE

YANDEX EUROPE AG, Lucern...

1. A method of processing a search query, the method executable at an electronic device, the electronic device storing, in its permanent storage, an offline query result database that has been generated and pre-loaded into the permanent storage by a search engine server via a communication network prior to execution of the method, the offline query result database comprising:an offline query index storing one or more offline search queries, each of the one or more offline search queries being associated with a respective offline search engine result page (SERP) template pointer;
an offline SERP template index storing one or more offline SERP templates, each of the one or more offline SERP templates comprising a list of one or more element pointers, the one or more offline SERP templates comprising a pre-defined number of offline SERP templates, the pre-defined number having been determined by an operator of the search engine server to satisfy a certain number of search queries from a user;
at least one SERP elements index storing a plurality of SERP elements, each SERP element associated to at least one of the one or more element pointers, the plurality of SERP elements having been organized by a respective SERP element type;the method comprising:receiving a search query from the user associated with the electronic device;
determining whether the search query is stored in the offline query index by comparing the search query against the one or more offline search queries stored therein;
responsive to determining that the search query matches a given offline search query, determining the offline SERP template pointer associated with the given offline search query;
determining, based on the offline SERP template pointer, an associated offline SERP template stored within the offline SERP template index;
accessing the list associated with the associated offline SERP template;
retrieving, for each one or more element pointers of the list, a respective SERP element, from the at least one SERP elements index;
generating an offline SERP by compiling the retrieved SERP elements; and
displaying the offline SERP on the electronic device.

US Pat. No. 10,685,644

METHOD AND SYSTEM FOR TEXT-TO-SPEECH SYNTHESIS

YANDEX EUROPE AG, Lucern...

1. A method of generating a text-to-speech (TTS) training set for training a Machine Learning Algorithm (MLA) for generating machine-spoken utterances representing an inputted text, the method executable by a server, the method comprising:receiving a word-corpus, each word of the word-corpus having:
a textual representation, and
a spoken representation;
parsing the textual representation of each word of the word-corpus into at least one phoneme;
for a given two words from the word-corpus, the two words having a common phoneme in-between them:
generating two synthetic words based on merging phonemes from each of the two words, the merging being done using the common phoneme as a merging anchor, the merging resulting in the two synthetic words, the merging including:
merging a first phoneme from a first word of the given two words, the first phoneme preceding the merging anchor with a second phoneme from a second word of the given two words, the second phoneme being after the merging anchor; and
merging a third phoneme from the first word of the given two words, the third phoneme being after the merging anchor with a fourth phoneme from the second word of the given two words, the fourth phoneme preceding the merging anchor,
generating synthetic words utterances based on the generated two synthetic words,
receiving, from at least one human assessor, scores for the synthetic words utterances, the scores being representative of a human-appreciation parameter of a phoneme transition pattern between phonemes across the anchor, the human-appreciation parameter being indicative of the transition pattern being naturally sounding, and
determining acoustic features of the synthetic words utterances; and
training a classifier based on the synthetic words utterances, the acoustic features and the scores representative of the human-appreciation parameter of the phoneme transition pattern to generate:
a quality parameter associated with a new synthetic phonemes-based word, the quality parameter being representative of whether the new synthetic phonemes-based word is naturally sounding.

US Pat. No. 10,642,905

SYSTEM AND METHOD FOR RANKING SEARCH ENGINE RESULTS

YANDEX EUROPE AG, Lucern...

1. A method of generating a search engine results page (SERP), the method executable at a server executing a search engine, the server being accessible via a communication network by at least one electronic device, the method comprising:receiving, from the at least one electronic device, a search query;
generating a search result list, the search result list containing a first search result and a second search result, both of which are responsive to the search query;
ranking the search result list such that as a result of the ranking, the first search result and the second search result are at a first SERP position and a second SERP position, respectively, the first SERP position and the second SERP position being adjacent therebetween, the ranking resulting in a ranked search result list;
predicting a first interest parameter for the first search result, the predicting based on a first machine learning algorithm;
the first interest parameter being indicative of a likelihood of a user clicking on the first search result;
the first machine learning algorithm having been trained to predict the likelihood of the user clicking on a given search result positioned on a given position of a given SERP,
the first machine learning algorithm having been trained based on a first training set of data;
predicting a second interest parameter for the first search result, the predicting based on a second machine learning algorithm, the second machine learning algorithm being different from the first machine learning algorithm;
the second interest parameter being indicative of a likelihood of the user clicking not on the first search result and clicking on the second search result instead;
the second machine learning algorithm having been trained to predict a likelihood of the user not clicking on the given search result and clicking on an other search result instead, the other search result being positioned lower than the given search result, and
the second machine learning algorithm having been trained based on a second training set of data different from the first training set of data;
the first machine learning algorithm and the second machine learning algorithm having been trained independently and separately from each other;
predicting a usefulness parameter for the first search result, the predicting being based on a third machine learning algorithm, the third machine learning algorithm being different from the first machine learning algorithm and the second machine learning algorithm, the predicting being at least partially based on the first interest parameter and the second interest parameter;
adjusting the position of the first search result within the ranked search result list based on the predicted usefulness parameter, the adjusting resulting in the first search result being at an adjusted position within the ranked search result list;
generating the SERP including the first search result and the second search result, the first search result being positioned at the adjusted position of the SERP.

US Pat. No. 10,642,670

METHODS AND SYSTEMS FOR SELECTING POTENTIALLY ERRONEOUSLY RANKED DOCUMENTS BY A MACHINE LEARNING ALGORITHM

YANDEX EUROPE AG, Lucern...

1. A computer-implemented method for selecting a potentially erroneously ranked document in a set of search results, the set of search results having been generated by a search engine server executing a machine learning algorithm (MLA) responsive to a query, the method executable by an electronic device, the electronic device connected to the search engine server, the method comprising:receiving, by the electronic device, the set of search results from the search engine server, each document of the set of search results having a relevance score generated by the MLA and a feature vector generated by the MLA, the relevance score having been generated at least in part based on the feature vector;
computing, by the electronic device, for each possible pair of documents of the set of search results, the pair of documents comprising a first document and a second document:
a first parameter obtained by a first binary operation on the relevance scores of the first document and the second document, the first parameter indicative of a level of difference in the relevance scores of the first document and the second document, and
a second parameter obtained by a second binary operation on the feature vectors of the first document and the second document, the second parameter indicative of a level of difference in the feature vectors of the first document and the second document;
computing, by the electronic device, a verification score for each possible pair of documents of the set of search results, the verification score being based on first parameter and the second parameter, the verification score indicative of a level of misalignment between the relevance scores of the first document and the second document and the feature vectors of the first document and the second document of the pair of documents;
selecting, by the electronic device, at least one pair of documents associated with an extreme verification score, the extreme verification score indicative of a high level of misalignment between the relevance scores of the first document and the second document and the feature vectors of the first document and the second document of the pair of documents, the high level of misalignment indicative of a possibly erroneously ranked document in the pair of documents; and
marking, by the electronic device, the at least one selected pair of documents associated with the extreme verification score for verification by the search engine server.

US Pat. No. 10,608,950

METHOD OF AND SERVER FOR TRANSMITTING A PERSONALIZED MESSAGE TO A USER ELECTRONIC DEVICE

YANDEX EUROPE AG, Lucern...

1. A method of sending personalized content to an electronic device associated with a user, the method executable in a personalized content system, the personalized content system including:a communication network;
a network resource server hosting a network resource and accessible via the communication network;
the electronic device configured to access the network resource via the communication network,
a personalized content server coupled to the communication network and accessible by the network resource server and the electronic device via the communication network;
the network resource having a generic content link and a personalized content link; the generic content link for accessing a generic content portion hosted by the network resource server to be displayed as part of the network resource when displayed by the electronic device and the personalized content link for accessing a personalized content portion hosted by the personalized content server to be displayed as part of the network resource when displayed by the electronic device;
the method comprising:
receiving, by the personalized content server, from the network resource server, a proxy-request for a network resource, the proxy-request having been generated based on a resource request for the network resource received from the electronic device;
based on the proxy-request, requesting by the personalized content server from the network resource server, content of the network resource;
parsing, by the personalized content server, content of the network resource, to detect a plurality of links contained therein, the plurality of links including the generic content link and the personalized content link;
executing, by the personalized content server, a link obfuscation routine, the link obfuscation routine being applied to an entirety of the plurality of links such that:
each link of the plurality of links is obfuscated using a pre-determined link template, the pre-determined link template being based, at least in part, based on a domain name of the network resource server;
transmitting the content of the network resource with the plurality of links having been obfuscated to the electronic device.

US Pat. No. 10,529,011

METHOD AND SYSTEM OF DETERMINING AN OPTIMAL VALUE OF AN AUCTION PARAMETER FOR A DIGITAL OBJECT

YANDEX EUROPE AG, Lucern...

1. A method of determining an optimal value of an auction parameter for a digital object; the method executable at an auction server, associated with the storage; the auction server hosting an auction service, the method comprising:acquiring from a storage, interaction history data of a first portion of users of the auction service, and interaction history data of a second portion of users of the auction service; the interaction history data including, for each respective interaction, at least: an indication of a digital object, an auction parameter associated with the digital object and an environment feature at a respective moment of time of the respective interaction;
based on the interaction history data associated with the first portion of users, executing an offline training of a machine learning algorithm to predict the optimal value of auction parameters for a plurality of digital objects, the plurality of digital objects being associated with the interaction history of the first portion of users;
applying the machine learning algorithm to determine a first optimal value of an auction parameter for a plurality of digital objects associated with the second portion of users;
storing the first optimal value of auction parameter for the plurality of digital objects;
responsive to receiving a request to the auction service by the auction server,
determining a digital object being relevant to the request;
determining a user associated with the digital object;
responsive to the user associated with the digital object being from the second portion of users, applying to the digital object the first optimal value of the auction parameter.

US Pat. No. 10,477,478

METHOD OF PROCESSING SYSTEM REQUESTS IN A WIRELESS COMMUNICATION DEVICE

YANDEX EUROPE AG, Lucern...

1. A method of operating a wireless communications device, the wireless communications device having a wireless communications module for communication with a server over a wireless network and a processor, operatively coupled to the wireless communications module, the processor being configured to execute a data access application, the method comprising:receiving a first system request for data from the data access application on the wireless communications device, the first system request corresponding to a non-user originating request;
storing the first system request in a memory of the wireless communications device without activating the wireless communication module of the wireless communications device;
receiving a first user request for data from the data access application on the wireless communications device, the first user request corresponding to a request originating from a user associated with the wireless communications device;
transmitting, to the server both the first user request and the first system request only in response to the receiving the first user request, the transmitting comprising activating the wireless communications module of the wireless communications device, the activating occurring only upon receiving the first user request; and
inactivating the wireless communications module.

US Pat. No. 10,460,037

METHOD AND SYSTEM OF AUTOMATIC GENERATION OF THESAURUS

YANDEX EUROPE AG, Lucern...

1. A method of automatic generation of a digital thesaurus, the method executable by a server coupled to a semantic relationship database, the method comprising:acquiring by the server, an indication of a digital text, the digital text comprising one or more sentences;
parsing, by the server, the digital text and determining a first lexical unit and a second lexical unit;
for each entry of the first lexical unit in the digital text:
selecting, by the server, n-number of sequential units adjacent to the first lexical unit;
generating a first plurality of unit-pairs, the first plurality of unit-pairs comprising the first lexical unit paired with each unit of the n-number of sequential units adjacent to the first lexical unit;
generating, by the server, a first context parameter for the first lexical unit, the first context parameter comprising a frequency of co-occurrence of each unit-pair of the first plurality of unit-pairs within the one or more sentences of the digital text;
for each entry of the second lexical unit in the digital text:
selecting, by the server, n-number of sequential units adjacent to the second lexical unit;
generating a second plurality of unit-pairs, the second plurality of unit-pairs comprising the second lexical unit paired with each unit of the n-number of sequential units adjacent to the second lexical unit;
generating, by the server, a second context parameter for the second lexical unit, the second context parameter comprising a frequency of co-occurrence of each unit-pair of the second plurality of unit-pairs within the one or more sentences of the digital text;
determining, by the server, a lexical unit relation parameter for the first lexical unit and the second lexical unit, the lexical unit relation parameter indicative of a semantic link between the first lexical unit and the second lexical unit, the lexical unit relation parameter being determined by:
an interrelation analysis of the first context parameter and the second context parameter, the interrelation analysis comprising:
determining a first inclusion parameter indicative of the inclusion of the first context parameter into the second context parameter;
determining a second inclusion parameter indicative of the inclusion of the second context parameter into the first context parameter;
determining a first similarity parameter between the first context parameter and the second context parameter;
an analysis of entry co-occurrence of the first lexical unit and the second lexical unit in the digital text, the analysis of entry co-occurrence comprising:
determining a co-occurrence parameter indicative of a frequency of the first lexical unit and the second lexical unit being contained within a same sentence of the digital text;
wherein, upon determination that the first inclusion parameter and the second inclusion parameter are below a first threshold, the lexical unit relation parameter is indicative of:
a synonymous relationship if the first similarity parameter is above a second threshold and the co-occurrence parameter is below a third threshold;
an antonymous relationship if the first similarity parameter is above a fourth threshold and the co-occurrence parameter is above a fifth threshold;
an associative link if the first similarity parameter is below a sixth threshold; and
storing, by the server, the lexical unit relation parameter in the semantic relationship database.

US Pat. No. 10,452,731

METHOD AND APPARATUS FOR GENERATING A RECOMMENDED SET OF ITEMS FOR A USER

YANDEX EUROPE AG, Lucern...

1. A method of generating a recommended subset of items for a user of an electronic device, the method being executed at a server, the method comprises:identifying, by the server, prior to acquiring a request for the recommended subset of items, a first subset of items within a set of potentially recommendable items based on item features of items within the set of potentially recommendable items, the item features being stored in association with the respective items, the identifying being executed, by the server, in an off-line mode, the identifying comprising:
ranking, by the server, the items within the set of potentially recommendable items based on at least one of respective item features associated with a respective item;
the ranking being done based on past interactions of a plurality of users with the items within the set of potentially recommendable items;
the ranking being done without knowledge of a specific user for whom the first subset of items is to be used;
storing, by the server, prior to acquiring the request for the recommended subset of items the first subset of items in a database, the storing being executed, by the server, in the off-line mode;
acquiring, by the server, the request for the recommended subset of items from the electronic device;
identifying, by the server, a second subset of items within the set of potentially recommendable items based on user events associated with the user, the identifying the second subset of items comprising:
identifying, by the server, a user-specific interacted subset of items from the user events associated with the user, the user having interacted with each item within the user-specific interacted subset of items;
identifying, by the server, a potential second subset of items within the set of potentially recommendable items, each item within the potential second subset of items being similar to at least one item within the user-specific interacted subset of items;
excluding, by the server, items from the potential second subset of items that are included within the first subset of items;
the second subset of items comprising at least some items from the potential second subset of items;
generating, by the server, the recommended subset of items by combining at least some items from the first subset of items and at least some items from the second subset of items; and
sending, by the server, instructions for displaying to the user the recommended subset of items.

US Pat. No. 10,387,789

METHOD OF AND SYSTEM FOR CONDUCTING A CONTROLLED EXPERIMENT USING PREDICTION OF FUTURE USER BEHAVIOR

Yandex Europe AG, Lucern...

1. A method of conducting a controlled experiment using prediction of future user behavior, the method executable on at least one hardware server, the method comprising:collecting behavior data on a first set of users and a second set of users over a first period of time, wherein:
the first set of users is exposed to a control variant of a service;
the second set of users is exposed to a treatment variant of the service; and
the behavior data relates to a performance parameter of the controlled experiment;
based on at least one prediction model applied to the behavior data, calculating predicted values of the performance parameter for each user of the first set of users and each user of the second set of users over a second period of time;
obtaining actual values of the performance parameter for each user of the first set of users and each user of the second set of users based on the behavior data collected during the first period of time;
combining each actual value of the performance parameter for each user of the first set of users with the corresponding predicted value of the performance parameter for each user of the first set of users into a combined value of the performance parameter for each user of the first set of users;
combining each actual value of the performance parameter for each user of the second set of users with the corresponding predicted value of the performance parameter for each user of the second set of users into a combined value of the performance parameter for each user of the second set of users;
calculating an average value of the combined values of the performance parameter for each user of the first set of users;
calculating an average value of the combined values of the performance parameter for each user of the second set of users; and
determining if a statistically significant difference exists between the average value of the combined values of the performance parameter for each user of the first set of users and the average value of the combined values of the performance parameter for each user of the second set of users;
selecting, based on the statistically significant difference, one of the control variant of the service and the treatment variant of the service.

US Pat. No. 10,339,191

METHOD OF AND A SYSTEM FOR PROCESSING A SEARCH QUERY

Yandex Europe AG, Lucern...

1. A method of processing a search query from a user associated with an electronic device and generating a search engine result page (SERP) responsive to the search query, the method executable at a search server coupled to the electronic device via a communication network, the method comprising:receiving the search query from the electronic device of the user;
performing the search based on the search query and creating a list of search results;
ranking the search results, the ranking process including:
accessing a first screenshot of a first web page included in the search results, where the first screenshot:
has been previously created, the accessing the first screenshot including accessing the first screenshot from a web page server, and
has not been previously created, the accessing the first screenshot including creating the first screenshot,
determining a first appeal factor of the first web page as a function of the first screenshot, the first appeal factor representing a probability that the first web page is appealing to the user,
accessing a second screenshot of a second web page included in the search results, where the second screenshot:
has been previously created, the accessing the second screenshot including accessing the second screenshot from a web page server, and
has not been previously created, the accessing the second screenshot including creating the second screenshot,
determining a second appeal factor of the second web page as a function of the second screenshot, the second appeal factor representing a probability that the second web page is appealing to the user, and
ranking the first web page versus the second web page in the list of search results, the ranking based at least in part on the first appeal factor and the second appeal factor; and
generating the SERP responsive to the search query, the SERP including a ranked list of search results.

US Pat. No. 10,244,129

METHOD OF PROCESSING AND STORING IMAGES

Yandex Europe AG, Lucern...

1. A method of processing and storing a group of images, the method being executed by a server, the method comprising:acquiring, by the server, a first image and a second image, the first image comprising a totality of pixels of the first image and the second image comprising a totality of pixels of the second image;
determining, by the server, that the first image and the second image are visually related, thus generating the group of images, the group of images including the first image and the second image, the determining that the first image and the second image are visually related comprises identifying, by the server, a set of first pixels within the first image amongst the totality of pixels of the first image and a set of second pixels within the second image amongst the totality of pixels of the second image, each first pixel within the set of first pixels being visually related to a respective second pixel within the set of second pixels;
determining, by the server, a first mapping information between the first image and the second image;
generating, by the server, a reference image based on the first image and the second image, the reference image comprising a set of synthetic pixels, the generating the reference image comprises:
determining, by the server, a second mapping information between the first image and the reference image; and
computing, by the server, each synthetic pixel within the set of synthetic pixels based on a respective first pixel within the set of first pixels correlated to a respective synthetic pixel within the set of synthetic pixels and a respective second pixel within the set of second pixels correlated to the respective synthetic pixel within the set of synthetic pixels, the computing each synthetic pixel comprises correlating, by the server, the respective first pixel to the respective synthetic pixel via the second mapping information and the respective second pixel to the respective synthetic pixel via the first and the second mapping information;
computing, by the server, a first parameter and a second parameter, the first parameter being at least partially indicative of a visual dissimilarity between the first pixels and the respective synthetic pixels, the second parameter being at least partially indicative of the visual dissimilarity between the second pixels and the respective synthetic pixels; and
storing, by the server, in a storage accessible by the server, the group of images as: the reference image, the first parameter, the second parameter, the first mapping information and the second mapping information.

US Pat. No. 10,643,071

SYSTEM AND METHOD FOR AUGMENTING AN IMAGE WITH STYLIZED FEATURES

YANDEX EUROPE AG, Lucern...

7. A system for augmenting a digital image, the system comprising:a database configured to store a first image including a first version of an object having a first set of graphical features; and
a processor configured to:
receive a second image including a second version of the object having a second set of graphical features, wherein the first and second version of the object represent a same object,
extract the first and second sets of graphical features from the first and second images, respectively;
generate a third set of graphical features by calculating differences between the first set of graphical features of the first version of the object and the second set of graphical features of the second version of the object;
generate a graphical filter based on a stylization of a graphical view of the first image;
transform the third set of graphical features based on the graphical filter to render a transformed third set of graphical features; and
augment the first version of the object in the first image based on the transformed third set of graphical features.

US Pat. No. 10,614,796

METHOD OF AND SYSTEM FOR PROCESSING A USER-GENERATED INPUT COMMAND

Yandex Europe AG, Lucern...

1. A method of processing a user-generated input command, the method being executable at a server, and comprising:in a training phase:
receiving, by the server, a plurality of example expressions, the example expressions corresponding to a plurality of different natural language expressions of the user-generated input command associated with a machine-executable instruction,
the plurality of different natural language expressions being in a form of user-generated speech received from a user, and having been converted into a text data for detecting the user-generated input command embedded therein;
generating, by the server, features for each of the plurality of different natural language expressions, the features being based on morphological and lexicographical analysis of the plurality of different natural language expressions;
executing, by the server, a pattern mining algorithm, the pattern mining algorithm being a Charm Bitset algorithm, configured to determine one or more feature patterns associated with the features of the machine-executable instruction, the one or more feature patterns being indicative of an occurrence of features of the machine-executable instruction that corresponds to the plurality of different natural language expressions of the user-generated command;
storing, by the server, the one or more feature patterns associated with the machine-executable instruction in a feature pattern database;
in an in-use phase:
receiving, from a client device, an in-use user-generated input command;
generating features for the in-use user-generated input command, the features being based on morphological and lexicographical analysis of the in in-use user-generated input command;
using the one or more feature patterns stored in the feature pattern database to determine, which machine-executable instruction, the in in-use user-generated input command corresponds to, in order to convert the in-use user-generated input command into a machine-executable output instruction;
transmitting, by the server, the machine-executable output instruction to the client device to execute the in-use user-generated input command.

US Pat. No. 10,581,889

METHODS AND SYSTEMS FOR DETECTING ABNORMAL USER ACTIVITY

YANDEX EUROPE AG, Lucern...

1. A method for detecting abnormal user activity, the method executable on a server, the server being connected to a plurality of client devices via a communication network, each client device of the plurality of client devices being associated with a respective user, the method comprising:tracking, by the server, during a first time period, user activity associated with a plurality of application services performed on a first client device, the user activity including user interactions with the plurality of application services, the tracking comprising receiving, at the server, an indication of a respective user interaction with a respective application service, and associating a score, a timestamp and a status with the indication of the user interaction,
wherein each application service of the plurality of application services is associated with a respective first predetermined threshold, and wherein the plurality of application services is associated with a single second predetermined threshold; and
each respective first predetermined threshold associated with each application service of the plurality of application services is a respective first average score, the respective first average score having been determined based on the scores associated with each past user interaction on the respective application service on each client device of the plurality of client devices by the respective user;
determining, by the server, that user activity associated with a first application service of the plurality of application services exceeds a respective first predetermined threshold of the user activity during the first time period,
the determining comprising adding each score associated with each user interaction of the user activity associated with the first application service during the first time period and comparing a total score to the respective first average score; and
the user activity exceeding the respective first predetermined threshold being indicative of a potentially abnormal user activity on the first application service associated with the first client device;
in response to determining that the user activity associated with the first application service exceeds the respective first predetermined threshold, tracking, during a second time period, by the server, user activity associated with the plurality of application services on the first client device, the tracking comprising tracking a content of the user interactions with the plurality of application services;
determining, by the server, that the user activity exceeds the single second predetermined threshold of user activity during the second time period, the single second predetermined threshold having been determined based on past user activity associated with the plurality of application services and performed on each client device of the plurality of client devices,
the user activity exceeding the single second predetermined threshold being indicative of an abnormal user activity associated with the first client device;
in response to determining that the user activity exceeds the second predetermined threshold, triggering, by the server, a user challenge procedure on the first client device, the user challenge procedure for authenticating the user of the first client device, the user challenge procedure being based on the user activity with the first application service during the first time period performed on the first client device.

US Pat. No. 10,558,727

SYSTEM AND METHOD FOR OPERATING A BROWSING APPLICATION

YANDEX EUROPE AG, Lucern...

1. A method of generating additional information to be provided in a browser application of a client device, the method executable at a server, the method comprising:receiving, from the client device, a request for displaying a first resource in the browser application of the client device, the request including an indication of the first resource, the indication including at least a Uniform Resource Locator (URL) of the first resource and a title of the first resource, the request having been destined to a first resource server hosting the first resource, the request causing the client device to receive the first resource from the first resource server and to display the first resource in a displayable area of the browsing application of the client device;
receiving, from the client device, an indication of a user interaction with a command interface of the browsing application, the user interaction being indicative of a user's intention to navigate away from the first resource;
responsive to the indication of the user interaction with the command interface and prior to the user inputting a command into the command interface to navigate away from the first resource:
parsing, by the server, at least the URL and the title of the first resource to obtain at least one keyword related to the first resource;
searching, by the server, based on the at least one keyword, an index of structured information, the structured information having been previously indexed from at least one data source, wherein:
the index of structured information includes at least one entry of structured information having been determined to be relevant to a content of the first resource based on the at least one keyword;
retrieving, from the index of structured information, at least one entry of structured information based on the at least one keyword, the at least one entry of structured information being associated with a suggested link to the at least one web resource;
generating, by the server, at least one snippet of information based on the at least one retrieved entry of structured information, the at least one snippet of information including the suggested link to the at least one web resource;
the at least one snippet including additional information relevant to the first resource that the user has indicated the intention to navigate away from; and
transmitting to the client device the at least one snippet of information for causing the client device to display, in the displayable area of the browsing application of the client device, a start page instead of the first resource, the start page including the at least one snippet of information.

US Pat. No. 10,454,960

METHOD OF AND SYSTEM FOR USER AUTHENTICATION IN ELECTRONIC SERVICE FOR TRANSMISSION OF DIGITAL OBJECTS

YANDEX EUROPE AG, Lucern...

1. A method of user authentication in an electronic service, the electronic service for transmitting, via a communication network, digital objects from a server to a client device associated with a user, the electronic service executable by the server and configured to be accessed by the client device via a client application executable by the client device, the client application configured to transmit data using at least one native network protocol, the method comprising:receiving, by the server from the client device, via the at least one native network protocol, a request for access to a user profile in the electronic service, the request having been generated by the client application; the request including user account data and at least one user behavior parameter;
responsive to at least one user behavior parameter being different from the user behavior parameters stored in the user profile, creating a digital object with an indication of a verification routine;
creating a user pseudo profile, the user pseudo profile being an abbreviated version of the user profile, the user pseudo profile including a portion of the user profile data that includes previously downloaded digital objects and the digital object with the indication of the verification routine;
granting access to the user pseudo profile via the at least one native network protocol to the client application used for sending the request;
the digital object with the indication of the verification routine accessible in the user pseudo profile being configured to cause the client device to perform the verification routine via at least one non-native network protocol;
responsive to the verification routine having been executed via the at least one non-native network protocol, rendering a positive outcome, granting access to the user profile in the electronic service for the client device.

US Pat. No. 10,445,384

SYSTEM AND METHOD FOR DETERMINING A SEARCH RESPONSE TO A RESEARCH QUERY

Yandex Europe AG, Lucern...

1. A method for determining a search response to a search query associated with a user, the method executable at a server, the server implementing a search engine for determining the search response to the search query, the server accessible by an electronic device associated with the user, the method comprising:responsive to a receipt of the search query, ranking search results into ranked search results by assigning a relevancy factor to each of the search results;
determining a most relevant document from the ranked search results, the most relevant document being a top result within the ranked search results and having a highest relevancy factor within the ranked search results;
determining a relevancy differential between the highest relevancy factor and at least one of the relevancy factor associated with a given search result within the ranked search results;
in response to the relevancy differential being above a predetermined threshold, determining a likelihood parameter indicative of how likely the most relevant document is to exclusively satisfy the search query, the determining the likelihood parameter includes analyzing information associated with the most relevant document;
in response to the likelihood parameter being above a threshold:
marking the most relevant document for triggering a display of only the most relevant document; and
transmitting a trigger to the electronic device, the trigger for triggering the access to a URL associated with the most relevant document and the display of only the most relevant document by the electronic device without displaying a general SERP; and
in response to the likelihood parameter being below the threshold:
transmitting an other trigger to the electronic device, the other trigger for triggering a display of the general SERP including the most relevant document and other documents.

US Pat. No. 10,387,513

METHOD AND APPARATUS FOR GENERATING A RECOMMENDED CONTENT LIST

YANDEX EUROPE AG, Lucern...

1. A method for generating a content recommendation for a given user of a recommendation system, the method executable at a recommendation server, the method comprising:receiving, by the recommendation server, from an electronic device associated with the given user a request for the content recommendation;
responsive to the request generating, by the recommendation server, a set of content recommendations for the given user, the generating being executed by a prediction module of the recommendation server, the prediction module having been trained using a training set of training events, such that for each given training event from the training set of training events:
at least one user-nonspecific feature is used as a first input parameter for the prediction module training, the at least one user-nonspecific feature having been retrieved from the latest version of a snapshot archive available at a time of the given training event occurring, the latest version of the snapshot archive having been generated prior to the time of the given training event occurring;
at least one user-specific feature is used as a second input parameter for the prediction module training the at least one user-specific feature available at the time of the given training event occurring;
the generating comprising:
acquiring at least one in-use user non-specific feature from a then latest version of the snapshot archive, the then latest version of the snapshot archive having been generated prior to the generating the set of content recommendations;
generating an in-use user-specific feature at a moment of time of generating the set of content recommendations;
using the at least one in-use user non-specific feature and the in-use user-specific feature for generating the set of content recommendations;
transmitting at least a sub-set of the set of content recommendations to the electronic device.

US Pat. No. 10,387,115

METHOD AND APPARATUS FOR GENERATING A RECOMMENDED SET OF ITEMS

YANDEX EUROPE AG, Lucern...

1. A method of generating a recommended subset of items for a user of an electronic device, the method being executed at a server, the method comprises:prior to acquiring a request for the recommended subset of items, acquiring, by the server, user events associated with a plurality of users, the user events comprising indications of user queries associated with the plurality of users;
prior to acquiring the request, for each of the user queries, generating, by the server, a ranked predicted items list that comprises at least some items from a set of potentially recommendable items, such that each particular item within the ranked predicted items list has an associated rank;
prior to acquiring the request, for each item within a plurality of ranked predicted items lists, generating, by the server, an item score based on a totality of ranks associated therewith;
prior to acquiring the request, generating, by the server, the recommended subset of items from the set of potentially recommendable items, the generating the recommended subset of items comprises selecting, by the server, at least one item within the plurality of ranked predicted items lists as the recommended subset of items based on the item scores of the items within the plurality of ranked predicted items lists;
acquiring, by the server, the request for the recommended subset of items; and
after acquiring the request, sending a signal, by the server to the respective electronic device, for displaying at least one item selected from the recommended subset of items.

US Pat. No. 10,339,187

SYSTEM AND METHOD FOR CONDUCTING A SEARCH

Yandex Europe AG, Lucern...

1. A method of conducting a search, the method being executable at a search engine server communicatively coupled to a user electronic device via a communication network, the method comprising:receiving, by the search engine server via the communication network, a search query from the user electronic device;
determining a search intent parameter by parsing the received search query;
based at least on the determined intent parameter, determining a search query relevant host, the search query relevant host hosting a plurality of resources related to at least a portion of the search query, wherein at least one of the plurality of resources related to at least a portion of the search query has not been crawled by the search engine server by a time of the receiving the search query;
based on the search query relevant host, receiving an address template associated with the search query relevant host;
based on the address template associated with the search query relevant host, generating a search query relevant resource address indicative of an uncrawled search query relevant resource, the uncrawled search query relevant resource being relevant to the search query;
the generating the search query relevant resource address comprising inserting at least a portion of the search query into the received address template of the search query; and
causing the user electronic device to display a search engine results page (SERP), the SERP including a search result indicative of least one of:
the uncrawled search query relevant resource retrieved using the generated search query relevant resource address; and
the generated search query relevant resource address.

US Pat. No. 10,268,506

METHOD AND SYSTEM FOR MASTER LESS NODE COMMUNICATION

YANDEX EUROPE AG, Lucern...

1. A method for executing an action commit routine in a distributed computing system, the distributed computing system having a plurality of nodes, each node of the plurality of nodes being aware of each other's presence within the distributed computing system, the method comprising:receiving, by a particular node of the plurality of nodes, a first client message from a client device that is communicatively coupled to the distributed computing system via a communication network, the first client message including a request for the distributed computing system to execute a first action;
broadcasting, by the particular node to a remainder of the plurality of nodes, a first status message including an indication of the first action, the broadcasting of the first status message being a first portion of the action commit routine;
receiving, by a given node of the plurality of nodes from a first subset of the plurality of nodes, a first plurality of response messages comprising a respective response to the first status message from each one of the first subset of the plurality of nodes;
in response to a number of nodes within the first subset of the plurality of nodes being at least equal to a pre-determined threshold: executing, by the given node, a second portion of the action commit routine, the second portion of the action commit routine sequentially following the first portion, the executing comprising:
broadcasting, by the given node to at least the first subset of the plurality of nodes, a second status message, the broadcasting of the second status message being part of the second portion of the action commit routine; and
wherein the action commit routine is independently executable at each node of the plurality of nodes.

US Pat. No. 10,706,100

METHOD OF AND SYSTEM FOR RECOMMENDING MEDIA OBJECTS

YANDEX EUROPE AG, Lucern...

1. A computer-implemented method for selecting recommended media objects, the method executable by a server, the method comprising:acquiring, by the server, a set of indications of media objects, each indication of the set of indications being associated with a respective media object, the respective media object having at least one respective user interaction parameter, the respective user interaction parameter being indicative of a level of interaction of at least one user with the respective media object;
acquiring, by the server, at least one tag associated with each respective media object, the at least one tag being representative of a content of the respective media object;
receiving, by the server from a client device, a request for a media object recommendation, the request for the media object recommendation having been triggered by a user having interacted with a media object via the client device;
acquiring, by the server, at least one tag and at least one user interaction parameter associated with the media object;
determining, by the server, potential recommended media object candidates based on at least one tag of the media object overlapping with tags associated with the respective media objects;
determining, by the server, for each potential recommended media object candidate, a number of overlapping tags with the media object;
generating, by the server, for each potential recommended media object candidate, a respective correspondence parameter based on the number of overlapping tags and the respective user interaction parameter of the potential recommended media object candidate and the media object, the correspondence parameter being indicative of a level of similarity between the potential recommended object candidate and the media object, the generating of the respective correspondence parameter for each potential recommended media object candidate comprising:
summing, by the server, the respective user interaction parameter of the potential recommended media object candidate and the media object to obtain a respective sum; and
assigning the respective sum to each of the overlapping tags;
adding up the respective sums of all overlapping tags for the given potential recommended media object candidate to obtain the respective correspondence parameter;
selecting, by the server, at least one recommended media object from the potential recommended media object candidates, the at least one recommended media object being associated with a predetermined value of the correspondence parameter.

US Pat. No. 10,672,272

SYSTEM AND METHOD FOR DETERMINING PARKING AVAILABILITY

YANDEX EUROPE AG, Lucern...

12. A system for managing vehicle parking availability, the system comprising:a hardware processor configured to:
receive, from a device, an indication of a transportation-behavior change associated with a first user, wherein the indication of the transportation-behavior change specifies a change from a first transportation behavior to a second transportation behavior at a location,
the transportation-behavior change being indicative of the user having left a parking space in a vicinity of the location, thereby rendering the parking space available;
identify, using records of parking spaces stored in a database, an available parking space based on the received indication of the transportation-behavior change, the available parking space having been vacated by the user, and being indicated by the transportation behavior change, the identifying including:
identifying one or more candidate parking spaces based on the received indication of the transportation-behavior change at the location;
calculating, for each of the candidate parking spaces, a confidence level that the user has left a respective candidate parking space, thereby forming a set of confidence levels; and
identifying, based on a maximal confidence level, the available parking space being the parking space having been vacated by the user and available for parking;
transmitting a notification of the available parking space to at least one navigation user different from the user.

US Pat. No. 10,528,364

METHOD AND SYSTEM FOR DYNAMIC INDEXATION AND LOADING OF MODULE CODES

YANDEX EUROPE AG, Lucern...

1. A computer-implemented method for loading module codes, the module codes required by a computing device for executing an action, the method executed on the computing device,the computing device being coupled to a plurality of predetermined indexes comprising a first predetermined index, a second predetermined index and a default index;
the method comprising:
receiving, by the computing device, a request for executing the action, the action being executable using a first module code, and an indication of a first index associated with the action;
responsive to the request for executing the action, determining if the first index corresponds to the first predetermined index;
responsive to the first index corresponding to the first predetermined index, acquiring, from the first predetermined index:
a first module code reference, the first module code reference indicating a first module code location; and
an indication that executing the first module code requires a second module code;
an indication of a second index, the second index comprising a second module code reference, the second module code reference indicating a second module code location, the second module code supporting execution of the first module code;
responsive to the first index not corresponding to the first predetermined index, acquiring, from the default index:
the first module code reference;
the indication that executing the first module code requires a second module code;
the indication of the second index;
determining if the second index corresponds to the second predetermined index;
in response to the second index corresponding to the second predetermined index, acquiring, from the second predetermined index, the second module code reference;
in response to the second index not corresponding to the second predetermined index, acquiring, from the default index, the second module code reference;
based on the first module code reference, acquiring the first module code from the first module code location;
based on the second module code reference, acquiring the second module code from the second module code location; and
responsive to the presence of the first module code and the second module code, executing the action by running the first module code and the second module code.

US Pat. No. 10,453,341

SYSTEM AND METHOD FOR DETERMINING PARKING AVAILABILITY

YANDEX EUROPE AG, Lucern...

1. A computer-implemented method for managing vehicle parking availability, comprising:receiving, from a device, an indication of a transportation-behavior change associated with a first user, wherein the indication of the transportation-behavior change specifies a change from a first transportation behavior to a second transportation behavior at a first location;
identifying, using records of parking spaces stored in a database, an available parking space based on the received indication of the transportation-behavior change;
determining one or more navigation users having a destination proximate to the available parking space;
calculating, for each navigation user, a parking-availability probability that a respective navigation user will obtain the available parking space;
transmitting, to at least one of the navigation users, a notification of the available parking space according to the calculated parking-availability probabilities, wherein the transmitting comprises:
selecting a subset of the navigation users having an associated parking-availability probability of obtaining the available parking space that exceeds a first threshold value; and
transmitting the notification of the available parking space according to the calculated parking-availability probabilities to the selected subset.

US Pat. No. 10,223,382

METHOD OF AND SERVER FOR GENERATING RETRIEVING ORDER COMMANDS FOR RENDERING A MAP

YANDEX EUROPE AG, Lucern...

1. A method of generating retrieving order commands for rendering a map on an application executed by a client device, the map comprising a plurality of map elements, the client device being associated with a user, the client device being connected to the server via a communication network, the method executable at a server, the method comprising:receiving, by the server from the client device, an initial request to display the map on the client device;
in response to receiving the initial request, acquiring, by the server, device data and user data, the device data being indicative of characteristics of the client device and the user data being indicative of past user interactions of the user of the client device with previously displayed map elements:
performing, by the server, a preliminary analysis of the device data, the preliminary analysis including comparing the characteristics of the client device with threshold requirements values:
determining, by the server, based on the characteristics of the client device being below the threshold requirement values, to initiate a priority rendering mode of the map by determining, priority map elements and auxiliary map elements within the plurality of map elements based on the device data and the user data, the priority map elements comprising priority map tiles and at least one of priority API data and priority resource data;
generating, by the server, retrieving order commands based on the priority map elements and the auxiliary map elements; and
transmitting, by the server, the retrieving order commands to the client device, the retrieving order commands being instrumental in causing the client device to retrieve the plurality of map elements in a prescribed order of retrieval, wherein the priority map elements are to be retrieved before the auxiliary map elements.

US Pat. No. 10,706,325

METHOD AND APPARATUS FOR SELECTING A NETWORK RESOURCE AS A SOURCE OF CONTENT FOR A RECOMMENDATION SYSTEM

YANDEX EUROPE AG, Lucern...

1. A method of selecting a network resource as a source of a content item, the content item to be analyzed by a recommendation system as part of a plurality of content items to generate a set of recommended content items as a content recommendation for a given user of the recommendation system, the recommendation system being executed at a server coupled to a communication network, the method comprising:prior to acquiring a content recommendation request from the given user:
acquiring, by the server, an indication of the network resource;
receiving, by the server, a plurality of features associated with the network resource;
generating, by the server, a given network resource profile for the network resource, the given network resource profile being based on the plurality of features;
executing, by the server, a machine learning algorithm in order to, based on the given network resource profile, determine a source suitability parameter for the network resource, the source suitability parameter being indicative of the network resource being susceptible to publishing the content item that can be processed by the recommendation system,
acquiring the content recommendation request from the given user;
selecting at least one content item from the network resource if the source suitability parameter is determined to be above a pre-determined threshold, the at least one content item for submitting to the recommendation system for processing; and
generating the content recommendation for the given user, the content recommendation including the least one content item from the network resource.

US Pat. No. 10,691,649

METHOD AND SYSTEM FOR MANAGING DATA ASSOCIATED WITH A HIERARCHICAL STRUCTURE

YANDEX EUROPE AG, Lucern...

1. A computer-implemented method of storing data associated with a path and a file, the path defining a relationship between the file and a hierarchical data structure, the hierarchical data structure defining a relationship between a root and one or more leaves, the path comprising a sequence of path elements, each one of the path elements defining a node in the hierarchical data structure, the method for execution by a processor, the method comprising:accessing, from a non-transitory computer-readable medium, the data;
for at least one of the path elements associated with the data, storing, in a hierarchy table accessible from the non-transitory computer-readable medium, (i) a hierarchy identifier associated with a sub-path to the at least one of the path elements in the hierarchical data structure; (ii) an independent hierarchy table identifier uniquely identifying the at least one of the path elements in the hierarchy table; and (iii) a parent hierarchy table identifier associated with a hierarchy identifier of a parent path element from which the at least one of the path elements depends, the hierarchy table only comprising hierarchical relationships between elements that can be associated with one or more child elements, each entry line of the hierarchy table being free of information relating to the one or more child elements themselves; and
for the at least one of the path elements and the file associated with the data, storing, in a file table accessible from the non-transitory computer-readable medium, (i) an independent file table identifier uniquely identifying the at least one of the path elements and the file in the file table; and (ii) a parent file table identifier associated with an independent file table identifier of a parent path element from which the at least one of the path elements and the file depends, the file table being configured to store information relating to the one or more child elements themselves; the storing for enabling retrieving at least one child element of at least one parent path element associated with the data by:
generating, based on a path to the at least one parent path element, a hierarchy identifier associated with the at least one parent path element;
determining, based on the hierarchy identifier, in the hierarchy table, an independent hierarchy table identifier associated with the at least one parent path element;
identifying, in the file table, the at least one child element as an element having a parent file table identifier equal to the independent hierarchy table identifier associated with the parent path element in the hierarchy table;
in response to a displacement of the at least one parent path element, the displacement being indicative of a new path to the at least one parent path element, the at least one parent path element having at least one child element, updating the hierarchy table by generating a new hierarchy identifier for the at least one parent path element based on the new path to the at least one parent path element, the updating the hierarchy table being executed without updating an entry corresponding to the at least one child element in the file table.

US Pat. No. 10,691,711

METHOD FOR RENDERING SEARCH RESULTS ON A MAP DISPLAYABLE ON AN ELECTRONIC DEVICE

YANDEX EUROPE AG, Lucern...

1. A method for rendering search results on a map displayable on an electronic device, the search results being responsive to a geo-search query associated with the map, the electronic device connectable to a map server via a communication network, the method executable by the electronic device, the method comprising:receiving, from the server, a first ranked set of search results, each search result having:
an indication of an associated geographical point of interest (POI) that is responsive to the geo-search query, the associated POI having a geo-position within a given viewport of the map displayable on the electronic device; and
POI information of the associated POI, at least a portion of the POI information renderable on the electronic device as a POI label of the associated POI;
determining a rendering rule associated with rendering POI labels on the electronic device, the rendering rule is for defining:
a total number of POI labels to be displayed within the given viewport;
a first number of the total number of POI labels indicating of POI labels to be rendered using a first label rendering type, the first label rendering type having a first subset of POI information;
a remainder of the total number of POI labels renderable using a second label rendering type, the second label rendering type having a second subset of POI information, the second subset of POI information being smaller than the first subset of POI information and the second label rendering type having decreased visual significance compared to the first label rendering type;
for a given POI of the first ranked set of search results, determining based on the rendering rule a POI-label rendering instruction, the POI-label rendering instruction for causing the electronic device to render an associated POI label in one of the first label rendering type and the second label rendering type, the determining comprising:
in response to the given POI being in the first number of top ranked search results of the first ranked set of search results, determining that the given POI should be rendered with the first label rendering type;
in response to the given POI not being in the first number of top ranked search results first ranked set of search results, determining that the given POI should be rendered with the second label rendering type;
based on the POI-label rendering instructions, rendering POI labels to be overlaid in the given viewport, which comprises rendering POI labels in an order of the search results in the first ranked set of search results, the rendering POI labels in the order of the search results in the first ranked set of search results comprising:
for each next POI label, checking for overlap with previously rendered POI labels; and
in response to detecting the overlap, modifying rendering instruction for the next POI label, the modifying POI-rendering instruction comprising:
in response to the POI-rendering instruction being modified is for rendering the POI label using the first label rendering type, changing the first label rendering type to one of the second label rendering type and a third label rendering type;
the third label rendering type being one of: (i) having a third subset of POI information; the third sub-set of POI information being smaller than the second subset of POI information, and (ii) having a different graphical form-factor having a smaller footprint than a form-factor of the second label rendering type;
receiving a second ranked set of search results for displaying in one of the given viewport and a modified viewport, the second ranked set of search results being at least partially different from the first set of ranked search results;
calculating a label rendering type density parameter for the one of the given view port and the modified view port, the label rendering type density parameter being indicative of a number of POI labels of both the first label rendering type and the second label rendering type still displayed within the given viewport and the modified viewport;
selecting from the second ranked plurality of search results, POIs that are not part of the number of POI labels of both the first label rendering type and the second label rendering type still displayed within the given viewport and the modified viewport, the selecting resulting in a set of new POIs;
based on the label rendering type density parameter, modifying the rendering rule to determine a modified rendering rule, the modified rendering rule for defining a new first number of the total number of new POI labels to be rendered using the first label rendering type;
for a given new POI of the set of new POIs, determining a new POI-label rendering instruction by:
in response to a given new POI being in the new first number of top second ranked search results, determining that the given new POI should be rendered with the first label rendering type;
in response to the given new POI not being in the new first number of top second ranked search results, determining that the given new POI should be rendered with the second label rendering type;
based on the new POI-label rendering instructions, rendering new POI labels to be overlaid within the given viewport and the modified viewport.

US Pat. No. 10,681,029

METHOD OF SELECTING A WEBSITE FOR DISPLAYING IN A WEB BROWSER QUICK-ACCESS FIELD

YANDEX EUROPE AG, Lucern...

1. A method of selecting websites for displaying in a quick-access field in a web browser, the web browser executable by an electronic device, the electronic device being configured to connect to a server via a communication network, the method executable by the electronic device, the method comprising:authenticating a user, the authenticating being executed in response to receiving a user request from a user, the user request including geographical data;
receiving, via the communication network from the server, a first set of websites from among a totality of websites; the first set of websites having been selected based on the geographical data;
receiving, via the communication network from the server, a first rank for a given website of the first set of websites; the first rank having been calculated based on a popularity of the given website among at least some of users associated with the geographical data;
generating a second rank for the given website based on the browser history data associated with the user;
extracting browser history data associated with the user;
creating a second set of websites based on the browser history data;
receiving, from the server, at least one parameter associated with a popularity of each website from the second set of websites among at least some of the users associated with the geographical data;
generating a first rank and a second rank for each website from among the second set of websites; the generating the first rank being based on the popularity of the website among at least some of the users associated with the aforementioned geographical data, and the generating the second rank being based on the browser history data associated with the user;
generating a combined rank based on a sum of the first and second rank for each website from the first set of websites and a sum of the first and second rank for each website from the second set of websites;
displaying, in the quick-access field, an array of websites from the first set of websites and second set of websites, the array having been selected based on the combined rank being greater than a first threshold value; the web sites in the array being ranked and visually organized according to the combined rank.

US Pat. No. 10,674,215

METHOD AND SYSTEM FOR DETERMINING A RELEVANCY PARAMETER FOR CONTENT ITEM

YANDEX EUROPE AG, Lucern...

1. A method of determining a relevancy parameter for a digital content item, the digital content item being originated from a content channel associated with a recommendation system,the relevancy parameter for ranking the digital content item as a recommended content item for users of the recommendation system, the recommendation system including a server and at least one client device connectable to the server via a communication network,
the method executable by the server, the server further being configured to execute a recommendation algorithm to generate a set of recommended content items for a given user of the recommendation system;
the method comprising:
identifying a pool of users associated with the content channel, a given user of the pool of users being associated with the content channel;
in response to receiving a content recommendation request from a first client device associated with a first user that belongs to the pool of users:
generating, using the recommendation algorithm, the set of recommended content items for the first user, a given item of the set of recommended content items not originating from the content channel;
artificially inserting into the set of recommended items the digital content item;
gathering an indication of user interactions of the first user with the set of recommended items, the user interactions indicative of the first user's propensity for the digital content item; and
predicting relevancy parameter of the digital content item for a user outside of the pool of users based on the user interactions of the first user.

US Pat. No. 10,587,758

METHOD AND SYSTEM FOR ROUTING CALL FROM ELECTRONIC DEVICE

YANDEX EUROPE AG, Lucern...

1. A computer-implemented method for routing a call from an electronic device, associated with a user, to a target organization, the method being executed by a server coupled to:a user profile database maintaining one or more user profiles of one or more users associated with one or more services;
a digital content display;
a content item database comprising a plurality of digital content items;
a telephone number repository hosting:
a default telephone number and
a pool of unique numbers;
the method comprising:
receiving a request for a customized digital content item from the content item database, the customized digital content item being destined to the user and not being personalized for the user;
receiving an indication of a user identifier (ID) associated with the user;
determining, based on the user ID, if the user profile database includes data for generating a call enrichment data packet associated with the call;
in response to availability of data for generating the call enrichment data packet:
generating the customized digital content item comprising an indication of the default telephone number, the indication of the default telephone number including a trigger for including the call enrichment data packet when routing the call initiated by the user to the default telephone number; and
in response to the user initiating the call, routing the call to the default number and including the call enrichment data packet for identifying the call as originating from the user in association with the customized digital content item;
in response to non-availability of data for generating the call enrichment data packet:
generating the customized digital content item comprising an indication of one of the pool of unique numbers;
mapping the customized digital content item and the one of the pool of unique numbers to the user ID and generating a mapping data of the customized digital content item, the one of the pool of unique numbers and the user ID; and
in response to the user initiating the call:
(i) routing the call to the one of the pool of unique numbers; and
(ii) using the mapping data for identifying the routed call as originated in response to the customized digital content item.

US Pat. No. 10,762,279

METHOD AND SYSTEM FOR AUGMENTING TEXT IN A DOCUMENT

YANDEX EUROPE AG, Lucern...

1. A method of modifying visual presentation of a text of a document, the text comprising a plurality of text strings, the plurality of text strings including a target content text string to be visually modified, the target content text string comprising a set of characters, and one or more additional text strings, the document to be displayed on a display of an electronic device, the method being executable at a server and comprising:determining the target content text string to be visually modified in the text of the document;
obtaining a Document Object Model (DOM) tree associated with a markup of the document, the DOM tree including a plurality of nodes, each node of the plurality of nodes including a content portion and a syntax portion, the syntax portion containing at least one tag, the plurality of nodes including a plurality of parent nodes and a plurality of child nodes, at least some parent nodes of the plurality of parent nodes having a corresponding at least one child node of the plurality of child nodes;
identifying a target text node in the plurality of nodes of the DOM tree by searching the content portions of the plurality of nodes for an entirety of the target content text string being present therein, the searching comprising:
identifying a first node of the plurality of nodes of the DOM tree containing the entirety of the target content text string therein by searching the plurality of nodes in the DOM tree beginning at a root node of the DOM tree; and
after identifying the first node:
determining that none of the respective child nodes of the first node contains the entirety of the target content text string therein by searching each child node of the first node; and
assigning the first node to be the target text node after determining that none of the respective child nodes contains the entirety of the target content text string therein; and
responsive to identifying the target text node:
dividing the target text string into a plurality of portions,
determining one or more child nodes of the target text node, and
determining that each portion of the plurality of portions corresponds to at least one child node of the one or more child nodes by comparing each portion of the plurality of portions to the one or more child nodes;
modifying the markup in one of: the target text node and a child node of the target text node having a content portion which includes a portion of the target content text string, the modifying including modifying a visual presentation of the target content text string on the display of the electronic device; and
displaying a modified document comprising the modified visual presentation of the target content text string, based on the modified markup, together with the one or more additional text strings, on the electronic device.

US Pat. No. 10,754,863

METHOD AND SYSTEM FOR RANKING A PLURALITY OF DOCUMENTS ON A SEARCH ENGINE RESULTS PAGE

YANDEX EUROPE AG, Lucern...

1. A method of ranking a plurality of documents on a search engine results page (SERP) in response to a query associated with a user of a search engine, the method being executed on a hardware server implementing the search engine, the method comprising:computing, by a ranking machine learning algorithm (MLA) implemented by the server, a ranking score for each document of the plurality of documents, a given ranking score being indicative of an estimated relevance of a respective document to the query and of an original rank of a respective document on the SERP;
computing, by the server, a class association value for each document of the plurality of documents, a given class association value being a probability of a respective document to be associated with a predetermined class of documents having been determined by an operator, a given class association value being instrumental in increasing a magnitude of change of the original rank of the respective document;
computing, by the server, an amended ranking score for each document of the plurality of documents based on a respective ranking score and a respective class association value, a given amended ranking score being indicative of an amended relevance of a respective document to the query; and
triggering, by the server, a display of the SERP with the documents of the plurality of documents being ranked based on the respective amended ranking score;
gathering, by the server, user feedback associated with at least one document upon the user interacting with the at least one document ranked based on the respective amended ranking score on the SERP;
using the user feedback associated with the at least one document to train the ranking machine learning algorithm (MLA).

US Pat. No. 10,754,880

METHODS AND SYSTEMS FOR GENERATING A REPLACEMENT QUERY FOR A USER-ENTERED QUERY

YANDEX EUROPE AG, Lucern...

1. A method of generating a replacement query for a user-entered query, the user-entered query having been received in association with a computer-executed service provided by a server, the user-entered query never having been used in the computer-executed service, the user-entered query being potentially erroneously entered, the method being executable by the server, the method comprising:selecting, by the server, a set of replacement candidate queries for the user-entered query from a plurality of past queries used in the computer-executed service based on string similarity between the user-entered query and each one of the plurality of past queries,
for the set of replacement candidate queries, retrieving, by the server, an indication of past-query-interdependence data, the past-query-interdependence data being indicative of past transitions between each pair of replacement candidate queries in the set of replacement candidate queries,
the user-entered query not being included in the set of replacement candidate queries, the past-query-interdependence data not indicative of any past transitions between the user-entered query and any one of the set of replacement candidate queries;
selecting, by the server, an approximated query from the set of replacement candidate queries based on:
(i) the string similarity between the user-entered query and each one of the set of replacement candidate queries; and
(ii) a usage frequency of each one of the set of replacement candidate queries, the user frequency being based on previous user interactions with the computer-executed service;
for each pair consisting of the approximated query and a given one of the set of replacement candidate queries,
generating, by the server, a respective feature vector based on the past-query-interdependence data between the approximated query and the respective given one of the set of replacement candidate queries, a given feature vector being representative of the past transitions between the approximated query and the respective one of the set of replacement candidate queries;
the respective feature vector to be used as a respective approximated feature vector being representative of estimated past transitions between the user-inputted query and the respective one of the set of replacement candidate queries;
generating, by the server, a respective ranking parameter for each approximated feature vector, the ranking parameter of a given approximated feature vector being indicative of a probability of the respective one of the set of replacement candidate queries being the replacement query for the user-entered query;
determining, by the server, the replacement query for the user-entered query amongst the set of replacement candidate queries based on the respective ranking parameters.

US Pat. No. 10,747,405

METHOD OF RECEIVING USER-COMMAND BY PROCESSOR OF ELECTRONIC DEVICE VIA TOUCHSCREEN OF ELECTRONIC DEVICE

YANDEX EUROPE AG, Lucern...

1. A method of receiving a user-command by a processor of an electronic device via a touchscreen of the electronic device, the method executable by the processor, the method comprising:displaying, by the processor on the touchscreen, a graphical user interface (GUI), the GUI including a map view and an interactive menu displayed in association with the map view,
the map view having displayed thereon:
a map of a geographical area, and
a route along at least a portion of the geographical area, the route having at least two Points of Interest (POIs) sequentially located along the route,
a first POI of the at least two POIs being an in-focus one that is displayed on the map view, and
a second POI of the at least two POIs being an out-of-focus one;
a detour from the route to the first POI;
the interactive menu having displayed thereon:
a first POI card associated with the first POI, the first POI card being changeable with a second POI card, the second POI card being associated with the second POI; and
in response to receiving an indication of a user interaction with the interactive menu, changing of focus:
(i) from the first POI card to the second POI card, and
(ii) from the first POI to the second POI, wherein the changing of focus from the first POI to the second POI including:
moving the map in the map view closer toward the second POI, and
removing the detour from the route to the first POI and displaying a new detour from the route to the second POI.

US Pat. No. 10,733,086

METHODS AND SYSTEMS FOR GENERATING A COMBINED METRIC PARAMETER FOR A/B TESTING

YANDEX EUROPE AG, Lucern...

1. A computer-implemented method of generating a combined metric parameter, the combined metric parameter usable for executing computer-implemented A/B testing of a computer-implemented service, the computer-implemented service having a control version and a treatment version, the method executed on a hardware server, the method comprising:receiving, by the hardware server, a set of data, the set of data including a first plurality of feature vectors and a second plurality of feature vectors, the first plurality of feature vectors being associated with user interactions of a first plurality of users with the control version of the computer-implemented service during a first time period, and the second plurality of feature vectors being associated with user interactions of a second plurality of users with the treatment version of the computer-implemented service during the first time period;
acquiring, by the hardware server, a first control metric parameter for the first plurality of feature vectors and a first treatment metric parameter for the second plurality of feature vectors, a combination of the first control metric parameter and the first treatment metric parameter being at least partially indicative of a direction of a change in user interactions between the control version and the treatment version of the computer-implemented service, the direction being one of a negative direction and a positive direction;
acquiring, by the hardware server, a second control metric parameter for the first plurality of feature vectors and a second treatment metric parameter for the second plurality of feature vectors, a combination of the second control metric parameter and the second treatment metric parameter being at least partially indicative of a magnitude of the change in the user interactions between the control version and the treatment version of the computer-implemented service;
generating, by the hardware server, a combined control metric parameter and a combined treatment metric parameter, the generating comprising:
computing by the hardware server, a first weight parameter weighing respectively the first control metric parameter and the first treatment metric parameter and a second weight parameter weighing respectively the second control metric parameter and the second treatment metric parameter, the computing of the first weight parameter and the second weight parameter further comprising:
computing, by the hardware server, for each unit of time in the first time period, a sign of a difference between the first treatment metric parameter and the first control treatment parameter, the sign of the difference being indicative of the direction of the change in the user interactions between the control version and the treatment version of the computer-implemented service, the direction being one of the negative direction and the positive direction, the sign of the difference being defined by:
?i=sign(M1Bi?M1Ai)
where M1Ai is the first control metric parameter and M1Bi is the first treatment metric parameter;
selecting, by the hardware server, a minimal first weight parameter and a maximal second weight parameter;
the combined control metric parameter including the first control metric parameter being weighted by the first weight parameter and the second control metric parameter being weighted by the second weight parameter,
the combined treatment metric parameter including the first treatment metric parameter being weighted by the first weight parameter and the second treatment metric parameter being weighted by the second weight parameter,
the combination of the combined control metric parameter and the combined treatment metric parameter being simultaneously at least partially indicative of the magnitude and the direction of the change in user interactions between the control version and the treatment version of the computer-implemented service during the first time period.

US Pat. No. 10,705,761

METHOD OF AND SYSTEM FOR SCHEDULING TRANSMISSION OF I/O OPERATIONS

YANDEX EUROPE AG, Lucern...

1. A method of scheduling transmission of a plurality of input/output (I/O) operations to be executed by a storage device, the storage device being part of a computer system having:an operations scheduler executing a scheduling algorithm for scheduling the plurality of I/O operations for transmission to the storage device, the operations scheduler being configured to generate a scheduled sequence having the plurality of I/O operations ordered starting with a first I/O operation to be transmitted and finishing with a last I/O operation to be transmitted;
an I/O operations dispatch controller communicatively coupled to the operations scheduler and the storage device;
the storage device being configured to execute an execution order algorithm to determine an execution order of I/O operations having been transmitted from the operations scheduler for execution;
the method executable by the I/O operations dispatch controller, the method comprising:
applying a slidable N-cell window to select N sequential I/O operations from the scheduled sequence, the slidable N-cell being positioned over the N sequential I/O operations starting with the first I/O operation, each cell of the slidable window including a respective one of the N sequential I/O operations;
transmitting to the storage device the N sequential I/O operations;
receiving an execution confirmation from the storage device that is indicative of a given I/O operation from the N sequential I/O operations having been processed by the storage device;
determining a position of a given cell of the slidable N-cell window associated with the given I/O operation;
responsive to the position of the given cell being the first position amongst positions of cells of the slidable N-cell window:
sliding the slidable N-cell window over the plurality of I/O operations so as to include at least one additional I/O operation in the slidable N-cell window, the at least one additional I/O operation being immediately sequential in the scheduled sequence of the plurality of I/O operations to the N sequential I/O operations; and
transmitting to the storage device, the at least one additional I/O operation for execution.

US Pat. No. 10,705,255

METHOD OF AND SYSTEM FOR GENERATING A WEATHER FORECAST

YANDEX EUROPE AG, Lucern...

1. A method of generating a weather forecast, the method executable on a server, the server including a processor and a machine learning module, the method comprising:receiving, by the machine learning module, at least one current weather measurement parameter, the at least one current weather measurement parameter being a weather parameter at a measurement time;
receiving, by the machine learning module, a first average value of a historical weather parameter for the measurement time,
the first average value of the historical weather parameter having been generated based on an indication of the measurement time;
generating, by the machine learning module, a normalized value of the weather measurement parameter based on a difference between the current weather measurement parameter and the first average value of the historical weather parameter for the measurement time;
training the machine learning module to predict a normalized value of a weather forecasting parameter based on the normalized value of the weather measurement parameter, the normalized value of the weather forecasting parameter being associated with a future forecasting time, the future forecasting time occurring after the measurement time,
the normalized value of the weather forecasting parameter being indicative of a difference between a predicted value of the weather forecasting parameter and a second average value of the historical weather parameter associated with the future forecasting time;
at a given point in the future forecasting time:
receiving, by the machine learning module, a given average value of the historical weather parameter for the given point in the future forecasting time,
the given average value of the historical weather parameter having been generated based on an indication of the given point in the future forecasting time;
predicting, by the machine learning module, the normalized value of the weather forecasting parameter for the given point in the future forecasting time;
generating, based on the normalized value of the weather forecasting parameter and the given average value of the historical parameter for the given point in the future forecasting time, the weather forecast.

US Pat. No. 9,471,613

METHODS AND SYSTEMS FOR INDEXING REFERENCES TO DOCUMENTS OF A DATABASE AND FOR LOCATING DOCUMENTS IN THE DATABASE

YANDEX EUROPE AG, Lucern...

1. A method for indexing references to documents of a database, the method comprising:
receiving a document, at the database, from a server;
storing the document in the database;
extracting a searchable term from the document, the searchable term being associated with a posting list;
dividing the posting list into blocks, each block comprising M database references;
for each block:
determining an encoding pattern based on values of the M database references, the determining the encoding pattern comprises:
determining a number n of patches according to a number of references, among the M database references, that are greater than
or equal to 2b; and

if n>0:
calculating, for each of n patches, a patch value vk by deleting b least significant bits from a corresponding one of the M database references that are greater than or equal
to 2b, wherein k is in a range from 1 to n, and

determining, for each of the n patches, a patch position pk corresponding to a position, in a range of 0 to M?1, of the corresponding one of the M database references that are greater
than or equal to 2b;

wherein the encoding pattern comprises b, n, p1 . . . pn, v1 . . . vn;

locating an encoding pattern table entry corresponding to the encoding pattern;
inserting a pointer corresponding to the located encoding pattern table entry in a header for the block; and
inserting in the block a sequence of M truncated references, each truncated reference comprising b least significant bits
of a corresponding one of the M database references.