Customization

Learn how to customize our SDK and make it look like your app.

Custom layout creation

To create a new layout we recommend that you use the default templates from the SDKs and make the desired changes.

Don't forget to have DataBinding enabled in your project as instructed in the Getting started section.

Step-by-step

  1. Declare the dependency on CameraView in your app-level gradle file.

// CameraX core library using the camera2 implementation
implementation "androidx.camera:camera-view:1.2.1"

2. Create a layout file in your project's layout directory using the CAF template.

3. Refer to the corresponding ViewModel for each SDK in your layout file. Example:

<layout>
    <data>
        <import type="android.view.View"/>
        <variable
            name="viewModel"
            type="com.combateafraude.documentdetector.controller.viewmodel.SDKViewModel" />
    </data>
    ...
</layout>

4. Create your views, and parameterize the visibility and call methods of the ViewModel of each corresponding SDK according to the following tables. Example:

<layout>
...
    <androidx.camera.view.PreviewView
        android:id="@id/cameraImageView"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:visibility="@{viewModel.cameraVisibility ? View.VISIBLE : View.GONE}"
    />
    ...
</layout>

Variables and methods used in layout

All the methods and variables described below are accessed from the SDKViewModel class.

Methods

MethodDescriptionReturnSDK

takePhoto()

Responsible for initiating image capture in MANUAL mode

Void

DocumentDetector, PassiveFaceLiveness

close()

Responsible for closing the SDK.

Void

DocumentDetector, PassiveFaceLiveness, FaceAuthenticator

switchCamera()

Responsible for reversing the camera.

Void

DocumentDetector v7.x or below, PassiveFaceLiveness, FaceAuthenticator

State variables

The Layout used in the SDK is composed of several state variables, these variables are responsible for identifying the state that the SDK is in at each moment of its execution:

VariableDescriptionTypeSDK

loadingStatus

Indicates the 'loading' state

Boolean

DocumentDetector, PassiveFaceLiveness, FaceAuthenticator

readyToCaptureStatus

Indicates that the SDK is ready to capture, after performing all validations for sensors, framing, face, etc.

Boolean

DocumentDetector, PassiveFaceLiveness, FaceAuthenticator

stepDoneSuccessfullyStatus

Indicates that the capture step ended successfully

Boolean

DocumentDetector, PassiveFaceLiveness, FaceAuthenticator

validationFailureStatus

Indicates if there are any faulty sensor checks, quality, framing, face distance, etc.

Boolean

DocumentDetector, PassiveFaceLiveness, FaceAuthenticator

validationFailureId

Indicates what type of error has occurred. See the table below

ValidationFailure

DocumentDetector, PassiveFaceLiveness, FaceAuthenticator

captureModeStatus

Indicates the capture mode enabled. May vary between AUTOMATIC and MANUAL

CaptureMode

DocumentDetector, PassiveFaceLiveness

maskStatus

Indicates the status of the mask. Can range from NORMAL, SUCCESS to ERROR

Mask

DocumentDetector v7.x or below, PassiveFaceLiveness, FaceAuthenticator

maskLayout

Responsible for returning the Drawable Resource Id used to define the mask.

Integer

DocumentDetector v7.x or below, PassiveFaceLiveness, FaceAuthenticator

previousStepName

Name of the previous step that was performed. If not, the value will be null. Example: Back of ID.

String

DocumentDetector v7.x or below

Visibility variables

VariableDescriptionTypeSDK

popUpVisibility

Indicates the visibility of the step initialization popup

Boolean

DocumentDetector

manualCaptureButtonVisibility

Indicates visibility of the manual capture button

Boolean

DocumentDetector, PassiveFaceLiveness

switchCameraButtonVisibility

Indicates the visibility of the reverse camera button

Boolean

DocumentDetector v7.x or below, PassiveFaceLiveness, FaceAuthenticator

statusVisibility

Responsible for the visibility of the SDK status message.

Boolean

DocumentDetector v7.x or below, PassiveFaceLiveness, FaceAuthenticator

statusMessage

Returns the status message. Customize with MessageSettings

String

DocumentDetector v7.x or below, PassiveFaceLiveness, FaceAuthenticator

feedbackStatusMessage

Returns the status message. Customize with MessageSettings

String

DocumentDetector

cameraVisibility

Responsible for camera visibility.

Boolean

DocumentDetector, PassiveFaceLiveness, FaceAuthenticator

maskVisibility

Indicates mask visibility.

Boolean

DocumentDetector v7.x or below, PassiveFaceLiveness, FaceAuthenticator

switchButtonVisibility

Responsible for the visibility of the camera flip button.

This variable has been deprecated, we recommend using the switchCameraButtonVisibility variable.

Boolean

DocumentDetector v7.x or below, PassiveFaceLiveness, FaceAuthenticator

serverRequesting

Responsible for the visibility of the loading displayed by the SDK.

This variable has been deprecated, we recommend using the loadingStatus variable.

Boolean

DocumentDetector v7.x or below, PassiveFaceLiveness, FaceAuthenticator

buttonVisibility

Sets the visibility of the manual capture button.

This variable has been deprecated, use manualCaptureButtonVisibility.

Boolean

DocumentDetector v7.x or below, PassiveFaceLiveness

ValidationFailure

Each SDK contains a number of validation errors that can occur while running. These mostly generate the "error mask" state and prevent the capture from being performed:

ErrorDescriptionSDK

SENSOR_LUMINOSITY_FAILURE

Brightness sensor. The environment is too dark

DocumentDetector, PassiveFaceLiveness

SENSOR_ORIENTATION_FAILURE

Orientation sensor. Device not in correct position

DocumentDetector, PassiveFaceLiveness

SENSOR_STABILITY_FAILURE

Stability sensor. The device is in motion

DocumentDetector, PassiveFaceLiveness, FaceAuthenticator

FRAMING_FAILURE

Document or face-framing

DocumentDetector, PassiveFaceLiveness, FaceAuthenticator

EYES_CLOSED_FAILURE

A face with closed eyes was identified

PassiveFaceLiveness, FaceAuthenticator

FACE_NOT_FOUND

No face was found

PassiveFaceLiveness, FaceAuthenticator

FACE_TOO_FAR

Face too far away.

PassiveFaceLiveness, FaceAuthenticator

FACE_TOO_CLOSE

Very close face.

PassiveFaceLiveness, FaceAuthenticator

ANGULATION_X_FAILURE

Incorrect face angle on the X axis.

PassiveFaceLiveness

ANGULATION_Y_FAILURE

Incorrect face angle on the Y axis.

PassiveFaceLiveness

ANGULATION_Z_FAILURE

Incorrect face angle on the Z axis.

PassiveFaceLiveness

MULTIPLE_FACES_FAILURE

