diff --git a/cvat/apps/documentation/static/documentation/images/cvat.jpg b/cvat/apps/documentation/static/documentation/images/cvat.jpg
index eb512b7d..ed6eb494 100755
Binary files a/cvat/apps/documentation/static/documentation/images/cvat.jpg and b/cvat/apps/documentation/static/documentation/images/cvat.jpg differ
diff --git a/cvat/apps/documentation/static/documentation/images/image069.jpg b/cvat/apps/documentation/static/documentation/images/image069.jpg
deleted file mode 100644
index 23a06f43..00000000
Binary files a/cvat/apps/documentation/static/documentation/images/image069.jpg and /dev/null differ
diff --git a/cvat/apps/documentation/static/documentation/images/image075.jpg b/cvat/apps/documentation/static/documentation/images/image075.jpg
index ceb48548..aa42f8eb 100644
Binary files a/cvat/apps/documentation/static/documentation/images/image075.jpg and b/cvat/apps/documentation/static/documentation/images/image075.jpg differ
diff --git a/cvat/apps/documentation/static/documentation/images/image076.jpg b/cvat/apps/documentation/static/documentation/images/image076.jpg
deleted file mode 100644
index 29dc91fb..00000000
Binary files a/cvat/apps/documentation/static/documentation/images/image076.jpg and /dev/null differ
diff --git a/cvat/apps/documentation/static/documentation/images/image092.jpg b/cvat/apps/documentation/static/documentation/images/image092.jpg
deleted file mode 100644
index c31e5f02..00000000
Binary files a/cvat/apps/documentation/static/documentation/images/image092.jpg and /dev/null differ
diff --git a/cvat/apps/documentation/static/documentation/images/image113_detrac.jpg b/cvat/apps/documentation/static/documentation/images/image113.jpg
similarity index 100%
rename from cvat/apps/documentation/static/documentation/images/image113_detrac.jpg
rename to cvat/apps/documentation/static/documentation/images/image113.jpg
diff --git a/cvat/apps/documentation/static/documentation/images/image175.jpg b/cvat/apps/documentation/static/documentation/images/image175.jpg
new file mode 100644
index 00000000..be59807e
Binary files /dev/null and b/cvat/apps/documentation/static/documentation/images/image175.jpg differ
diff --git a/cvat/apps/documentation/user_guide.md b/cvat/apps/documentation/user_guide.md
index 1bfb9183..b9234c8b 100644
--- a/cvat/apps/documentation/user_guide.md
+++ b/cvat/apps/documentation/user_guide.md
@@ -37,7 +37,6 @@
- [Filter](#filter)
- [Analytics](#analytics)
- [Shortcuts](#shortcuts)
- - [Hints](#hints)
# User's guide
@@ -959,8 +958,6 @@ Enables / disables the display of auxiliary perspective lines. Only relevant for

----
-
## Shape mode (advanced)
Basic operations in the mode were described in section [shape mode (basics)](#shape-mode-basics).
@@ -1379,75 +1376,78 @@ Shapes that don't have ``group_id``, will be highlighted in white.
There are some reasons to use the feature:
1. When you use a filter, objects that don't match the filter will be hidden.
-1. Fast navigation between frames that have an object of interest. Use
-``Left Arrow`` / ``Right Arrow`` keys for the purpose. If the filter is empty,
-the arrows go to previous/next frames which contain any objects.
+1. Fast navigation between the frames that have an object of interest. Use
+``Left Arrow`` / ``Right Arrow`` keys for this purpose. If there are no objects matching the filter,
+the will go to arrows the previous/next frames which contains any objects.
1. The list contains frequently used and recent filters.
-To use the functionality, it is enough to specify a value inside ``Filter`` text
-box and defocus the text box (for example, click on the image). After that, the
-filter will be applied.
+To use the function, it is enough to specify a value inside the ``Filter`` text
+field and press ``Enter``. After that, the filter will be applied.
---
-In the trivial case, the correct filter must match the template: ``label[prop operator "value"]``
+**Supported properties:**
-``label`` is a type of an object (e.g. _person, car, face_, etc.). If the type isn't important, you can use ``*``.
+| Properties | Supported values | Description |
+|-- |-- | -- |
+| ``width`` |number of px or ``height`` | shape width |
+| ``height`` |number of px or ``width`` | shape height |
+| ``label`` |``"text"`` or ``["text"]`` | label name |
+| ``serverID``| number | ID of the object on server
(You can find out by forming a link to the object through the Action menu)|
+| ``clientID``| number | ID of the object in your client (indicated on the objects sidebar)|
+| ``type`` |``"shape"``, ``"track"``, ``"tag"``| type of object |
+| ``shape`` |``"rectangle"``,``"polygon"``,
``"polyline"``,``"points"``| type of shape |
+| ``occluded``|``true`` or ``false`` | occluded properties |
+| ``attr`` |``"text"`` | attribute name |
-``prop`` is a property which should be filtered. The following items are available:
+**Supported operators:**
-- ``id`` — identifier of an object. It helps to find a specific object easily
-in case of huge number of objects and images or frames.
-- ``type`` — an annotation type. Possible values: ``annotation``, ``interpolation``
-- ``lock`` accepts ``true`` and ``false`` values. It can be used to hide all locked objects.
-- ``occluded`` accepts ``true`` and ``false`` values. It can be used to hide all occluded objects.
-- ``attr`` is a prefix to access attributes of an object. For example, it is possible to
-access _race_ attribute. For the purpose you should specify
-- ``attr/race``. To access all attributes, it is necessary to write ``attr/*``.
+``==`` - Equally; ``!=`` - Not equal; ``>`` - More; ``>=`` - More or equal; ``<`` - Less; ``<=`` - Less or equal;
+``()`` - Brackets; ``&`` - And; ``|``- Or.
-``operator`` can be ``=`` (equal), ``!=`` (not equal), ``<`` (less), ``>``
-(more), ``<=`` (less or equal), ``>=`` (more or equal).
-
-``"value"`` — value of an attribute or a property. It has to be specified in quotes.
+If you have double quotes in your query string, please escape them using backslash: ``\"`` (see the latest example)
+All properties and values are case-sensitive. CVAT uses json queries to perform search.
---
-| Example | Description |
-| -------------------------------|------------- |
-| ``face`` | all faces |
-| ``*[id=4]`` | object with id #4 |
-| ``*[type="annotation"]`` | annotated objects only |
-| ``car[occluded="true"]`` | cars with _occluded_ property |
-| ``*[lock!="true"]`` | all unlocked objects |
-| ``car[attr/parked="true"]`` | parked cars |
-| ``*[attr/*="__undefined__"]`` | any objects with ``__undefined__`` value of an attribute |
-| ``*[width<300 or height<300]`` | shape less than 300 pixels wide and more than 200 pixels high |
+**Examples filters**
----
+- ``label=="car" | label==["road sign"]`` - this filter will show only objects with the car or road sign label.
+- ``shape == "polygon"`` - this filter will show only polygons.
+- ``width >= height`` - this filter will show only those objects whose width will be greater than
+ or equal to the height.
+- ``attr["color"] == "black"`` - this filter will show objects whose color attribute is black.
+- ``clientID == 50`` - this filter will show the object with id equal to 50 (e.g. rectangle 50).
+- ``(label=="car" & attr["parked"]==true) | (label=="pedestrian" & width > 150)`` - this filter will display objects
+ with the “car” label and the parking attribute enabled or objects with the “pedestrian” label with a height of more
+ than 150 pixels
+- ``(( label==["car \"mazda\""]) | (attr["parked"]==true & width > 150)) & (height > 150 & (clientID == serverID)))`` -
+ This filter will show objects with the label "car" mazda "" or objects that have the parked attribute turned on
+ and have a width of more than 150 pixels, and those listed should have a height of more than 150 pixels
+ and their clientID is equal to serverID.
-The functionality allows to create more complex conditions. Several filters can
-be combined by ``or``, ``and``, ``|`` operators. Operators ``or``, ``and`` can
-be applied inside square brackets. ``|`` operator (union) can be applied
-outside of square brackets.
+**Filter history**
-| Example | Description |
-| -------------------------------------------------------- |------------- |
-| ``person[attr/age>="25" and attr/age<="35"]`` | people with age between 25 and 35. |
-| ``face[attr/glass="sunglass" or attr/glass="no"]`` | faces with sunglasses or without glasses at all. |
-| ``person[attr/race="asian"]`` \| ``car[attr/model="bmw" or attr/model="mazda"]`` | asian persons or bmw or mazda cars. |
+
+
+You can add previously entered filters and combine them. To do so, click on the input field and a list of previously
+entered filters will open. Click on the filters to add them to the input field.
+Combined filters occur with the "or" operator.
+
+---
## Analytics
-If your CVAT instance is created with analytics support, you can press the
-"analytics" button in dashboard, a new tab with analytics and journals will
-be opened.
+If your CVAT instance was created with analytics support, you can press the ``Analytics`` button in the dashboard
+and analytics and journals will be opened in a new tab.
-
+
-It allows you to see how much working time every user spend on each task and how much they did, over any time range.
+The analytics allows you to see how much time every user spends on each task
+and how much work they did over any time range.

-It also has activity graph which can be modified with number of users shown and timeframe.
+It also has an activity graph which can be modified with a number of users shown and a timeframe.

@@ -1457,70 +1457,68 @@ Many UI elements have shortcut hints. Put your pointer to a required element to

-| Shortcut | Common |
-|----------------------- |------------------------------ |
-| ``F1`` | open help |
-| ``F1`` in dashboard | open page with documentation |
-| ``F2`` | open settings |
-| ``L`` | lock/unlock an active shape |
-| ``L+T`` | lock/unlock all shapes on the current frame |
-| ``Q`` or ``Num/`` | set occluded property for an active shape |
-| ``N`` | start/stop draw mode |
-| ``Esc`` | close draw mode without create |
-| ``Ctrl+`` | change type of an active shape |
-| ``Shift+`` | change type of new shape by default |
-| `` Alt + >`` | switch next default shape type |
-| ``Alt + <`` | switch previous default shape type |
-| ``Enter`` | change color of active shape |
-| ``H`` | hide active shape |
-| ``T+H`` | hide all shapes |
-| ``J`` | hide labels with attributes on every frame |
-| ``Delete`` | delete an active shape |
-| ``Shift+Delete`` | delete an active shape even if it is locked |
-| ``F`` | go to next frame |
-| ``D`` | go to previous frame |
-| ``V`` | go forward with a predefined step |
-| ``C`` | go backward with a predefined step |
-| ``~`` | focus to ``go to frame`` element |
-| ``Ctrl + R`` | clockwise image rotation |
-| ``Ctrl + Shift + R`` | counter clockwise image rotation |
-| ``Ctrl+C`` | copy an active shape |
-| ``Ctrl+V`` | insert a copied shape |
-| ``Ctrl+Z`` | undo previous action |
-| ``Ctrl+Shift+Z``/``Ctrl+Y`` | redo previous action |
-| ``Shift+B``/``Alt+B`` | increase/decrease brightness on an image |
-| ``Shift+C``/``Alt+C`` | increase/decrease contrast on an image |
-| ``Shift+S``/``Alt+S`` | increase/decrease saturation on an image |
-| ``Alt + G + '+', Alt + G + '-'`` | increase/decrease grid opacity |
-| ``Alt + G + Enter`` | change grid color |
-| ``Ctrl+S`` | save job |
-| ``Ctrl+B`` | propagate active shape |
-| ``+``/``-`` | change relative order of highlighted box (if Z-Order is enabled) |
-| | **Interpolation** |
-| ``M`` | enter/apply merge mode |
-| ``Esc`` | close merge mode without apply the merge |
-| ``R`` | go to the next key frame of an active shape |
-| ``E`` | go to the previous key frame of an active shape |
-| ``O`` | change attribute of an active shape to "Outside the frame" |
-| ``K`` | mark current frame as key frame on an active shape |
-| | **Attribute annotation mode** |
-| ``Shift+Enter`` | enter/leave Attribute Annotation mode |
-| ``Up Arrow`` | go to the next attribute (up) |
-| ``Down Arrow`` | go to the next attribute (down) |
-| ``Tab`` | go to the next annotated object |
-| ``Shift+Tab`` | go to the previous annotated object |
-| ```` | assign a corresponding value to the current attribute |
-| | **Grouping** |
-| ``G`` | switch group mode |
-| ``Esc`` | close group mode |
-| ``Shift+G`` | reset group for selected shapes |
-| | **Filter** |
-| ``Left Arrow`` | go to the previous frame which corresponds to the specified filter value |
-| ``Right Arrow`` | go to the next frame which corresponds to the specified filter value |
-
-## Hints
-Hold ``Mouse Wheel`` to move frame (for example, while drawing)
-
-Hold ``Ctrl`` when shape is active and fix it.
-
-Hold ``Ctrl`` when paste shape from buffer for multiple pasting.
+| Shortcut | Common |
+|--------------------------------|---------------------------------------------------------------------------------|
+| | _Main functions_ |
+| ``F2`` | Open/hide the list of available shortcuts |
+| ``F3`` | Go to the settings page or go back |
+| ``Ctrl+S`` | Go to the settings page or go back |
+| ``Ctrl+Z`` | Cancel the latest action related with objects |
+| ``Ctrl+Shift+Z`` or ``Ctrl+Y`` | Cancel undo action |
+| Hold ``Mouse Wheel`` | To move an image frame (for example, while drawing) |
+| | _Player_ |
+| ``F`` | Go to the next frame |
+| ``D`` | Go to the previous frame |
+| ``V`` | Go forward with a step |
+| ``C`` | Go backward with a step |
+| ``Right`` | Search the next frame that satisfies to the filters
or next frame which contain any objects|
+| ``Left`` | Search the previous frame that satisfies to the filters
or previous frame which contain any objects|
+| ``Space`` | Start/stop automatic changing frames |
+| `` ` `` or ``~`` | Focus on the element to change the current frame |
+| | _Modes_ |
+| ``N`` | Repeat the latest procedure of drawing with the same parameters |
+| ``M`` | Activate or deactivate mode to merging shapes |
+| ``G`` | Activate or deactivate mode to grouping shapes |
+| ``Shift+G`` | Reset group for selected shapes (in group mode) |
+| ``Esc`` | Cancel any active canvas mode |
+| | _Image operations_ |
+| ``Ctrl+R`` | Change image angle (add 90 degrees) |
+| ``Ctrl+Shift+R`` | Change image angle (substract 90 degrees) |
+| ``Shift+B+=`` | Increase brightness level for the image |
+| ``Shift+B+-`` | Decrease brightness level for the image |
+| ``Shift+C+=`` | Increase contrast level for the image |
+| ``Shift+C+-`` | Decrease contrast level for the image |
+| ``Shift+S+=`` | Increase saturation level for the image |
+| ``Shift+S+-`` | Increase contrast level for the image |
+| ``Shift+G+=`` | Make the grid more visible |
+| ``Shift+G+-`` | Make the grid less visible |
+| ``Shift+G+Enter`` | Set another color for the image grid |
+| | _Operations with objects_ |
+| ``Ctrl`` | Switch automatic bordering for polygons and polylines during drawing/editing |
+| Hold ``Ctrl`` | When the shape is active and fix it |
+| ``Ctrl+Double-Click`` on point | Deleting a point (used when hovering over a point of polygon, polyline, points) |
+| ``Shift+Double-Click`` on point| Editing a shape (used when hovering over a point of polygon, polyline or points)|
+| ``Right-Click`` on shape | Display of an object element from objects sidebar |
+| ``T+L`` | Change locked state for all objects in the sidebar |
+| ``L`` | Change locked state for an active object |
+| ``T+H`` | Change hidden state for objects in the sidebar |
+| ``H`` | Change hidden state for an active object |
+| ``Q`` or ``/`` | Change occluded property for an active object |
+| ``Del`` or ``Shift+Del`` | Delete an active object. Use shift to force delete of locked objects |
+| ``-`` or ``_`` | Put an active object "farther" from the user (decrease z axis value) |
+| ``+`` or ``=`` | Put an active object "closer" to the user (increase z axis value) |
+| ``Ctrl+C`` | Copy shape to CVAT internal clipboard |
+| ``Ctrl+V`` | Paste a shape from internal CVAT clipboard |
+| Hold ``Ctrl`` while pasting | When pasting shape from the buffer for multiple pasting. |
+| ``Crtl+B`` | Make a copy of the object on the following frames |
+| | _Operations are available only for track_ |
+| ``K`` | Change keyframe property for an active track |
+| ``O`` | Change outside property for an active track |
+| ``R`` | Go to the next keyframe of an active track |
+| ``E`` | Go to the previous keyframe of an active track |
+| | _Attribute annotation mode_ |
+| ``Up Arrow`` | Go to the next attribute (up) |
+| ``Down Arrow`` | Go to the next attribute (down) |
+| ``Tab`` | Go to the next annotated object in current frame |
+| ``Shift+Tab`` | Go to the previous annotated object in current frame |
+| ```` | Assign a corresponding value to the current attribute |
\ No newline at end of file