Multiple faces detected.

PassiveFaceLiveness, FaceAuthenticator

QUALITY_FAILURE

Quality of the document capture is too low.

DocumentDetector

LIVENESS_FAILURE

Error in the proof of life. It is a probable fraud attempt

PassiveFaceLiveness, FaceAuthenticator

TYPIFICATION_FAILURE

Document type or document side was not expected.

DocumentDetector

PASSPORT_COUNTRY_CODE_FAILURE

Passaport country code (or issuing code) is not allowed.

DocumentDetector

Using layout in Builder

After creating the desired files, create an object of type DocumentDetector. This object is for you to configure all your business rules for the SDK, including the interface customization attributes:

DocumentDetector mDocumentDetector = new DocumentDetector.Builder(String mobileToken)
    // see table below
    .build();

Builder method

ParameterRequiredCompatibility

.setLayout(@LayoutRes Integer layoutId)

Replaces the SDK's default layout. Create a file in your project's layout folder, copy the standard layout template corresponding to the SDK you are integrating and make the desired changes.

No. Here is the default for each SDK.

Latest versions

.setStyle(@StyleRes int styleResourceId)

Replaces the SDK's default style. In your project's styles.xml file, copy the default template and edit it.

No. Here is the default for each SDK.

Latest versions

.setMask(@DrawableRes Integer greenMask, @DrawableRes Integer whiteMask, @DrawableRes Integer redMask)

Replaces the masks for capturing a document or face: SUCCESS, NORMAL, and FAIL, in that order. If you use this option, use masks with the same detection area of the document and face, as this region is very important for the algorithm to capture.

No. Here is the default for each SDK.

DocumentDetector v7.x or below

.setMask(MaskType type)

Defines which group of masks predefined in the product will be used by the SDK:

  • MaskType.DEFAULT, with the dotted pattern in the document format or face;

  • MaskType.DETAILED, which displays an illustration of the requested document - CNH or RG - along with the dotted mask (only in DocumentDetector);

  • MaskType.NONE, which removes the mask entirely.

No. The default masks are used.

DocumentDetector v7.x or below

Using the methods

DocumentDetector mDocumentDetector = new DocumentDetector.Builder(String mobileToken)
    .setLayout(R.layout.customLayout)
    .setStyle(R.style.customStyle)
    .setMask(MaskType.DETAILED)
    .build();

Different uses .setMask() method

DocumentDetector mDocumentDetector = new DocumentDetector.Builder(String mobileToken)
    // Using Customized Masks
    .setMask(R.drawable.customGreenMask, R.drawable.customWhiteMask, R.drawable.customRedMask)
    // Using masks already offered by the SDK
    .setMask(MaskType.DETAILED)
    .build();

Custom style creation

To create a new style, we recommend that you use the same template that we use, this way it will be easier to perform customizations.

Customization of masks

To customize the masks, first create a drawable resource in your project. You can customize whiteMask, greenMask, and redMask in any way you like. We have provided generic document and face masks that you can use for reference. See the setMask method definition and examples in DocumentDetector.Builder. And see also examples of custom mask integration.

Default templates

Activity (setLayout)

<?xml version="1.0" encoding="utf-8"?>
<layout>

    <data>
        <import type="android.view.View"/>

        <variable
            name="viewModel"
            type="com.combateafraude.documentdetector.controller.viewmodel.SDKViewModel" />

    </data>

    <androidx.constraintlayout.widget.ConstraintLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        android:layout_height="match_parent"
        android:layout_width="match_parent"
        android:keepScreenOn="true">

        <androidx.constraintlayout.widget.Guideline
            android:id="@+id/guidelineStart"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:orientation="vertical"
            app:layout_constraintGuide_percent="0.1" />

        <androidx.constraintlayout.widget.Guideline
            android:id="@+id/guidelineEnd"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:orientation="vertical"
            app:layout_constraintGuide_percent="0.9" />

        <androidx.constraintlayout.widget.Guideline
            android:id="@+id/guidelineTop"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:orientation="horizontal"
            app:layout_constraintGuide_percent="0.05" />

        <androidx.constraintlayout.widget.Guideline
            android:id="@+id/guidelineStatus"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:orientation="horizontal"
            app:layout_constraintGuide_percent="0.78" />

        <androidx.constraintlayout.widget.Guideline
            android:id="@+id/guidelineBottom"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:orientation="horizontal"
            app:layout_constraintGuide_percent="0.97" />

        <androidx.camera.view.PreviewView
            android:id="@id/cameraImageView"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:visibility="@{viewModel.cameraVisibility ? View.VISIBLE : View.GONE}"
            />

        <ImageView
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:src="@{viewModel.previewBitMap}"
            android:visibility="@{viewModel.previewVisibility ? View.VISIBLE : View.GONE}">
        </ImageView>

        <ImageView
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:adjustViewBounds="true"
            android:contentDescription="@string/photo_mask_caf"
            android:scaleType="fitXY"
            android:visibility="@{viewModel.maskVisibility ? View.VISIBLE : View.GONE}"
            android:src="@{context.getDrawable(viewModel.maskLayout)}" />

        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:padding="10dp"
            android:adjustViewBounds="true"
            android:contentDescription="@string/close_caf"
            android:onClick="@{() -> viewModel.close()}"
            android:src="@drawable/ic_back_caf"
            app:layout_constraintStart_toStartOf="@id/guidelineStart"
            app:layout_constraintTop_toTopOf="@id/guidelineTop" />

        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:padding="10dp"
            android:adjustViewBounds="true"
            android:contentDescription="@string/switch_caf"
            android:onClick="@{() -> viewModel.switchCamera()}"
            android:visibility="@{viewModel.switchCameraButtonVisibility ? View.VISIBLE : View.GONE}"
            android:src="@drawable/ic_camera_switch"
            app:layout_constraintEnd_toEndOf="@id/guidelineEnd"
            app:layout_constraintTop_toTopOf="@id/guidelineTop" />

        <com.google.android.material.floatingactionbutton.FloatingActionButton
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_margin="16dp"
            android:visibility="@{viewModel.manualCaptureButtonVisibility ? View.VISIBLE : View.GONE}"
            android:onClick="@{() -> viewModel.takePhoto()}"
            app:layout_constraintStart_toStartOf="@id/guidelineStart"
            app:layout_constraintEnd_toEndOf="@id/guidelineEnd"
            app:layout_constraintTop_toTopOf="@id/guidelineStatus"
            android:contentDescription="@string/take_picture"
            app:backgroundTint="?attr/colorPrimary"
            app:tint="#FFF"
            app:srcCompat="@drawable/ic_camera_caf"/>

        <androidx.constraintlayout.widget.ConstraintLayout
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:visibility="@{viewModel.statusVisibility ? View.VISIBLE : View.GONE}"
            app:layout_constraintStart_toStartOf="@id/guidelineStart"
            app:layout_constraintEnd_toEndOf="@id/guidelineEnd"
            app:layout_constraintTop_toTopOf="@id/guidelineStatus">

            <TextView
                android:id="@+id/statusMessage"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:background="@drawable/bg_radius_caf"
                android:gravity="center_horizontal"
                android:lineSpacingExtra="5sp"
                android:padding="8dp"
                android:layout_marginTop="10dp"
                android:textAlignment="center"
                android:textColor="#606060"
                android:textSize="15sp"
                android:textStyle="bold"
                android:text="@{viewModel.statusMessage}"
                app:layout_constraintStart_toStartOf="parent"
                app:layout_constraintEnd_toEndOf="parent"
                app:layout_constraintTop_toTopOf="parent" />

            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@drawable/triangle_caf"
                android:rotation="270"
                android:adjustViewBounds="true"
                android:contentDescription="@string/nothing_caf"
                app:layout_constraintEnd_toEndOf="@id/statusMessage"
                app:layout_constraintStart_toStartOf="@id/statusMessage"
                app:layout_constraintTop_toTopOf="@id/statusMessage"
                app:layout_constraintBottom_toTopOf="@id/statusMessage" />

        </androidx.constraintlayout.widget.ConstraintLayout>

        <TextView
            android:id="@+id/tvCurrentStepName"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            app:layout_constraintBottom_toTopOf="@id/tvPreviousStepName"
            app:layout_constraintStart_toStartOf="@id/guidelineStart"
            app:layout_constraintEnd_toEndOf="@id/guidelineEnd"
            android:layout_marginBottom="5dp"
            android:textSize="18sp"
            android:textColor="#ffffff"
            android:letterSpacing="0.06"
            android:text="@{viewModel.currentStepName}"
            android:gravity="center_horizontal" />

        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:adjustViewBounds="true"
            android:visibility="@{viewModel.currentStepDone ? View.VISIBLE : View.GONE}"
            android:contentDescription="@string/check_caf"
            app:layout_constraintTop_toTopOf="@id/tvCurrentStepName"
            app:layout_constraintBottom_toBottomOf="@id/tvCurrentStepName"
            app:layout_constraintEnd_toStartOf="@id/tvCurrentStepName"
            android:layout_marginEnd="8dp"
            android:src="@drawable/ic_check_caf" />

        <TextView
            android:id="@+id/tvPreviousStepName"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            app:layout_constraintStart_toStartOf="@id/guidelineStart"
            app:layout_constraintEnd_toEndOf="@id/guidelineEnd"
            app:layout_constraintBottom_toBottomOf="@id/guidelineBottom"
            android:textSize="16sp"
            android:textColor="#66FFFFFF"
            android:letterSpacing="0.06"
            android:text="@{viewModel.previousStepName}"
            android:gravity="center_horizontal" />

        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:adjustViewBounds="true"
            android:visibility="@{viewModel.previousStepDone ? View.VISIBLE : View.GONE}"
            android:contentDescription="@string/check_caf"
            app:layout_constraintTop_toTopOf="@id/tvPreviousStepName"
            app:layout_constraintBottom_toBottomOf="@id/tvPreviousStepName"
            app:layout_constraintEnd_toStartOf="@id/tvPreviousStepName"
            android:layout_marginEnd="8dp"
            android:alpha="0.4"
            android:src="@drawable/ic_check_caf" />

        <ProgressBar
            android:layout_width="64dp"
            android:layout_height="64dp"
            android:indeterminate="true"
            android:indeterminateTint="?attr/colorPrimary"
            android:indeterminateTintMode="src_atop"
            android:visibility="@{viewModel.loadingStatus ? View.VISIBLE : View.GONE}"
            app:layout_constraintVertical_bias="0.45"
            app:layout_constraintBottom_toBottomOf="@id/guidelineBottom"
            app:layout_constraintTop_toTopOf="@id/guidelineTop"
            app:layout_constraintStart_toStartOf="@id/guidelineStart"
            app:layout_constraintEnd_toEndOf="@id/guidelineEnd" />

    </androidx.constraintlayout.widget.ConstraintLayout>
</layout>

Styles (setStyle)

<?xml version="1.0" encoding="utf-8"?>
<resources>

    <style name="windowProperties" parent="Theme.MaterialComponents.Light">
        <item name="windowActionBar">false</item>
        <item name="windowNoTitle">true</item>
        <item name="android:windowTranslucentStatus">true</item>
        <item name="android:windowActivityTransitions">true</item>
        <item name="android:colorControlActivated">#606060</item>
    </style>

    <style name="defaultStyle" parent="windowProperties">
        <item name="colorPrimary">#4CD964</item>
    </style>

    <style name="defaultButtonStyle" parent="Widget.MaterialComponents.Button">
        <item name="android:layout_width">0dp</item>
        <item name="android:layout_height">60dp</item>
        <item name="android:gravity">center</item>
        <item name="android:textColor">#FFFFFF</item>
        <item name="android:textSize">18sp</item>
        <item name="android:fontFamily">sans-serif</item>
        <item name="android:textAllCaps">false</item>
    </style>

    <style name="transparentButton" parent="Widget.MaterialComponents.Button">
        <item name="android:layout_width">0dp</item>
        <item name="android:layout_height">60dp</item>
        <item name="android:gravity">center</item>
        <item name="android:textColor">#323232</item>
        <item name="android:textSize">18sp</item>
        <item name="android:textStyle">normal</item>
        <item name="android:fontFamily">@font/roboto</item>
        <item name="android:textAllCaps">false</item>
        <item name="android:background">#00FFFFFF</item>
    </style>

    <style name="textPreview" parent="windowProperties">
        <item name="android:textColor">#323232</item>
    </style>

</resources>

Mask (setMask)

<vector xmlns:android="http://schemas.android.com/apk/res/android"
    android:width="375dp"
    android:height="667dp"
    android:viewportWidth="375"
    android:viewportHeight="667">
  <path
      android:pathData="M375,0V667H0V0H375ZM341,85H35V516H341V85Z"
      android:strokeAlpha="0.35"
      android:fillColor="#000000"
      android:fillType="evenOdd"
      android:fillAlpha="0.35"/>
  <!-- 
      The color of the mask can be changed by the android:fillColor attribute of the element below.
      The default colors are: #22CB7B (green), #E74C3C (red), #ffffff (white)
  -->
  <path
      android:pathData="M33.5,85C33.5,84.172 34.172,83.5 35,83.5H37.452C38.28,83.5 38.952,84.172 38.952,85C38.952,85.828 38.28,86.5 37.452,86.5H36.5V87.494C36.5,88.323 35.828,88.994 35,88.994C34.172,88.994 33.5,88.323 33.5,87.494V85ZM42.817,85C42.817,84.172 43.489,83.5 44.317,83.5H49.221C50.05,83.5 50.721,84.172 50.721,85C50.721,85.828 50.05,86.5 49.221,86.5H44.317C43.489,86.5 42.817,85.828 42.817,85ZM54.587,85C54.587,84.172 55.258,83.5 56.087,83.5H60.99C61.819,83.5 62.49,84.172 62.49,85C62.49,85.828 61.819,86.5 60.99,86.5H56.087C55.258,86.5 54.587,85.828 54.587,85ZM66.356,85C66.356,84.172 67.027,83.5 67.856,83.5H72.76C73.588,83.5 74.26,84.172 74.26,85C74.26,85.828 73.588,86.5 72.76,86.5H67.856C67.027,86.5 66.356,85.828 66.356,85ZM78.125,85C78.125,84.172 78.797,83.5 79.625,83.5H84.529C85.357,83.5 86.029,84.172 86.029,85C86.029,85.828 85.357,86.5 84.529,86.5H79.625C78.797,86.5 78.125,85.828 78.125,85ZM89.894,85C89.894,84.172 90.566,83.5 91.394,83.5H96.298C97.127,83.5 97.798,84.172 97.798,85C97.798,85.828 97.127,86.5 96.298,86.5H91.394C90.566,86.5 89.894,85.828 89.894,85ZM101.663,85C101.663,84.172 102.335,83.5 103.163,83.5H108.067C108.896,83.5 109.567,84.172 109.567,85C109.567,85.828 108.896,86.5 108.067,86.5H103.163C102.335,86.5 101.663,85.828 101.663,85ZM113.433,85C113.433,84.172 114.104,83.5 114.933,83.5H119.837C120.665,83.5 121.337,84.172 121.337,85C121.337,85.828 120.665,86.5 119.837,86.5H114.933C114.104,86.5 113.433,85.828 113.433,85ZM125.202,85C125.202,84.172 125.874,83.5 126.702,83.5H131.606C132.434,83.5 133.106,84.172 133.106,85C133.106,85.828 132.434,86.5 131.606,86.5H126.702C125.874,86.5 125.202,85.828 125.202,85ZM136.971,85C136.971,84.172 137.643,83.5 138.471,83.5H143.375C144.203,83.5 144.875,84.172 144.875,85C144.875,85.828 144.203,86.5 143.375,86.5H138.471C137.643,86.5 136.971,85.828 136.971,85ZM148.74,85C148.74,84.172 149.412,83.5 150.24,83.5H155.144C155.973,83.5 156.644,84.172 156.644,85C156.644,85.828 155.973,86.5 155.144,86.5H150.24C149.412,86.5 148.74,85.828 148.74,85ZM160.51,85C160.51,84.172 161.181,83.5 162.01,83.5H166.913C167.742,83.5 168.413,84.172 168.413,85C168.413,85.828 167.742,86.5 166.913,86.5H162.01C161.181,86.5 160.51,85.828 160.51,85ZM172.279,85C172.279,84.172 172.95,83.5 173.779,83.5H178.683C179.511,83.5 180.183,84.172 180.183,85C180.183,85.828 179.511,86.5 178.683,86.5H173.779C172.95,86.5 172.279,85.828 172.279,85ZM184.048,85C184.048,84.172 184.72,83.5 185.548,83.5H190.452C191.28,83.5 191.952,84.172 191.952,85C191.952,85.828 191.28,86.5 190.452,86.5H185.548C184.72,86.5 184.048,85.828 184.048,85ZM195.817,85C195.817,84.172 196.489,83.5 197.317,83.5H202.221C203.05,83.5 203.721,84.172 203.721,85C203.721,85.828 203.05,86.5 202.221,86.5H197.317C196.489,86.5 195.817,85.828 195.817,85ZM207.587,85C207.587,84.172 208.258,83.5 209.087,83.5H213.99C214.819,83.5 215.49,84.172 215.49,85C215.49,85.828 214.819,86.5 213.99,86.5H209.087C208.258,86.5 207.587,85.828 207.587,85ZM219.356,85C219.356,84.172 220.027,83.5 220.856,83.5H225.76C226.588,83.5 227.26,84.172 227.26,85C227.26,85.828 226.588,86.5 225.76,86.5H220.856C220.027,86.5 219.356,85.828 219.356,85ZM231.125,85C231.125,84.172 231.797,83.5 232.625,83.5H237.529C238.357,83.5 239.029,84.172 239.029,85C239.029,85.828 238.357,86.5 237.529,86.5H232.625C231.797,86.5 231.125,85.828 231.125,85ZM242.894,85C242.894,84.172 243.566,83.5 244.394,83.5H249.298C250.127,83.5 250.798,84.172 250.798,85C250.798,85.828 250.127,86.5 249.298,86.5H244.394C243.566,86.5 242.894,85.828 242.894,85ZM254.663,85C254.663,84.172 255.335,83.5 256.163,83.5H261.067C261.896,83.5 262.567,84.172 262.567,85C262.567,85.828 261.896,86.5 261.067,86.5H256.163C255.335,86.5 254.663,85.828 254.663,85ZM266.433,85C266.433,84.172 267.104,83.5 267.933,83.5H272.837C273.665,83.5 274.337,84.172 274.337,85C274.337,85.828 273.665,86.5 272.837,86.5H267.933C267.104,86.5 266.433,85.828 266.433,85ZM278.202,85C278.202,84.172 278.874,83.5 279.702,83.5H284.606C285.434,83.5 286.106,84.172 286.106,85C286.106,85.828 285.434,86.5 284.606,86.5H279.702C278.874,86.5 278.202,85.828 278.202,85ZM289.971,85C289.971,84.172 290.643,83.5 291.471,83.5H296.375C297.203,83.5 297.875,84.172 297.875,85C297.875,85.828 297.203,86.5 296.375,86.5H291.471C290.643,86.5 289.971,85.828 289.971,85ZM301.74,85C301.74,84.172 302.412,83.5 303.24,83.5H308.144C308.973,83.5 309.644,84.172 309.644,85C309.644,85.828 308.973,86.5 308.144,86.5H303.24C302.412,86.5 301.74,85.828 301.74,85ZM313.51,85C313.51,84.172 314.181,83.5 315.01,83.5H319.913C320.742,83.5 321.413,84.172 321.413,85C321.413,85.828 320.742,86.5 319.913,86.5H315.01C314.181,86.5 313.51,85.828 313.51,85ZM325.279,85C325.279,84.172 325.95,83.5 326.779,83.5H331.683C332.511,83.5 333.183,84.172 333.183,85C333.183,85.828 332.511,86.5 331.683,86.5H326.779C325.95,86.5 325.279,85.828 325.279,85ZM337.048,85C337.048,84.172 337.72,83.5 338.548,83.5H341C341.828,83.5 342.5,84.172 342.5,85V87.494C342.5,88.323 341.828,88.994 341,88.994C340.172,88.994 339.5,88.323 339.5,87.494V86.5H338.548C337.72,86.5 337.048,85.828 337.048,85ZM341,92.978C341.828,92.978 342.5,93.65 342.5,94.478V99.466C342.5,100.295 341.828,100.966 341,100.966C340.172,100.966 339.5,100.295 339.5,99.466V94.478C339.5,93.65 340.172,92.978 341,92.978ZM35,92.978C35.828,92.978 36.5,93.65 36.5,94.478V99.466C36.5,100.295 35.828,100.966 35,100.966C34.172,100.966 33.5,100.295 33.5,99.466V94.478C33.5,93.65 34.172,92.978 35,92.978ZM341,104.95C341.828,104.95 342.5,105.622 342.5,106.45V111.439C342.5,112.267 341.828,112.939 341,112.939C340.172,112.939 339.5,112.267 339.5,111.439V106.45C339.5,105.622 340.172,104.95 341,104.95ZM35,104.95C35.828,104.95 36.5,105.622 36.5,106.45V111.439C36.5,112.267 35.828,112.939 35,112.939C34.172,112.939 33.5,112.267 33.5,111.439V106.45C33.5,105.622 34.172,104.95 35,104.95ZM35,116.922C35.828,116.922 36.5,117.594 36.5,118.422V123.411C36.5,124.239 35.828,124.911 35,124.911C34.172,124.911 33.5,124.239 33.5,123.411V118.422C33.5,117.594 34.172,116.922 35,116.922ZM341,116.922C341.828,116.922 342.5,117.594 342.5,118.422V123.411C342.5,124.239 341.828,124.911 341,124.911C340.172,124.911 339.5,124.239 339.5,123.411V118.422C339.5,117.594 340.172,116.922 341,116.922ZM35,128.895C35.828,128.895 36.5,129.566 36.5,130.395V135.383C36.5,136.212 35.828,136.883 35,136.883C34.172,136.883 33.5,136.212 33.5,135.383V130.395C33.5,129.566 34.172,128.895 35,128.895ZM341,128.895C341.828,128.895 342.5,129.566 342.5,130.395V135.383C342.5,136.212 341.828,136.883 341,136.883C340.172,136.883 339.5,136.212 339.5,135.383V130.395C339.5,129.566 340.172,128.895 341,128.895ZM35,140.867C35.828,140.867 36.5,141.538 36.5,142.367V147.355C36.5,148.184 35.828,148.855 35,148.855C34.172,148.855 33.5,148.184 33.5,147.355V142.367C33.5,141.538 34.172,140.867 35,140.867ZM341,140.867C341.828,140.867 342.5,141.538 342.5,142.367V147.355C342.5,148.184 341.828,148.855 341,148.855C340.172,148.855 339.5,148.184 339.5,147.355V142.367C339.5,141.538 340.172,140.867 341,140.867ZM35,152.839C35.828,152.839 36.5,153.511 36.5,154.339V159.328C36.5,160.156 35.828,160.828 35,160.828C34.172,160.828 33.5,160.156 33.5,159.328V154.339C33.5,153.511 34.172,152.839 35,152.839ZM341,152.839C341.828,152.839 342.5,153.511 342.5,154.339V159.328C342.5,160.156 341.828,160.828 341,160.828C340.172,160.828 339.5,160.156 339.5,159.328V154.339C339.5,153.511 340.172,152.839 341,152.839ZM35,164.811C35.828,164.811 36.5,165.483 36.5,166.311V171.3C36.5,172.128 35.828,172.8 35,172.8C34.172,172.8 33.5,172.128 33.5,171.3V166.311C33.5,165.483 34.172,164.811 35,164.811ZM341,164.811C341.828,164.811 342.5,165.483 342.5,166.311V171.3C342.5,172.128 341.828,172.8 341,172.8C340.172,172.8 339.5,172.128 339.5,171.3V166.311C339.5,165.483 340.172,164.811 341,164.811ZM35,176.784C35.828,176.784 36.5,177.455 36.5,178.284V183.272C36.5,184.1 35.828,184.772 35,184.772C34.172,184.772 33.5,184.1 33.5,183.272V178.284C33.5,177.455 34.172,176.784 35,176.784ZM341,176.784C341.828,176.784 342.5,177.455 342.5,178.284V183.272C342.5,184.1 341.828,184.772 341,184.772C340.172,184.772 339.5,184.1 339.5,183.272V178.284C339.5,177.455 340.172,176.784 341,176.784ZM35,188.756C35.828,188.756 36.5,189.427 36.5,190.256V195.244C36.5,196.073 35.828,196.744 35,196.744C34.172,196.744 33.5,196.073 33.5,195.244V190.256C33.5,189.427 34.172,188.756 35,188.756ZM341,188.756C341.828,188.756 342.5,189.427 342.5,190.256V195.244C342.5,196.073 341.828,196.744 341,196.744C340.172,196.744 339.5,196.073 339.5,195.244V190.256C339.5,189.427 340.172,188.756 341,188.756ZM35,200.728C35.828,200.728 36.5,201.4 36.5,202.228V207.216C36.5,208.045 35.828,208.716 35,208.716C34.172,208.716 33.5,208.045 33.5,207.216V202.228C33.5,201.4 34.172,200.728 35,200.728ZM341,200.728C341.828,200.728 342.5,201.4 342.5,202.228V207.216C342.5,208.045 341.828,208.716 341,208.716C340.172,208.716 339.5,208.045 339.5,207.216V202.228C339.5,201.4 340.172,200.728 341,200.728ZM35,212.7C35.828,212.7 36.5,213.372 36.5,214.2V219.189C36.5,220.017 35.828,220.689 35,220.689C34.172,220.689 33.5,220.017 33.5,219.189V214.2C33.5,213.372 34.172,212.7 35,212.7ZM341,212.7C341.828,212.7 342.5,213.372 342.5,214.2V219.189C342.5,220.017 341.828,220.689 341,220.689C340.172,220.689 339.5,220.017 339.5,219.189V214.2C339.5,213.372 340.172,212.7 341,212.7ZM35,224.672C35.828,224.672 36.5,225.344 36.5,226.172V231.161C36.5,231.989 35.828,232.661 35,232.661C34.172,232.661 33.5,231.989 33.5,231.161V226.172C33.5,225.344 34.172,224.672 35,224.672ZM341,224.673C341.828,224.673 342.5,225.344 342.5,226.173V231.161C342.5,231.989 341.828,232.661 341,232.661C340.172,232.661 339.5,231.989 339.5,231.161V226.173C339.5,225.344 340.172,224.673 341,224.673ZM35,236.645C35.828,236.645 36.5,237.316 36.5,238.145V243.133C36.5,243.962 35.828,244.633 35,244.633C34.172,244.633 33.5,243.962 33.5,243.133V238.145C33.5,237.316 34.172,236.645 35,236.645ZM341,236.645C341.828,236.645 342.5,237.316 342.5,238.145V243.133C342.5,243.962 341.828,244.633 341,244.633C340.172,244.633 339.5,243.962 339.5,243.133V238.145C339.5,237.316 340.172,236.645 341,236.645ZM35,248.617C35.828,248.617 36.5,249.288 36.5,250.117V255.105C36.5,255.934 35.828,256.605 35,256.605C34.172,256.605 33.5,255.934 33.5,255.105V250.117C33.5,249.288 34.172,248.617 35,248.617ZM341,248.617C341.828,248.617 342.5,249.289 342.5,250.117V255.105C342.5,255.934 341.828,256.605 341,256.605C340.172,256.605 339.5,255.934 339.5,255.105V250.117C339.5,249.289 340.172,248.617 341,248.617ZM35,260.589C35.828,260.589 36.5,261.261 36.5,262.089V267.077C36.5,267.906 35.828,268.577 35,268.577C34.172,268.577 33.5,267.906 33.5,267.077V262.089C33.5,261.261 34.172,260.589 35,260.589ZM341,260.589C341.828,260.589 342.5,261.261 342.5,262.089V267.078C342.5,267.906 341.828,268.578 341,268.578C340.172,268.578 339.5,267.906 339.5,267.078V262.089C339.5,261.261 340.172,260.589 341,260.589ZM35,272.561C35.828,272.561 36.5,273.233 36.5,274.061V279.05C36.5,279.878 35.828,280.55 35,280.55C34.172,280.55 33.5,279.878 33.5,279.05V274.061C33.5,273.233 34.172,272.561 35,272.561ZM341,272.561C341.828,272.561 342.5,273.233 342.5,274.061V279.05C342.5,279.878 341.828,280.55 341,280.55C340.172,280.55 339.5,279.878 339.5,279.05V274.061C339.5,273.233 340.172,272.561 341,272.561ZM35,284.534C35.828,284.534 36.5,285.205 36.5,286.034V291.022C36.5,291.85 35.828,292.522 35,292.522C34.172,292.522 33.5,291.85 33.5,291.022V286.034C33.5,285.205 34.172,284.534 35,284.534ZM341,284.534C341.828,284.534 342.5,285.205 342.5,286.034V291.022C342.5,291.85 341.828,292.522 341,292.522C340.172,292.522 339.5,291.85 339.5,291.022V286.034C339.5,285.205 340.172,284.534 341,284.534ZM35,296.506C35.828,296.506 36.5,297.177 36.5,298.006V302.994C36.5,303.823 35.828,304.494 35,304.494C34.172,304.494 33.5,303.823 33.5,302.994V298.006C33.5,297.177 34.172,296.506 35,296.506ZM341,296.506C341.828,296.506 342.5,297.177 342.5,298.006V302.994C342.5,303.823 341.828,304.494 341,304.494C340.172,304.494 339.5,303.823 339.5,302.994V298.006C339.5,297.177 340.172,296.506 341,296.506ZM35,308.478C35.828,308.478 36.5,309.15 36.5,309.978V314.966C36.5,315.795 35.828,316.466 35,316.466C34.172,316.466 33.5,315.795 33.5,314.966V309.978C33.5,309.15 34.172,308.478 35,308.478ZM341,308.478C341.828,308.478 342.5,309.15 342.5,309.978V314.966C342.5,315.795 341.828,316.466 341,316.466C340.172,316.466 339.5,315.795 339.5,314.966V309.978C339.5,309.15 340.172,308.478 341,308.478ZM35,320.45C35.828,320.45 36.5,321.122 36.5,321.95V326.939C36.5,327.767 35.828,328.439 35,328.439C34.172,328.439 33.5,327.767 33.5,326.939V321.95C33.5,321.122 34.172,320.45 35,320.45ZM341,320.45C341.828,320.45 342.5,321.122 342.5,321.95V326.939C342.5,327.767 341.828,328.439 341,328.439C340.172,328.439 339.5,327.767 339.5,326.939V321.95C339.5,321.122 340.172,320.45 341,320.45ZM35,332.422C35.828,332.422 36.5,333.094 36.5,333.922V338.911C36.5,339.739 35.828,340.411 35,340.411C34.172,340.411 33.5,339.739 33.5,338.911V333.922C33.5,333.094 34.172,332.422 35,332.422ZM341,332.423C341.828,332.423 342.5,333.094 342.5,333.923V338.911C342.5,339.739 341.828,340.411 341,340.411C340.172,340.411 339.5,339.739 339.5,338.911V333.923C339.5,333.094 340.172,332.423 341,332.423ZM35,344.395C35.828,344.395 36.5,345.066 36.5,345.895V350.883C36.5,351.711 35.828,352.383 35,352.383C34.172,352.383 33.5,351.711 33.5,350.883V345.895C33.5,345.066 34.172,344.395 35,344.395ZM341,344.395C341.828,344.395 342.5,345.066 342.5,345.895V350.883C342.5,351.712 341.828,352.383 341,352.383C340.172,352.383 339.5,351.712 339.5,350.883V345.895C339.5,345.066 340.172,344.395 341,344.395ZM35,356.367C35.828,356.367 36.5,357.038 36.5,357.867V362.855C36.5,363.684 35.828,364.355 35,364.355C34.172,364.355 33.5,363.684 33.5,362.855V357.867C33.5,357.038 34.172,356.367 35,356.367ZM341,356.367C341.828,356.367 342.5,357.039 342.5,357.867V362.855C342.5,363.684 341.828,364.355 341,364.355C340.172,364.355 339.5,363.684 339.5,362.855V357.867C339.5,357.039 340.172,356.367 341,356.367ZM35,368.339C35.828,368.339 36.5,369.011 36.5,369.839V374.827C36.5,375.656 35.828,376.327 35,376.327C34.172,376.327 33.5,375.656 33.5,374.827V369.839C33.5,369.011 34.172,368.339 35,368.339ZM341,368.339C341.828,368.339 342.5,369.011 342.5,369.839V374.828C342.5,375.656 341.828,376.328 341,376.328C340.172,376.328 339.5,375.656 339.5,374.828V369.839C339.5,369.011 340.172,368.339 341,368.339ZM35,380.311C35.828,380.311 36.5,380.983 36.5,381.811V386.8C36.5,387.628 35.828,388.3 35,388.3C34.172,388.3 33.5,387.628 33.5,386.8V381.811C33.5,380.983 34.172,380.311 35,380.311ZM341,380.311C341.828,380.311 342.5,380.983 342.5,381.811V386.8C342.5,387.628 341.828,388.3 341,388.3C340.172,388.3 339.5,387.628 339.5,386.8V381.811C339.5,380.983 340.172,380.311 341,380.311ZM35,392.284C35.828,392.284 36.5,392.955 36.5,393.784V398.772C36.5,399.6 35.828,400.272 35,400.272C34.172,400.272 33.5,399.6 33.5,398.772V393.784C33.5,392.955 34.172,392.284 35,392.284ZM341,392.284C341.828,392.284 342.5,392.955 342.5,393.784V398.772C342.5,399.6 341.828,400.272 341,400.272C340.172,400.272 339.5,399.6 339.5,398.772V393.784C339.5,392.955 340.172,392.284 341,392.284ZM35,404.256C35.828,404.256 36.5,404.927 36.5,405.756V410.744C36.5,411.573 35.828,412.244 35,412.244C34.172,412.244 33.5,411.573 33.5,410.744V405.756C33.5,404.927 34.172,404.256 35,404.256ZM341,404.256C341.828,404.256 342.5,404.927 342.5,405.756V410.744C342.5,411.573 341.828,412.244 341,412.244C340.172,412.244 339.5,411.573 339.5,410.744V405.756C339.5,404.927 340.172,404.256 341,404.256ZM35,416.228C35.828,416.228 36.5,416.9 36.5,417.728V422.716C36.5,423.545 35.828,424.216 35,424.216C34.172,424.216 33.5,423.545 33.5,422.716V417.728C33.5,416.9 34.172,416.228 35,416.228ZM341,416.228C341.828,416.228 342.5,416.9 342.5,417.728V422.716C342.5,423.545 341.828,424.216 341,424.216C340.172,424.216 339.5,423.545 339.5,422.716V417.728C339.5,416.9 340.172,416.228 341,416.228ZM35,428.2C35.828,428.2 36.5,428.872 36.5,429.7V434.689C36.5,435.517 35.828,436.189 35,436.189C34.172,436.189 33.5,435.517 33.5,434.689V429.7C33.5,428.872 34.172,428.2 35,428.2ZM341,428.2C341.828,428.2 342.5,428.872 342.5,429.7V434.689C342.5,435.517 341.828,436.189 341,436.189C340.172,436.189 339.5,435.517 339.5,434.689V429.7C339.5,428.872 340.172,428.2 341,428.2ZM35,440.172C35.828,440.172 36.5,440.844 36.5,441.672V446.661C36.5,447.489 35.828,448.161 35,448.161C34.172,448.161 33.5,447.489 33.5,446.661V441.672C33.5,440.844 34.172,440.172 35,440.172ZM341,440.172C341.828,440.172 342.5,440.844 342.5,441.672V446.661C342.5,447.489 341.828,448.161 341,448.161C340.172,448.161 339.5,447.489 339.5,446.661V441.672C339.5,440.844 340.172,440.172 341,440.172ZM35,452.145C35.828,452.145 36.5,452.816 36.5,453.645V458.633C36.5,459.462 35.828,460.133 35,460.133C34.172,460.133 33.5,459.462 33.5,458.633V453.645C33.5,452.816 34.172,452.145 35,452.145ZM341,452.145C341.828,452.145 342.5,452.816 342.5,453.645V458.633C342.5,459.462 341.828,460.133 341,460.133C340.172,460.133 339.5,459.462 339.5,458.633V453.645C339.5,452.816 340.172,452.145 341,452.145ZM35,464.117C35.828,464.117 36.5,464.788 36.5,465.617V470.605C36.5,471.434 35.828,472.105 35,472.105C34.172,472.105 33.5,471.434 33.5,470.605V465.617C33.5,464.788 34.172,464.117 35,464.117ZM341,464.117C341.828,464.117 342.5,464.788 342.5,465.617V470.605C342.5,471.434 341.828,472.105 341,472.105C340.172,472.105 339.5,471.434 339.5,470.605V465.617C339.5,464.788 340.172,464.117 341,464.117ZM35,476.089C35.828,476.089 36.5,476.761 36.5,477.589V482.578C36.5,483.406 35.828,484.078 35,484.078C34.172,484.078 33.5,483.406 33.5,482.578V477.589C33.5,476.761 34.172,476.089 35,476.089ZM341,476.089C341.828,476.089 342.5,476.761 342.5,477.589V482.578C342.5,483.406 341.828,484.078 341,484.078C340.172,484.078 339.5,483.406 339.5,482.578V477.589C339.5,476.761 340.172,476.089 341,476.089ZM35,488.061C35.828,488.061 36.5,488.733 36.5,489.561V494.55C36.5,495.378 35.828,496.05 35,496.05C34.172,496.05 33.5,495.378 33.5,494.55V489.561C33.5,488.733 34.172,488.061 35,488.061ZM341,488.061C341.828,488.061 342.5,488.733 342.5,489.561V494.55C342.5,495.378 341.828,496.05 341,496.05C340.172,496.05 339.5,495.378 339.5,494.55V489.561C339.5,488.733 340.172,488.061 341,488.061ZM35,500.034C35.828,500.034 36.5,500.705 36.5,501.534V506.522C36.5,507.35 35.828,508.022 35,508.022C34.172,508.022 33.5,507.35 33.5,506.522V501.534C33.5,500.705 34.172,500.034 35,500.034ZM341,500.034C341.828,500.034 342.5,500.705 342.5,501.534V506.522C342.5,507.35 341.828,508.022 341,508.022C340.172,508.022 339.5,507.35 339.5,506.522V501.534C339.5,500.705 340.172,500.034 341,500.034ZM35,512.006C35.828,512.006 36.5,512.677 36.5,513.506V514.5H37.452C38.28,514.5 38.952,515.172 38.952,516C38.952,516.828 38.28,517.5 37.452,517.5H35C34.172,517.5 33.5,516.828 33.5,516V513.506C33.5,512.677 34.172,512.006 35,512.006ZM341,512.006C341.828,512.006 342.5,512.677 342.5,513.506V516C342.5,516.828 341.828,517.5 341,517.5H338.548C337.72,517.5 337.048,516.828 337.048,516C337.048,515.172 337.72,514.5 338.548,514.5H339.5V513.506C339.5,512.677 340.172,512.006 341,512.006ZM42.817,516C42.817,515.172 43.489,514.5 44.317,514.5H49.221C50.05,514.5 50.721,515.172 50.721,516C50.721,516.828 50.05,517.5 49.221,517.5H44.317C43.489,517.5 42.817,516.828 42.817,516ZM54.586,516C54.586,515.172 55.258,514.5 56.086,514.5H60.99C61.819,514.5 62.49,515.172 62.49,516C62.49,516.828 61.819,517.5 60.99,517.5H56.086C55.258,517.5 54.586,516.828 54.586,516ZM66.356,516C66.356,515.172 67.027,514.5 67.856,514.5H72.76C73.588,514.5 74.26,515.172 74.26,516C74.26,516.828 73.588,517.5 72.76,517.5H67.856C67.027,517.5 66.356,516.828 66.356,516ZM78.125,516C78.125,515.172 78.797,514.5 79.625,514.5H84.529C85.357,514.5 86.029,515.172 86.029,516C86.029,516.828 85.357,517.5 84.529,517.5H79.625C78.797,517.5 78.125,516.828 78.125,516ZM89.894,516C89.894,515.172 90.566,514.5 91.394,514.5H96.298C97.127,514.5 97.798,515.172 97.798,516C97.798,516.828 97.127,517.5 96.298,517.5H91.394C90.566,517.5 89.894,516.828 89.894,516ZM101.663,516C101.663,515.172 102.335,514.5 103.163,514.5H108.067C108.896,514.5 109.567,515.172 109.567,516C109.567,516.828 108.896,517.5 108.067,517.5H103.163C102.335,517.5 101.663,516.828 101.663,516ZM113.433,516C113.433,515.172 114.104,514.5 114.933,514.5H119.837C120.665,514.5 121.337,515.172 121.337,516C121.337,516.828 120.665,517.5 119.837,517.5H114.933C114.104,517.5 113.433,516.828 113.433,516ZM125.202,516C125.202,515.172 125.873,514.5 126.702,514.5H131.606C132.434,514.5 133.106,515.172 133.106,516C133.106,516.828 132.434,517.5 131.606,517.5H126.702C125.873,517.5 125.202,516.828 125.202,516ZM136.971,516C136.971,515.172 137.643,514.5 138.471,514.5H143.375C144.203,514.5 144.875,515.172 144.875,516C144.875,516.828 144.203,517.5 143.375,517.5H138.471C137.643,517.5 136.971,516.828 136.971,516ZM148.74,516C148.74,515.172 149.412,514.5 150.24,514.5H155.144C155.973,514.5 156.644,515.172 156.644,516C156.644,516.828 155.973,517.5 155.144,517.5H150.24C149.412,517.5 148.74,516.828 148.74,516ZM160.51,516C160.51,515.172 161.181,514.5 162.01,514.5H166.913C167.742,514.5 168.413,515.172 168.413,516C168.413,516.828 167.742,517.5 166.913,517.5H162.01C161.181,517.5 160.51,516.828 160.51,516ZM172.279,516C172.279,515.172 172.95,514.5 173.779,514.5H178.683C179.511,514.5 180.183,515.172 180.183,516C180.183,516.828 179.511,517.5 178.683,517.5H173.779C172.95,517.5 172.279,516.828 172.279,516ZM184.048,516C184.048,515.172 184.72,514.5 185.548,514.5H190.452C191.28,514.5 191.952,515.172 191.952,516C191.952,516.828 191.28,517.5 190.452,517.5H185.548C184.72,517.5 184.048,516.828 184.048,516ZM195.817,516C195.817,515.172 196.489,514.5 197.317,514.5H202.221C203.05,514.5 203.721,515.172 203.721,516C203.721,516.828 203.05,517.5 202.221,517.5H197.317C196.489,517.5 195.817,516.828 195.817,516ZM207.587,516C207.587,515.172 208.258,514.5 209.087,514.5H213.99C214.819,514.5 215.49,515.172 215.49,516C215.49,516.828 214.819,517.5 213.99,517.5H209.087C208.258,517.5 207.587,516.828 207.587,516ZM219.356,516C219.356,515.172 220.027,514.5 220.856,514.5H225.76C226.588,514.5 227.26,515.172 227.26,516C227.26,516.828 226.588,517.5 225.76,517.5H220.856C220.027,517.5 219.356,516.828 219.356,516ZM231.125,516C231.125,515.172 231.797,514.5 232.625,514.5H237.529C238.357,514.5 239.029,515.172 239.029,516C239.029,516.828 238.357,517.5 237.529,517.5H232.625C231.797,517.5 231.125,516.828 231.125,516ZM242.894,516C242.894,515.172 243.566,514.5 244.394,514.5H249.298C250.126,514.5 250.798,515.172 250.798,516C250.798,516.828 250.126,517.5 249.298,517.5H244.394C243.566,517.5 242.894,516.828 242.894,516ZM254.663,516C254.663,515.172 255.335,514.5 256.163,514.5H261.067C261.896,514.5 262.567,515.172 262.567,516C262.567,516.828 261.896,517.5 261.067,517.5H256.163C255.335,517.5 254.663,516.828 254.663,516ZM266.433,516C266.433,515.172 267.104,514.5 267.933,514.5H272.837C273.665,514.5 274.337,515.172 274.337,516C274.337,516.828 273.665,517.5 272.837,517.5H267.933C267.104,517.5 266.433,516.828 266.433,516ZM278.202,516C278.202,515.172 278.873,514.5 279.702,514.5H284.606C285.434,514.5 286.106,515.172 286.106,516C286.106,516.828 285.434,517.5 284.606,517.5H279.702C278.873,517.5 278.202,516.828 278.202,516ZM289.971,516C289.971,515.172 290.643,514.5 291.471,514.5H296.375C297.203,514.5 297.875,515.172 297.875,516C297.875,516.828 297.203,517.5 296.375,517.5H291.471C290.643,517.5 289.971,516.828 289.971,516ZM301.74,516C301.74,515.172 302.412,514.5 303.24,514.5H308.144C308.973,514.5 309.644,515.172 309.644,516C309.644,516.828 308.973,517.5 308.144,517.5H303.24C302.412,517.5 301.74,516.828 301.74,516ZM313.51,516C313.51,515.172 314.181,514.5 315.01,514.5H319.913C320.742,514.5 321.413,515.172 321.413,516C321.413,516.828 320.742,517.5 319.913,517.5H315.01C314.181,517.5 313.51,516.828 313.51,516ZM325.279,516C325.279,515.172 325.95,514.5 326.779,514.5H331.683C332.511,514.5 333.183,515.172 333.183,516C333.183,516.828 332.511,517.5 331.683,517.5H326.779C325.95,517.5 325.279,516.828 325.279,516Z"
      android:fillColor="#22CB7B" 
      android:fillType="evenOdd"/>
</vector>