0001213900-21-040534.txt : 20210805 0001213900-21-040534.hdr.sgml : 20210805 20210805163155 ACCESSION NUMBER: 0001213900-21-040534 CONFORMED SUBMISSION TYPE: 10-Q PUBLIC DOCUMENT COUNT: 72 CONFORMED PERIOD OF REPORT: 20210630 FILED AS OF DATE: 20210805 DATE AS OF CHANGE: 20210805 FILER: COMPANY DATA: COMPANY CONFORMED NAME: GRID DYNAMICS HOLDINGS, INC. CENTRAL INDEX KEY: 0001743725 STANDARD INDUSTRIAL CLASSIFICATION: SERVICES-PREPACKAGED SOFTWARE [7372] IRS NUMBER: 830632724 STATE OF INCORPORATION: DE FISCAL YEAR END: 1231 FILING VALUES: FORM TYPE: 10-Q SEC ACT: 1934 Act SEC FILE NUMBER: 001-38685 FILM NUMBER: 211148854 BUSINESS ADDRESS: STREET 1: 7660 FAY AVENUE STREET 2: SUITE H, UNIT 339 CITY: LA JOLLA STATE: CA ZIP: 92037 BUSINESS PHONE: (619) 736-6855 MAIL ADDRESS: STREET 1: 7660 FAY AVENUE STREET 2: SUITE H, UNIT 339 CITY: LA JOLLA STATE: CA ZIP: 92037 FORMER COMPANY: FORMER CONFORMED NAME: ChaSerg Technology Acquisition Corp DATE OF NAME CHANGE: 20180615 10-Q 1 f10q0621_griddynamics.htm QUARTERLY REPORT

 

 

UNITED STATES

SECURITIES AND EXCHANGE COMMISSION

WASHINGTON, D.C. 20549

 

FORM 10-Q

 

(Mark One)

QUARTERLY REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934

 

For the quarterly period ended June 30, 2021

 

OR

 

TRANSITION REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934

 

For the transition period from                      to                    

 

Commission File Number: 001-38685

 

Grid Dynamics Holdings, Inc.

(Exact Name of Registrant as Specified in its Charter)

 

Delaware   83-0632724

(State or other jurisdiction

of incorporation or organization)

 

(I.R.S. Employer

Identification No.)

 

5000 Executive Parkway, Suite 520

San Ramon, CA 94583

(Address of principal executive offices)

 

(650) 523-5000

(Registrant’s telephone number, including area code)

 

Securities registered pursuant to Section 12(b) of the Act:

 

Title of each class   Trading Symbol(s)   Name of each exchange on which registered
Common Stock, par value $0.0001 per share   GDYN   The NASDAQ Stock Market LLC
Redeemable warrants, exercisable for shares of common stock at an exercise price of $11.50 per share   GDYNW   The NASDAQ Stock Market LLC

 

Indicate by check mark whether the registrant (1) has filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that the registrant was required to file such reports), and (2) has been subject to such filing requirements for the past 90 days. Yes ☒   No ☐

 

Indicate by check mark whether the registrant has submitted electronically, every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T (§ 232.405 of this chapter) during the preceding 12 months (or for such shorter period that the registrant was required to submit such files). Yes ☒   No ☐

 

Indicate by check mark whether the registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, a smaller reporting company, or an emerging growth company. See the definitions of “large accelerated filer,” “accelerated filer,” “smaller reporting company,” and “emerging growth company” in Rule 12b-2 of the Exchange Act.

 

Large accelerated filer Accelerated filer
Non-accelerated filer Smaller reporting company
Emerging growth company    

 

If an emerging growth company, indicate by check mark if the registrant has elected not to use the extended transition period for complying with any new or revised financial accounting standards provided pursuant to Section 13(a) of the Exchange Act. 

 

Indicate by check mark whether the registrant is a shell company (as defined in Rule 12b-2 of the Exchange Act). Yes ☐   No

 

As of August 2, 2021, there were 62,111,831 shares of registrant’s common Stock issued and outstanding.

 

 

 

 

 

 

TABLE OF CONTENTS

 

      Page
PART I. FINANCIAL INFORMATION    
Item 1. Financial Statements (unaudited)   1
  Condensed Consolidated Balance Sheets   1
  Condensed Consolidated Statements of Loss and Comprehensive Loss   2
  Condensed Consolidated Statements of Convertible Preferred Stock and Stockholders’ Equity   3
  Condensed Consolidated Statements of Cash Flows   4
  Notes to Condensed Consolidated Financial Statements   5
Item 2. Management’s Discussion and Analysis of Financial Condition and Results of Operations   21
Item 3. Quantitative and Qualitative Disclosures About Market Risk   34
Item 4. Controls and Procedures   36
       
PART II. OTHER INFORMATION    
Item 1. Legal Proceedings   37
Item 1A. Risk Factors   37
Item 2. Unregistered Sales of Equity Securities and Use of Proceeds   63
Item 3. Default Upon Senior Securities   63
Item 4. Mine Safety Disclosures   63
Item 5. Other Information   63
Item 6. Exhibits   64
       
SIGNATURES   65

 

i

 

 

SPECIAL NOTE REGARDING FORWARD-LOOKING STATEMENTS

 

This Quarterly Report on Form 10-Q contains forward-looking statements within the meaning of the federal securities laws, which statements involve substantial risks and uncertainties. Forward-looking statements generally relate to future events or our future financial or operating performance. Forward-looking statements include all statements that are not historical facts and can be identified by terms such as “anticipates,” “believes,” “could,” “seeks,” “estimates,” “expects,” “intends,” “may,” “plans,” “potential,” “predicts,” “projects,” “should,” “will,” “would,” or similar expressions and the negatives of those terms. Forward-looking statements contained in this Quarterly Report on Form 10-Q include, but are not limited to, statements about:

 

the evolution of the digital engineering and information technology services landscape facing our customers and prospects;

 

our ability to educate the market regarding the advantages of our digital transformation products;

 

our ability to maintain an adequate rate of revenue growth;

 

our future financial and operating results;

 

our business plan and our ability to effectively manage our growth and associated investments;

 

beliefs and objectives for future operations;

 

our ability to expand a leadership position in enterprise-level digital transformation;

 

our ability to attract and retain customers;

 

our ability to further penetrate our existing customer base;

 

our ability to maintain our competitive technological advantages against new entrants in our industry;

 

our ability to timely and effectively scale and adapt our existing technology;

 

our ability to innovate new products and services and bring them to market in a timely manner;

 

our ability to maintain, protect, and enhance our brand and intellectual property;

 

our ability to capitalize on changing market conditions;

 

our ability to develop strategic partnerships;

 

benefits associated with the use of our services;

 

our ability to expand internationally;

 

our ability to raise financing in the future;

 

operating expenses, including changes in research and development, sales and marketing, and general administrative expenses;

 

the effects of seasonal trends on our results of operations;

 

our ability to grow and manage growth profitably and retain our key employees;

 

the expected benefits and effects of strategic acquisitions of business, products or technologies;

 

ii

 

 

our ability to maintain the listing of our shares of common stock and our warrants on the NASDAQ;

 

costs related to being a public company;

 

changes in applicable laws or regulations;

 

the possibility that we have been and may continue to be adversely affected by other economic, business, and/or competitive factors, including the effects of the global COVID-19 pandemic; and

 

other risks and uncertainties indicated in this Quarterly Report on Form 10-Q, including those set forth in Item 1A, “Risk Factors.”

 

We caution you that the foregoing list may not contain all of the forward-looking statements made in this Quarterly Report on Form 10-Q.

 

You should not rely upon forward-looking statements as predictions of future events. We have based the forward-looking statements contained in this Quarterly Report on Form 10-Q primarily on our current expectations and projections about future events and trends that we believe may affect our business, financial condition, results of operations, and prospects. The outcome of the events described in these forward-looking statements is subject to risks, uncertainties, and other factors, including those described in in Item 1A, “Risk Factors” and elsewhere in this Quarterly Report on Form 10-Q. Moreover, new risks and uncertainties emerge from time to time and it is not possible for us to predict all risks and uncertainties that could have an impact on any forward-looking statements contained in this Quarterly Report on Form 10-Q. We cannot assure you that the results, events, and circumstances reflected in the forward-looking statements will be achieved or occur, and actual results, events, or circumstances could differ materially from those described in such forward-looking statements.

 

Neither we nor any other person assumes responsibility for the accuracy and completeness of any of these forward-looking statements. Moreover, the forward-looking statements made in this Quarterly Report on Form 10-Q relate only to events as of the date on which the statements are made. We undertake no obligation to update any forward-looking statements made in this Quarterly Report on Form 10-Q to reflect events or circumstances after the date of this Quarterly Report on Form 10-Q or to reflect new information or the occurrence of unanticipated events, except as required by law. We may not actually achieve the plans, intentions or expectations disclosed in our forward-looking statements and you should not place undue reliance on our forward-looking statements. Our forward-looking statements do not reflect the potential impact of any future acquisitions, mergers, dispositions, restructurings, joint ventures, partnerships, or investments we may make.

 

In addition, statements that “we believe” and similar statements reflect our beliefs and opinions on the relevant subject. These statements are based upon information available to us as of the date of this Quarterly Report on Form 10-Q, and while we believe such information forms a reasonable basis for such statements, such information may be limited or incomplete, and our statements should not be read to indicate that we have conducted an exhaustive inquiry into, or review of, all potentially available relevant information. These statements are inherently uncertain and investors are cautioned not to unduly rely upon these statements.

 

iii

 

 

PART I — FINANCIAL INFORMATION

 

Item 1. Financial Statements

 

GRID DYNAMICS HOLDINGS, INC.

UNAUDITED CONDENSED CONSOLIDATED BALANCE SHEETS

(In thousands, except share and per share data)

 

   As of 
   June 30,
2021
   December 31,
2020
 
Assets        
Current assets        
Cash and cash equivalents  $67,974   $112,745 
Accounts receivable, net of allowance of $205 and $418 as of June 30, 2021 and December 31, 2020, respectively   29,051    16,890 
Unbilled receivables   3,997    1,799 
Prepaid income taxes   1,050    821 
Prepaid expenses and other current assets   5,395    2,361 
Total current assets   107,467    134,616 
Property and equipment, net   5,160    4,095 
Intangible assets, net   20,342    8,125 
Deferred tax assets   4,865    5,609 
Goodwill   35,299    14,690 
Total assets  $173,133   $167,135 
           
Liabilities and equity          
Current liabilities          
Accounts payable  $2,489   $757 
Accrued liabilities   1,490    628 
Accrued compensation and benefits   11,099    7,479 
Accrued income taxes   1,830    1,248 
Other current liabilities   8,251    3,206 
Total current liabilities   25,159    13,318 
           
Deferred tax liabilities   4,962    2,093 
Total liabilities   30,121    15,411 
           
Stockholders’ equity (Note 9)          
Common stock, $0.0001 par value; 110,000,000 shares authorized; 54,728,586 and 50,878,780 issued and outstanding as of June 30, 2021 and December 31, 2020, respectively   5    5 
Additional paid-in capital   123,749    128,930 
Retained earnings   19,248    22,793 
Accumulated other comprehensive income/(loss)   10    (4)
Total stockholders’ equity   143,012    151,724 
Total liabilities and stockholders’ equity  $173,133   $167,135 

   

The accompanying notes are an integral part of these unaudited condensed consolidated financial statements.

 

1

 

 

GRID DYNAMICS HOLDINGS, INC.

UNAUDITED CONDENSED CONSOLIDATED STATEMENTS OF LOSS AND

COMPREHENSIVE LOSS

(In thousands, except per share data)

 

   Three Months Ended
June 30,
   Six Months Ended
June 30,
 
   2021   2020   2021   2020 
Revenue  $47,676   $22,368   $86,810   $54,825 
Cost of revenue   27,879    13,982    51,676    36,621 
Gross profit   19,797    8,386    35,134    18,204 
                     
Operating expenses                    
Engineering, research, and development   1,772    2,577    3,555    5,117 
Sales and marketing   2,837    1,637    5,869    5,206 
General and administrative   13,804    7,359    26,104    18,102 
Total operating expenses   18,413    11,573    35,528    28,425 
                     
Income/(loss) from operations   1,384    (3,187)   (394)   (10,221)
Other income/(expenses), net   (79)   208    (1,129)   (36)
Income/(loss) before income taxes   1,305    (2,979)   (1,523)   (10,257)
Provision/(benefit) for income taxes   2,788    (813)   2,022    (3,495)
Net loss  $(1,483)  $(2,166)  $(3,545)  $(6,762)
                     
Foreign currency translation adjustments, net of tax   (35)   
    14    
 
Comprehensive loss  $(1,518)  $(2,166)  $(3,531)  $(6,762)
                     
Loss per share                    
Basic  $(0.03)  $(0.04)  $(0.07)  $(0.17)
Diluted  $(0.03)  $(0.04)  $(0.07)  $(0.17)
                     
Weighted average shares outstanding                    
Basic   54,431    49,626    53,044    39,731 
Diluted   54,431    49,626    53,044    39,731 

  

The accompanying notes are an integral part of these unaudited condensed consolidated financial statements.

 

2

 

 

GRID DYNAMICS HOLDINGS, INC.

UNAUDITED CONSOLIDATED STATEMENT OF CONVERTIBLE PREFERRED STOCK AND STOCKHOLDERS’ EQUITY

(In thousands)

  

                   Accumulated     
   Convertible       Additional       other   Total 
   Preferred Stock   Common Stock   paid-in   Retained   comprehensive   stockholders’ 
   Shares   Amount   Shares   Amount   capital   earnings   income/(loss)   equity 
Balance at December 31, 2020   
   $
    50,879   $5   $128,930   $22,793   $(4)  $151,724 
Net loss       
        
    
    (2,062)   
    (2,062)
Stock-based compensation       
        
    5,671    
    
    5,671 
Exchange of warrants into common stock   
    
    2,221    
    
    
    
    
 
Exercise of stock options   
    
    41    
    162    
    
    162 
Issuance of shares and payments of tax obligations resulted from net share settlement of vested stock awards   
    
    1,030    
    (15,297)   
    
    (15,297)
Foreign currency translation adjustment, net of tax       
        
    
    
    49    49 
Balance at March 31, 2021   
   $
    54,171   $5   $119,466   $20,731   $45   $140,247 
Net loss       
        
    
    (1,483)   
    (1,483)
Stock-based compensation       
        
    6,675    
    
    6,675 
Exchange of warrants into common stock       
    271    
    918    
    
    918 
Exercise of stock options       
    138    
    254    
    
    254 
Issuance of shares and payments of tax obligations resulted from net share settlement of vested stock awards       
    149    
    (3,564)   
    
    (3,564)
Foreign currency translation adjustment, net of tax       
        
    
    
    (35)   (35)
Balance at June 30, 2021      $
    54,729   $5   $123,749   $19,248   $10   $143,012 

  

                   Accumulated     
   Convertible       Additional       other   Total 
   Preferred Stock   Common Stock   paid-in   Retained   comprehensive   stockholders’ 
   Shares   Amount   Shares   Amount   capital   earnings   income/(loss)   equity 
Balance at December 31, 2019   622   $9,187    12,847   $8,117   $10,535   $35,392   $
   $54,044 
Retroactive application of recapitalization (Note 3)   426    
    8,797    (8,115)   8,115    
    
    
 
Adjusted balance beginning of period   1,048   $9,187    21,644   $2   $18,650   $35,392   $
   $54,044 
Net loss       
        
    
    (4,596)   
    (4,596)
Stock-based compensation       
        
    4,804    
    
    4,804 
Conversion of preferred stock   (1,048)   (9,187)   1,048    1    9,187    
    
    9,188 
Consideration paid to Grid shareholders       
        
    (123,865)   
    
    (123,865)
ChaSerg shares recapitalized, net of transaction costs of $4,142       
    28,088    2    204,323    
    
    204,325 
Conversion of promissory note to common stock   
    
    53    
    530    
    
    530 
Balance at March 31, 2020   
   $
    50,833   $5   $113,629   $30,796   $
   $144,430 
Net loss       
        
    
    (2,166)   
    (2,166)
Stock-based compensation       
        
    3,654    
    
    3,654 
Exercise of stock options       
    6    
    59    
    
    59 
Balance at June 30, 2020      $
    50,839   $5   $117,342   $28,630   $
   $145,977 

   

The accompanying notes are an integral part of these unaudited condensed consolidated financial statements.

 

3

 

 

GRID DYNAMICS HOLDINGS, INC.

UNAUDITED CONDENSED CONSOLIDATED STATEMENT OF CASH FLOWS

(In thousands)

 

   For the six months ended
June 30,
 
   2021   2020 
Cash flows from operating activities        
Net loss  $(3,545)  $(6,762)
Adjustments to reconcile net loss to net cash provided by/(used in) operating activities:          
Depreciation and amortization   2,100    1,234 
Bad debt expense   (65)   781 
Deferred income taxes   1,115    (4,274)
Stock-based compensation   12,346    8,458 
Change in fair value of warrants   839    
 
Changes in assets and liabilities:          
Accounts receivable   (8,779)   (1,111)
Unbilled receivables   (371)   4,058 
Prepaid income taxes   (229)   (611)
Prepaid expenses and other current assets   (1,666)   (1,961)
Accounts payable   1,393    51 
Accrued liabilities   358    (519)
Accrued compensation and benefits   1,410    (99)
Accrued income taxes   376    (34)
Other current liabilities   1,368    (132)
Net cash provided by/(used in) operating activities   6,650    (921)
           
Cash flows from investing activities          
Purchase of property and equipment   (1,940)   (1,110)
Acquisition of Companies, net of cash acquired (Note 4)   (30,585)   
 
Net cash used in investing activities   (32,525)   (1,110)
           
Cash flows from financing activities          
Cash received from ChaSerg   
    208,997 
GDI shares redeemed for cash   
    (123,865)
Equity issuance costs   (465)   (2,264)
Payments of tax obligations resulted from net share settlement of vested stock awards   (18,861)   
 
Proceeds from exercises of stock options   416    59 
Net cash (used in)/provided by financing activities   (18,910)   82,927 
           
Effect of exchange rate changes on cash and cash equivalents   14    
 
           
Net (decrease)/increase in cash and cash equivalents   (44,771)   80,896 
Cash and cash equivalents, beginning of period   112,745    42,189 
Cash and cash equivalents, end of period  $67,974   $123,085 
           
Supplemental disclosure of cash flow information:          
Cash paid for income taxes  $1,150   $1,144 
           
Supplemental disclosure of non-cash activities          
Conversion of preferred stock to common stock  $
   $9,187 
Conversion of warrants  $918    
 
Fair value of contingent consideration issued for acquisition of business  $3,400    
 

  

The accompanying notes are an integral part of these unaudited condensed consolidated financial statements.

 

4

 

 

GRID DYNAMICS HOLDINGS, INC.

NOTES TO THE UNAUDITED CONDENSED CONSOLIDATED FINANCIAL STATEMENTS 

(In thousands, except per share data)

 

Note 1 — Background and nature of operations

 

Grid Dynamics Holdings, Inc. (the “Company” or “GDH”) provides enterprise-level digital transformation in the areas of search, analytics, and release automation to Fortune 1000 companies. The Company’s headquarters and principal place of business is in San Ramon, California.

 

The Company was originally incorporated in Delaware on May 21, 2018 as a special purpose acquisition company under the name ChaSerg Technology Acquisition Corp. (“ChaSerg”) for the purpose of effecting a merger, capital stock exchange, asset acquisition, stock purchase, reorganization or similar business combination involving ChaSerg and one or more businesses. On March 5, 2020 (the “Closing”), the Company consummated its business combination with Grid Dynamics International, Inc. (“GDI”) pursuant to the Agreement and Plan of Merger (the “Merger Agreement”), dated November 13, 2019 (the “Business Combination”). In connection with the Closing, the Company changed its name from ChaSerg Technology Acquisition Corp. to Grid Dynamics Holdings, Inc. The Company’s common stock is now listed on the NASDAQ under the symbol “GDYN” and warrants to purchase the common stock at an exercise price of $11.50 per share are listed on the NASDAQ under the symbol “GDYNW.”

 

Unless the context otherwise requires, the “Company” refers to the combined company and its subsidiaries following the Business Combination, “ChaSerg” refers to the Company prior to the Closing, and “GDI” refers to GDI prior to the Closing. Refer to Note 3 for further discussion of the Business Combination.

 

Note 2 — Basis of presentation and summary of significant accounting policies

 

The following is a summary of the significant accounting policies consistently applied in the preparation of the accompanying consolidated financial statements.

 

Unaudited Interim Financial Statements

 

The accompanying unaudited condensed consolidated financial statements have been prepared in accordance with generally accepted accounting principles in the United States (“U.S. GAAP”) for interim financial information and in accordance with the rules and regulations of the Securities and Exchange Commission (“SEC”). Accordingly, they do not include all of the information and footnotes required by U.S. GAAP for complete financial statements. The unaudited condensed consolidated financial statements reflect all normal and recurring adjustments that are, in the opinion of the Company’s management, necessary for the fair presentation of the results of operations for the interim periods. Operating results for the three and six months ended June 30, 2021 are not necessarily indicative of the results that may be expected for the year ending December 31, 2021. These interim financial statements should be read in conjunction with GDH’s audited financial statements for the year ended December 31, 2020 included in the Company’s annual report on Form 10-K that the Company filed with the SEC on March 5, 2021.

 

Basis of presentation

 

The Business Combination was accounted for as a reverse recapitalization in accordance with U.S. GAAP. Although ChaSerg was the legal acquirer, for accounting purposes, GDI was deemed to be the accounting acquirer. GDI was determined to be the accounting acquirer based on evaluation of the following facts and circumstances:

  

GDI holds executive management roles for the Company and those individuals are responsible for the day-to-day operations;

 

GDI’s former owners have the largest minority voting rights in the Company;

 

From a revenue and business operation standpoint, GDI was the larger entity in terms of relative size;

 

GDI’s San Ramon, CA headquarters are the headquarters of the Company; and

 

The intended strategy of the Company will continue GDI’s strategy of driving enterprise-level digital transformation in the Fortune 1000 companies.

 

5

 

 

In conjunction with the Business Combination, outstanding shares of GDI were converted into common stock of the Company, par value $0.0001 per share, shown as a recapitalization, and the net assets of ChaSerg were acquired at historical cost, with no goodwill or other intangible assets recorded. GDI was deemed to be the predecessor of the Company, and the consolidated assets and liabilities and results of operations prior to the Closing (for the years ended December 31, 2019 and 2018 and the period from January 1, 2020 to March 5, 2020) are those of GDI. ChaSerg’s assets and liabilities, which include net cash from the trust of $85.1 million, and results of operations were consolidated with GDI beginning on the Closing.

 

In accordance with guidance applicable to these circumstances, the equity structure has been restated in all comparative periods up to the Closing Date, to reflect the number of shares of the Company’s common stock, $0.0001 par value per share, issued to GDI shareholders in connection with the recapitalization transaction. As such, the shares and corresponding capital amounts and earnings per share related to GDI preferred and common stock prior to the Business Combination have been retroactively restated as shares reflecting the exchange ratio established in the Business Combination.

 

Principles of consolidation

 

The accompanying condensed financial statements include the accounts of the Company and all of its subsidiaries that are directly or indirectly owned or controlled. Intercompany transactions and balances have been eliminated upon consolidation.

 

Use of estimates

 

The preparation of the consolidated condensed financial statements in accordance with U.S. GAAP requires the Company to make estimates and assumptions that affect the amounts reported in the condensed consolidated financial statements and accompanying notes. Actual results could differ from these estimates and such differences could be material. Significant estimates include allowances for receivables, calculation of accrued liabilities, capitalization of internally developed software, stock-based compensation, contingent consideration payable, determination of fair value, useful lives and recoverability of intangible assets and goodwill, determination of provision for income taxes and uncertain tax positions.

 

Certain significant risks and uncertainties

 

The Company is subject to risks, including but not limited to customer concentration, concentrations of credit and foreign currency risks. Refer to the section below for additional information. Additionally, the Company has been impacted by the recent coronavirus (“COVID-19”) pandemic. The global pandemic of COVID-19 has negatively affected the U.S. and global economy, disrupted global supply chains, resulted in significant travel and transport restrictions, including mandated closures and orders to “shelter-in-place,” and created significant disruption of the financial market. In 2020 the COVID-19 pandemic impacted the Company’s revenues, and the Company’s business continues to be exposed to risks and uncertainties related to the pandemic. The impact of the COVID-19 pandemic had been more pronounced with the Company’s retail customers, which depended on keeping their stores open. Additionally, in situations where the Company’s customers encountered financial difficulties, there was a risk associated with the Company’s inability to collect money from customers. In 2020 the Company took several actions to deal with the COVID-19 pandemic. These included enabling its employees to work from home, company-wide salary and compensation cuts, hiring freezes, and suspending all non-essential travel. Some of these actions such as working from home as well as suspending all non-essential travel continues to be currently in place. As the Company's business recovered in 2021, the Company discontinued some of the cost saving measures such as compensation cuts and hiring freezes. The Company now is facing the opposite challenges including employee retention and shortage of talent on the job market. The ultimate impact and the extent to which the COVID-19 pandemic will continue to affect the business, results of operation and financial condition is difficult to predict and depends on numerous evolving factors outside of the Company’s control including: the duration and scope of the pandemic, including from renewed waves and new variants; government, social, business and other actions that have been and will be taken in response to the pandemic; and the effect of the pandemic on short and long-term general economic conditions.

 

Concentrations of credit risk and significant customers

 

The Company records its accounts receivable and unbilled receivables at their face amounts less allowances. Accounts receivable and unbilled receivables are generally dispersed across the Company’s customers in proportion to their revenue. Three customers individually exceeded 10% of the Company’s accounts receivable balance as of June 30, 2021 and December 31, 2020. One customer individually exceeded 10% of the unbilled receivables as of June 30, 2021 and three customers individually exceeded 10% of the unbilled receivables as of December 31, 2020. Two and three customers individually accounted for greater than 10% of the sales for the three months ended June 30, 2021 and 2020, respectively. Two and three customers individually accounted for greater than 10% of the sales for the six months ended June 30, 2021 and 2020, respectively.

 

6

 

 

Cash and cash equivalents

 

The Company considers cash equivalents to be highly liquid investments with original maturities of three months or less from the date of purchase. Cash equivalents are stated at cost, which approximates fair value. At times, cash deposits with banks may exceed federally insured limits.

 

Accounts receivable and allowance for doubtful accounts

 

Accounts receivable, less allowance for doubtful accounts, reflect the net realizable value of receivables and approximate fair value. The Company maintains an allowance against accounts receivable for the estimated probable losses on uncollectible accounts. The allowance is based upon historical loss experience, current economic conditions within the industries the Company serves as well as determination of the specific risk related to certain customers. Accounts receivable are charged off against the reserve when, in management’s estimation, further collection efforts would not result in a reasonable likelihood of receipt. The allowance for doubtful accounts balance decreased to $0.2 million as of June 30, 2021 compared to $0.4 million as of December 31, 2020.

 

   As of 
   June 30,
2021
   December 31,
2020
 
   (in thousands) 
Trade accounts receivable  $29,256   $17,308 
Allowance for doubtful accounts   (205)   (418)
Total trade accounts receivable, net  $29,051   $16,890 

 

Unbilled receivables

 

Generally, the Company will not bill customers until the services have been completed. From time-to-time, a service period may overlap with a period-end and the unbilled receivables represent amounts for services performed through period-end, but not yet billed. The unbilled receivable represents the amount expected to be billed and collected for services performed through period-end in accordance with contract terms. The unbilled receivables balances were $4.0 million and $1.8 million as of June 30, 2021 and December 31, 2020, respectively.

 

Goodwill

 

Goodwill represents the excess of purchase price over the fair value of the net assets of businesses acquired. On an annual basis, the Company makes a qualitative assessment to determine if it is more likely than not that the fair value of the reporting unit is less than its carrying amount, including goodwill. If the Company determines that the fair value of the reporting unit is less than its carrying amount, it will perform a quantitative analysis; otherwise, no further evaluation is necessary. For the quantitative impairment assessment, the Company compares the fair value of the reporting unit to its carrying value, including goodwill. The Company uses the discounted cash flow method of the income approach and market approach to determine the fair value of the reporting unit. If the fair value of the reporting unit exceeds the carrying value of the net assets assigned to that unit, goodwill is not impaired, and no further testing is performed. If the carrying value of the net assets assigned to the reporting unit exceeds the fair value of the reporting unit, then the Company will recognize a loss equal to the excess, limited to the total amount of goodwill allocated to that reporting unit. Impairments, if any, are charged directly to earnings. As of June 30, 2021, the Company has a single reporting unit and determined there were no indicators of impairment.

 

Intangible assets

 

Finite-lived intangible assets are stated at cost less accumulated amortization. Amortization is computed on the straight-line basis over the asset’s useful lives ranging between 2 and 12 years. Intangible assets are evaluated for impairment whenever events or changes in circumstances indicate that the carrying value of the assets may not be fully recoverable. If facts and circumstances indicate that the carrying value might not be recoverable, projected undiscounted net cash flows associated with the related asset or group of assets over their estimated remaining useful lives is compared against their respective carrying amounts. If an asset is found to be impaired, the impairment charge will be measured as the amount by which the carrying amount of an entity exceeds its fair value. As of June 30, 2021, the Company determined there were no indicators of impairment.

 

7

 

 

Revenue recognition

 

The Company accounts for a contract with a customer when 1) the parties to the contract have approved the contract and are committed to performing their respective obligations, 2) the contract identifies each party’s rights regarding the goods or services to be transferred, 3) the contract identifies the payment terms for the goods or services to be transferred, 4) the contract has commercial substance, and 5) collection of substantially all consideration pursuant to the contract is probable.

 

The Company derives its revenue from offering a suite of digital engineering and information technology (“IT”) consulting services, including digital transformation strategy, emerging technology, lean labs and legacy system replatforming. For most contracts, the Company uses master agreements to govern the overall relevant terms and conditions of the business arrangement between the Company and its customers. When the Company and a customer enter into a Master Services Agreement (“MSA”), purchases are generally made by the customer via a statement of work (“SOW”) which explicitly references the MSA and specifies the services to be delivered. Fees for these contracts may be in the form of time-and-materials or fixed-fee arrangements. The majority of the Company’s revenues are generated under time-and-material contracts which are billed using hourly rates to determine the amounts to be charged directly to the customer. Fees are billed and collected as stipulated in the contract, and revenue is recognized as services are performed. If there is an uncertainty about the receipt of payment for the services, revenue is recognized to the extent that a significant reversal of revenue would not be probable.

 

Consulting services revenue is a single performance obligation earned through a series of distinct daily services and may include services such as those described above. The Company recognizes revenue for services over time as the customer simultaneously receives and consumes the benefits as the Company performs IT consulting services. For revenue contracts, the customer derives value from the Company providing daily consulting services, and the value derived corresponds to the labor hours expended. Therefore, the Company measures the progress and recognizes revenue using an effort-based input method. For fixed fee contracts, the Company recognizes revenue as the work is performed, the monthly calculation of which is based upon actual labor hours incurred and level of effort expended throughout the duration of the contract.

 

For time-and-material contracts, the Company applies the variable consideration allocation exception. Therefore, instead of allocating the variable consideration to the entire performance obligation, the Company determined the variable consideration should be allocated to each distinct service to which the variable consideration relates, which is providing the customer daily consulting services. The Company also offers volume discounts or early settlement discounts. Volume discounts apply once the customer reaches certain contractual spend thresholds. Early settlement discounts are issued contingent upon the timing of the payment from the customer. If the consideration promised in a contract includes a variable amount, the Company only includes estimated amounts of consideration in the transaction price to the extent it is probable that a significant reversal of cumulative revenue recognized will not occur when the uncertainty associated with the variable consideration is resolved. These estimates may require management to make subjective judgments and to make estimates about the effects of matters inherently uncertain. The determination of whether to constrain consideration in the transaction price are based on information (historical, current and forecasted) that is reasonably available to the Company, taking into consideration the type of customer, the type of transaction and the specific facts and circumstances of each arrangement. Although the Company believes that its approach in developing estimates and its reliance on certain judgments and underlying inputs is reasonable, actual results may differ from management’s estimates, judgments and assumptions. These estimates have historically not been material to the consolidated financial statements.

 

Remaining performance obligation

 

ASC 606 requires that the Company disclose the aggregate amount of transaction price that is allocated to performance obligations that have not yet been satisfied as of June 30, 2021. This disclosure is not required for:

 

1)contracts with an original duration of one year or less, including contracts that can be terminated for convenience without a substantive penalty,
   
2)contracts for which the Company recognizes revenues based on the right to invoice for services performed,
   
3)variable consideration allocated entirely to a wholly unsatisfied performance obligation or to a wholly unsatisfied promise to transfer a distinct good or service that forms part of a single performance obligation in accordance with ASC 606-10-25-14(b), for which the criteria in ASC 606-10-32-40 have been met, or
   
4)variable consideration in the form of a sales-based or usage-based royalty promised in exchange for a license of intellectual property.

 

All of the Company’s contracts met one or more of these exemptions as of June 30, 2021.

 

8

 

 

Stock-based compensation expense

 

Stock-based compensation expense is measured based on the grant-date fair value of the share-based awards. Forfeitures are recognized as incurred. The Company estimates stock options grant-date fair value using the Black-Scholes-Merton option pricing model. The model requires management to make a number of key assumptions including expected volatility, expected term, risk-free interest rate, and expected dividends. The Company evaluates the assumptions used to value its share-based awards on each grant date. The fair market value of Grid Dynamics stock is determined based on the closing price on NASDAQ on the measurement date. The Company amortizes the grant-date fair value of all share-based compensation awards over the employee’s requisite service period for the entire award on a straight-line basis, which is generally the vesting period. For an award with graded vesting that is subject only to a service condition (e.g., time-based vesting), the Company uses the straight-line attribution method under ASC 718 under which they recognize compensation cost on a straight-line basis over the total requisite service period for the entire award (i.e., over the requisite service period of the last separately-vesting tranche of the award). Additionally, the Company applies the “floor” concept so that the amount of compensation cost that is recognized as of any date is at least equal to the grant-date fair value of the vested portion of the award on that date. That is, if the straight-line expense recognized to date is less than the grant date fair value of the award that is legally vested at that date, the company will increase its recognized expense to at least equal the fair value of the vested amount. Refer to Note 10 — Stock-based compensation for additional information.

 

Income taxes

 

The Company follows the asset and liability method of accounting for income taxes. Under this method, deferred income taxes are recognized for the tax consequences of temporary differences between the financial statement carrying amounts and the tax basis of the assets and liabilities. The determination of the provision for income taxes requires significant judgment, the use of estimates and the interpretation and application of complex tax laws. The provision for income taxes reflects a combination of income earned and taxed in the various U.S. federal and state, international and other jurisdictions. Jurisdictional tax law changes, increases or decreases in permanent differences between book and tax items, accruals or adjustments of accruals for tax contingencies or valuation allowances, and the change in the mix of earnings from these taxing jurisdictions all affect the overall effective tax rate.

 

In assessing the realizability of deferred tax assets, management considers whether it is more likely than not that some portion, or all, of the deferred tax assets will not be realized. Management considers all available evidence, both positive and negative, in determining whether a valuation allowance is required. Such evidence includes prior earnings history, the scheduled reversal of deferred tax liabilities, projected future taxable income, carryback and carryforward periods of tax attributes, and tax planning strategies that could potentially enhance the likelihood of realization of a deferred tax asset in making this assessment. The weight given to the positive and negative evidence is commensurate with the extent to which the evidence may be objectively verified.

 

The Company evaluates for uncertain tax positions at each balance sheet date. When it is more likely than not that a position will be sustained upon examination by a tax authority that has full knowledge of all relevant information, the Company measures the amount of tax benefit from the position and records the largest amount of tax benefit that is greater than 50% likely of being realized after settlement with a tax authority. The Company’s policy for interest and/or penalties related to underpayments of income taxes is to include interest and penalties in income tax expense.

 

Recently adopted accounting pronouncements

 

Changes to U.S. GAAP are established by the Financial Accounting Standards Board (the “FASB”), in the form of Accounting Standards Updates (“ASUs”), to the FASB’s ASC. The Company has elected not to opt out of the extended transition period and thus when a standard is issued or revised and it has different application dates for public or private companies, the Company, as an emerging growth company, can adopt the new or revised standard at the time private companies adopt the new or revised standard.

 

In December 2019, the FASB issued Accounting Standard Update No. 2019-12, Income Taxes (Topic 740): Simplifying the Accounting for Income Taxes (ASU 2019-12), which simplifies the accounting for income taxes by removing certain exceptions to the general principles and also simplification of areas such as franchise taxes, step-up in tax basis goodwill, separate entity financial statements and interim recognition of enactment of tax laws or rate changes. The update is effective for fiscal years and interim periods within those fiscal years beginning after December 15, 2020, and early adoption is permitted. The Company adopted the standard as of January 1, 2021 and has determined that the adoption of this guidance did not have a material effect on the consolidated financial statements.

 

9

 

 

Recently issued accounting pronouncements

 

The Company considered the applicability and impact of all ASUs. ASUs not listed below were assessed and determined to be either not applicable or are expected to have minimal impact on the consolidated financial statements.

 

In February 2016, the FASB issued ASU No. 2016-2, Leases. ASU 2016-2 requires lessees to put most leases on their balance sheet while recognizing expense in a manner similar to existing accounting. ASU 2016-2 states that a lessee would recognize a lease liability for the obligation to make lease payments and a right-to-use asset for the right to use the underlying asset for the lease term. The standard allows for two methods of adoption to recognize and measure leases: retrospectively to each prior period presented in the financial statements with the cumulative effect of initially applying the guidance recognized at the beginning of the earliest comparative period presented or retrospectively at the beginning of the period of adoption with the cumulative effect of initially applying the guidance recognized at the beginning of the period in which the guidance is first applied. Both adoption methods include a number of optional practical expedients that entities may elect to apply. The Company will adopt the standard retrospectively at the beginning of the period of adoption with the cumulative effect of initially applying the guidance recognized at the beginning of the period in which the guidance is first applied. The new accounting guidance is effective for the Company for fiscal periods beginning after December 15, 2021. The Company expects the impact to be material but has not yet determined the impact that the adoption of this guidance will have on the consolidated financial statements.

 

In June 2016, the FASB issued ASU 2016-13, Financial Instruments-Credit Losses (Topic 326) — Measurement of Credit Losses on Financial Instruments. Topic 326 was subsequently amended by ASU 2019-4, Codification Improvements to Topic 326, Financial Instruments — Credit Losses, ASU 2019-5, Financial Instruments — Credit Losses (Topic 326): Targeted Transition Relief, and clarified the guidance with the release of ASU 2020-2 Financial Instruments—Credit Losses (Topic 326) and Leases (Topic 842). These ASUs replace the current incurred loss impairment methodology with a methodology that reflects expected credit losses measured at amortized cost and certain other instruments, including loans, held-to-maturity debt securities, net investments in leases, and off-balance sheet credit exposures. The update is effective for fiscal years beginning after December 15, 2022, and interim periods with fiscal years after December 15, 2022. The Company has not yet determined the impact that the adoption of this guidance will have on the consolidated financial statements.

 

In March 2020, FASB issued ASU No. 2020-3, Codification to Financial Instruments. This ASU improves and clarifies various financial instruments topics, including the current expected credit losses standard issued in 2016. The ASU includes seven different issues that describe the areas of improvement and the related amendments to U.S. GAAP, intended to make the standards easier to understand and apply by eliminating inconsistencies and providing clarifications. The amendments related to Issue 1, Issue 2, Issue 3, Issue 4, and Issue 5 were effective upon issuance of this update. The new guidance did not have a material impact on the consolidated financial statements. The amendments related to Issue 6 and Issue 7 are effective for the Company the earlier of January 1, 2023 or when the Company adopts ASU 2016-13, if early adopted. The Company is currently evaluating the impact these topics will have on the consolidated financial statements.

 

Note 3 – Business combination

 

On March 5, 2020, ChaSerg consummated its business combination with GDI pursuant to the Merger Agreement. Immediately following the Business Combination, there were 50.8 million shares of common stock with a par value of $0.0001, and 11.3 million warrants outstanding.

 

GDI began operations in September 2006 to provide next-generation e-commerce platform solutions in the areas of search, analytics, and release automation to Fortune 1000 companies. Under ASC 805, Business Combinations, GDI was deemed the accounting acquirer, and the Business Combination was accounted for as a reverse recapitalization, with no goodwill or other intangible assets recorded in accordance with U.S. GAAP. ChaSerg was treated as the “acquired” company for financial reporting purposes. Accordingly, for accounting purposes, the Business Combination was treated as the equivalent of GDI issuing stock for the net assets of ChaSerg, accompanied by a recapitalization. The net assets of ChaSerg were stated at historical cost, with no goodwill or other intangible assets recorded. Reported shares and earnings per share available to holders of the Company’s common stock, prior to the Business Combination, have been retroactively restated as shares reflecting the exchange ratio established in the Business Combination (approximately 1.685 GDH shares to 1.0 GDI share).

 

10

 

 

The aggregate consideration for the Business Combination was $396.5 million, consisting of $130.0 million in cash and 27.0 million shares of ChaSerg’s common stock valued at $10.19 per share, less a post-Closing share adjustment amount of 0.9 million shares which were placed in escrow post-Closing. The shares transferred at Closing included 4.3 million options to purchase the Company’s shares that were vested, outstanding and unexercised, which were determined using 1.7 million vested options at Closing converted at an exchange ratio of approximately 2.48. Additionally, 0.4 million options to purchase the Company’s common stock that were unvested, outstanding and unexercised were assumed by the Company, which were determined using 0.1 million unvested options at Closing converted at an exchange ratio of approximately 2.48. The following represents the aggregate consideration for the Business Combination (in thousands except for per share amount):

 

Shares transferred at Closing   27,006 
Less: Post-Closing share adjustment   (857)
Total shares transferred at Closing   26,149 
Value per share  $10.19 
Total share consideration  $266,459 
Plus: Cash transferred to GDI stockholders   130,000 
Closing merger consideration  $396,459 

 

In connection with the Closing, 0.1 million shares of common stock were redeemed at a price per share of approximately $10.21.

 

In connection with the Business Combination, the Company incurred direct and incremental costs of approximately $4.7 million, consisting of legal and professional fees, of which $4.1 million were related to equity issuance costs and recorded to additional paid-in capital as a reduction of proceeds and $0.6 million were recorded to general and administrative expenses.

 

In connection with the Business Combination, all outstanding retention bonus obligations from a 2017 acquisition totaling $3.4 million were accelerated and paid in full to Grid Dynamics’ personnel immediately prior to the Closing and were recorded in cost of revenue and operating expenses in the consolidated financial statements.

 

Note 4 — Acquisition of Tacit Knowledge Inc.

 

On May 29, 2021, the Company acquired 100% of the equity interest of the global consultancy company Tacit Knowledge Inc. (“Tacit”). Founded in 2002, Tacit is a global provider of digital commerce solutions, serving customers across the UK, North America, Continental Europe, and Asia. The acquisition of Tacit added approximately 180 employees to the Company's headcount. The acquisition will augment the Company's service offerings and will strengthen its competitive position within the market. Additionally, the acquisition will also enable the Company to leverage near-shore capabilities with Tacit’s presence in Mexico.

 

The total purchase consideration is $37.0 million and included cash consideration of $33.6 million paid at closing and fair value of the contingent consideration at the date of the acquisition of $3.4 million. The maximum amount of potential contingent cash consideration is $5.0 million. The contingent consideration is payable based on revenue and EBITDA metrics to be achieved by Tacit within 12 months. The Company recorded a liability for the contingent consideration amount based on the Company’s best estimate of the fair value of the expected payout.

 

The primary areas of the preliminary purchase price allocations that have not been finalized relate to the finalization of working capital, the valuation and useful lives of intangible assets, the valuation of the earn-out, and the deferred tax liabilities. Upon completion of the fair value assessment, the Company anticipates that the ultimate intangible assets may differ from the preliminary assessment outlined above. Any change in the finalization of working capital will reduce or increase the cash consideration. Any changes to the preliminary estimates of the fair value of the and intangible assets or earn-out will be adjusted to goodwill during the measurement period, with subsequent changes in estimates recorded in the Company’s Consolidated Statements of Loss and Comprehensive Loss.

 

11

 

 

The purchase price of Tacit has been preliminarily allocated to the assets acquired and liabilities assumed based on their estimated respective fair values as of May 29, 2021 with the excess purchase price allocated to goodwill. The Company’s preliminary allocation of the purchase price to the net tangible and intangible assets acquired and liabilities assumed is as follows (in thousands):

 

Fair market values    
Current assets  $9,145 
Property, plant and equipment   466 
Customer relationships   11,737 
Tradename   1,176 
Goodwill   20,603 
Total assets acquired  $43,127 
      
Accounts payable and accrued expenses  $(3,675)
Deferred taxes   (2,500)
Total liabilities assumed  $(6,175)
Purchase price allocation  $36,952 

 

The preliminary fair value of identifiable intangible assets as of the date of acquisition is as follows:

 

(In thousands)  Fair Value   Useful Life  Amortization
method
Customer relationships  $11,737   12 years  Straight-line
Tacit tradename   1,176   4 years  Accelerated
Total identified intangible assets  $12,913       

 

As a result of the acquisition, the Company recognized a total of $20.6 million of goodwill. The purchase price was assigned to assets acquired and liabilities assumed based on their estimated fair values as of the date of acquisition, and any excess was allocated to goodwill, as shown in the table above. Goodwill represents the value the Company expects to achieve through the implementation of operational synergies and growth opportunities as the Company expands its global reach. The goodwill is not deductible for income tax purposes. 

 

The Company used various valuation techniques to determine fair value, with the primary techniques being discounted cash flow analysis, relief-from-royalty, and multi-period excess earnings valuation approaches, which use significant unobservable inputs, or Level 3 inputs, as defined by the fair value hierarchy. Under these valuation approaches, the Company is required to make estimates and assumptions about sales, operating margins, growth and attrition rates, royalty rates and discount rates based on budgets, business projections, anticipated future cash flows, and marketplace data.

 

The acquisition of Tacit was accounted for using the acquisition method of accounting, and consequently, the results of operations for Tacit are reported in the consolidated financial statements from the date of acquisition. Tacit revenue was approximately $2.5 million and net income was approximately $0.5 million from the date of acquisition to June 30, 2021.

 

The following unaudited pro forma information presents the combined results of operations as if the acquisition of Tacit had occurred at the beginning of 2020. Tacit pre-acquisition results have been added to the Company’s historical results. The pro forma results contained in the table below include adjustment for amortization of acquired intangibles. Any potential cost savings or other operational efficiencies that could result from the acquisition are not included in these pro forma results. 

 

The 2021 pro forma results include transaction related expenses incurred by the Company prior to the acquisition of $0.6 million including items such as consultant fees and other deal costs.

 

12

 

 

These pro forma results have been prepared for comparative purposes only and are not necessarily indicative of the results of operations as they would have been had the acquisitions occurred on the assumed dates, nor are they necessarily an indication of future operating results.

 

   Six Months Ended
June 30,
 
(Unaudited)  2021   2020 
Revenue  $94,842   $70,422 
Net loss  $(1,755)  $(6,629)
Loss per share  $(0.03)  $(0.17)

 

Note 5 — Property and equipment, net

 

Property and equipment consist of the following (in thousands):

 

  

Estimated

   As of 
   Useful Life
(In Years)
   June 30,
2021
   December 31,
2020
 
Computers and equipment   2-5   $8,538   $6,447 
Machinery and automobiles   5    601    551 
Furniture and fixtures   3-7    1,051    643 
Software   5    513    554 
Leasehold improvements   3-12    460    236 
         11,163    8,430 
Less: Accumulated depreciation and amortization        (7,405)   (5,622)
         3,758    2,809 
                
Capitalized software development costs   2-3    4,216    3,531 
Less: Accumulated amortization        (2,814)   (2,245)
         1,402    1,287 
Property and equipment, net       $5,160   $4,095 

 

Note 6 — Intangible assets, net

 

Intangible assets consist of the following (in thousands):

 

   Estimated   As of 
   Useful Life
(In Years)
   June 30,
2021
   December 31,
2020
 
Customer relationships   8-12   $15,971   $4,234 
Tradename   4-10    4,676    3,500 
Non-compete agreements   2    440    440 
         21,087    8,174 
Less: Accumulated amortization        (745)   (49)
Intangible assets, net       $20,342   $8,125 

 

13

 

 

Note 7 — Other current liabilities

 

The components of other current liabilities were as follows (in thousands):

 

   As of 
   June 30,
2021
   December 31,
2020
 
Customer deposits  $767   $731 
Other liabilities   2,137    528 
Contingent consideration payable   5,347    1,947 
Total other current liabilities  $8,251   $3,206 

  

In connection with the acquisition of Daxx on December 14, 2020, the Company recorded a contingent consideration payable, which is a post-closing earn-out consideration, estimated based on fair value. In connection with the acquisition of Tacit on May 29, 2021, the Company recorded a contingent consideration payable, which is a post-closing earn-out consideration, estimated based on fair value.

 

Note 8 — Income taxes

 

The Company recorded income tax expense of $2.8 million and income tax benefit of $(0.8) million for the three months ended June 30, 2021 and 2020, respectively. The Company’s effective tax rate was 213.6% and 27.3% for the three months ended June 30, 2021 and 2020, respectively. The increase in effective tax rate for the three months ended June 30, 2021, as compared to the same periods in 2020 was attributable mainly to Section 162 (m) compensation deduction limitations partially offset by stock-based compensation excess tax benefit. Additionally, the United Kingdom’s (“UK”) recently enacted Finance Act 2021 has increased its corporate tax rate to 25% for companies with profits exceeding 250,000 pounds, effective beginning April 1, 2023. As a result of this change in tax law, the Company remeasured its UK deferred taxes which resulted in a $0.5 million discrete tax expense in the three months ended June 30, 2021. The Company recorded income tax expense of $2.0 million and income tax benefit of $(3.5) million for the six months ended June 30, 2021 and 2020, respectively. The Company’s effective tax rate was (132.8)% and 34.1% for the six months ended June 30, 2021 and 2020, respectively. The increase in effective tax rate for the three months ended June 30, 2021, as compared to the same periods in 2020 was attributable mainly to Section 162 (m) compensation deduction limitations partially offset by stock-based compensation excess tax benefit. For the three and six months ended June 30, 2021, the Company used a discrete effective tax rate method to calculate income taxes due to sensitivity of the forecast. The Company determined that small changes in estimated “ordinary” income would result in significant changes in the estimated annual effective tax rate causing material distortion in the year-to-date tax provision. Similarly, for the three and six months ended June 30, 2020, due to uncertainties created by the COVID-19 pandemic, the Company’s estimated annual effective tax rate method would not provide a reliable estimate and therefore was not used.

 

On March 27, 2020, the U.S. President signed into law the CARES Act, an economic stimulus package in response to the COVID-19 global pandemic. The CARES Act contains several corporate income tax provisions, including making remaining alternative minimum tax credits immediately refundable; providing a 5-year carryback of net operating loss carryforwards (“NOLs”) generated in tax years 2018, 2019, and 2020, and removing the 80% taxable income limitation on utilization of those NOLs if carried back to prior tax years or utilized in tax years beginning before 2021; and temporarily liberalizing the interest deductibility rules under Section 163(j) of the Tax Cuts and Jobs Act, by raising the adjusted taxable income limitation from 30% to 50% for tax years 2019 and 2020 and giving taxpayers the election of using 2019 adjusted taxable income for purposes of computing 2020 interest deductibility. The CARES Act did not have a significant impact on the Company’s tax provision for the three and six months ended June 30, 2021 or 2020. As additional guidance is released, the Company will evaluate whether there would need to be a change in the period when such guidance is issued.

 

14

 

 

Note 9 — Stockholders’ equity

 

The following description summarizes the material terms and provisions of the securities that the Company has authorized.

 

Common stock

 

The Company is authorized to issue 110.0 million shares of common stock. At Closing, March 5, 2020, the Company had issued 50.8 million shares of common stock. As of June 30, 2021 the Company had 54.7 million shares of common stock that were outstanding.

 

Preferred Stock

 

As of December 31, 2019 GDI had 1.0 million shares of no par value shares of preferred stock outstanding convertible on a 1:1basis with GDI’s common stock. At the Closing, the preferred stock outstanding was converted into common stock of the Company, par value $0.0001 per share.

 

Founders and underwriter shares subject to earnout provisions

 

At the Closing, the Company had 1.2 million shares of common stock issued and outstanding subject to earnout provisions (the “Earnout Shares”). The Earnout Shares were subject to transfer restrictions and the owners of the Earnout Shares could not sell, transfer, or otherwise dispose of their respective shares until the respective earnout provisions were achieved as described further below. The Earnout Shares have full ownership rights including the right to vote and receive dividends and other distributions thereon. Dividends and other distributions are not subject to forfeiture in accordance with the Amended and Restated Sponsor Share Letter filed with the SEC on January 26, 2020. The Earnout Shares were eligible to vest and were no longer subject to the transfer restrictions as follows:

 

399,999; 400,000; and 400,001 Earnout Shares would vest if the closing price of the Company’s common stock on the principal exchange on which the securities are listed or quoted have been at or about $12.00; $13.50; and $15.00 per share, respectively, for 20 trading days (which need not be consecutive) over a thirty-trading day period at any time.

 

As of December 31, 2020, none of the Earnout Shares were vested. On January 20, 2021, 399,999 Earnout Shares vested and are no longer subject to transfer restrictions. On March 2, 2021, 400,000 Earnout Shares vested and are no longer subject to transfer restrictions. On March 29, 2021, 400,001 Earnout Shares vested and are no longer subject to transfer restrictions. Accordingly, as of March 29, 2021, all of the Earnout Shares have vested.

 

Warrants

 

On April 12, 2021, the Staff of the SEC issued the “Staff Statement on Accounting and Reporting Considerations for Warrants Issued by Special Purpose Acquisition Companies (“SPACs”)” (the “Staff Statement”). The Staff Statement provided new guidance for all SPAC-related companies regarding the accounting and reporting for their warrants that could result in the warrants issued by SPACs being classified as a liability measured at fair value, with non-cash fair value adjustments reported in earnings at each reporting period. The Company reviewed the accounting for both its public warrants and private warrants following the Staff Statement. The Company determined that the accounting for its public warrants as equity was consistent with the Staff Statement. The Company determined that its private warrants should be accounted for as liabilities but that the related accounting errors during the year ended December 31, 2020 were not material to the required financial statements and disclosures included in its annual report on Form 10-K filed on March 5, 2021. In the three months ended March 31, 2021, the Company began accounting for the private warrants correctly, as disclosed in its quarterly report on Form 10-Q filed on May 6, 2021.

 

As of June 30, 2021, there were a total of 0.01 million private warrants outstanding and 4.2 million public warrants outstanding. As part of its initial public offering (“IPO”), ChaSerg issued 22.0 million units including one share of common stock and one-half of one redeemable warrant. Simultaneously with its IPO, ChaSerg issued 0.6 million private placement units to its sponsor underwriter, each consisting of one common share and one-half of one redeemable warrant. ChaSerg issued 0.1 million units as a result of the conversion of a working capital sponsor loan consisting of one common share and one-half of one redeemable warrant. 

 

Each whole warrant entitles the holder to purchase one share of common stock at a price of $11.50. Warrants may only be exercised for a whole number of shares for common stock. No fractional shares will be issued upon exercise of the warrants. Each warrant is currently exercisable and will expire March 5, 2025 (five years after the completion of the Business Combination), or earlier upon redemption or liquidation.

 

The Company may call the warrants for redemption at a price of $0.01 per warrant upon a minimum 30 days’ prior written notice of redemption, if and only if, the reported last sale price of the Company’s common stock equals or exceeds $18.00 per share for any 20 trading days within a 30-trading day period ending three business days before the Company sends the notice of redemption to the warrant holders; and if and only if, there is a current registration statement in effect with respect to the shares of common stock underlying such warrants.

 

15

 

 

On February 17, 2021, the Company and Riverview Group LLC, an affiliate of Millennium Management LLC, a holder of 6.4 million of the outstanding publicly traded warrants (the “Public Warrants”) entered into a Warrant Exchange Agreement (the “Exchange Agreement”). Pursuant to the Exchange Agreement, the holder exchanged each of its public warrants for 0.3480 shares of the Company’s common stock, i.e., 2.2 million shares. During the three months ended June 30, 2021, the Company entered into agreements with investors resulting in exchange of 0.8 million of its private warrants for 0.3 million shares of the Company's common stock.

 

Note 10 — Stock-based compensation

 

2018 Stock Plan

 

GDI had previously adopted a stock plan in 2018 (the “2018 Stock Plan”). Under the terms of the 2018 Stock Plan, certain option grants were accelerated in full or by an additional 12 months as a result of the Business Combination. Therefore, on the date of Closing, the acceleration of vesting for 2.6 million stock options resulted in a stock compensation charge and corresponding increase to additional paid-in capital of $2.5 million. Additionally, at Closing, a percentage of outstanding vested GDI stock options were settled in exchange for cash consideration, pursuant to the terms of the Merger Agreement.

 

The remaining portion of outstanding vested options totaling 1.7 million and all unvested options totaling 0.1 million were automatically assumed and converted into options to purchase the Company’s common stock as of the Closing. The number of each participant’s assumed options and the exercise price were adjusted as provided in the Merger Agreement. There was no incremental compensation cost attributable to the incremental fair value of the modified options compared to the original options on the modification date. The assumed stock options will continue to be subject to the same terms and conditions, including vesting schedule terms, in accordance with the 2018 Stock Plan. Exercise prices for 2018 Stock Plan options range between $3.51 and $3.54 per share.

 

The following table sets forth the activity for the 2018 Stock Plan, including the conversion of the vested and unvested options, for the six months ended June 30, 2021:

 

   Options
Outstanding,
in thousands
 
Balance at December 31, 2019   2,734 
Cashed out   (829)
Forfeited   (19)
Balance at March 31, 2020 (prior to exchange ratio conversion)   1,887 
Converted vested balance   4,314 
Converted unvested balance   364 
Balance at March 6, 2020 (post to exchange ratio conversion)   4,678 
Exercised in 2020   (28)
Forfeited/Cancelled in 2020   (50)
Options Outstanding as of December 31, 2020   4,600 
Exercised in quarter ended March 31, 2021   (37)
Forfeited/Cancelled in quarter ended March 31, 2021   (11)
Options Outstanding as of March 31, 2021   4,552 
Exercised in quarter ended June 30, 2021   (257)
Forfeited/Cancelled in quarter ended June 30, 2021   (3)
Options Outstanding as of June 30, 2021   4,291 

 

As of June 30, 2021, since the conversion, a total of 0.08 million shares were forfeited, and 0.32 million shares were exercised for the total proceeds of $0.4 million in cash and 0.13 million shares net withheld for exercise price and taxes. The number of shares exercisable as of June 30, 2021 was 4.1 million with the average exercise price $3.54 per share. The intrinsic value of the 4.3 million total outstanding shares of 2018 Plan Options as of June 30, 2021, was $49.3 million with the remaining contractual term of 7.50 years. The unrecognized compensation expenses related to 2018 Plan options as of June 30, 2021 was $0.2 million, net of forfeitures, to be expensed on a straight-line basis over 2.19 years.

 

16

 

 

2020 Equity Incentive Plan

 

Effective March 5, 2020, our board of directors approved an equity incentive plan (the “2020 Plan”). The 2020 Plan permits the Company to grant a maximum aggregate amount of 16.3 million Incentive Stock Options, Non-Statutory Stock Options (“NSOs”), Restricted Stock, Restricted Stock Units (“RSUs”), Stock Appreciation Rights, Performance Units (“PSUs”), and Performance Shares (“PSAs”) (collectively, the “Awards”) to employees, directors, and consultants of the Company. Our board of directors or any committee appointed by the board has the authority to grant Awards. During the quarter ended June 30, 2021, our board of directors granted 0.11 million NSOs and 0.02 million target PSUs at a maximum payout at 300%. The following table represent the number of shares available for grants from 2020 Equity Incentive Plan (in thousands):

 

  

Available

for grant

 
Available for grant, December 31, 2020   9,881 
Options granted   (231)
RSU granted   (7)
PSU granted (100% target)   (566)
Options forfeited   607 
Traded for taxes (returned to the pool)   1,311 
Available for grant, June 30, 2021   10,996 

 

Stock Options

 

The total of 0.11 million NSOs shares granted during the quarter ended June 30, 2021 from 2020 Equity Incentive Plan are subject to the following time-based vesting conditions: one-fourth of the NSOs will vest on one year after the grant date; and thereafter one-sixteenth of the NSOs will vest each subsequent three-month anniversary. The NSOs have a ten-year exercise term, and once the NSOs are vested, the recipients have the right to purchase the Company’s stock at a fixed exercise price.

 

The grant date fair value of each NSO was estimated on the date of grant using the Black-Scholes-Merton option pricing model. The key assumptions for 2021 grants are provided in the following table.

 

   2021 
Dividend yield   0%
Expected volatility   40%
Risk-free interest rate   0.96%
Expected term in years   6.11 
Grant date fair value of common stock  $14.98 

 

The Company used a zero percent dividend yield assumption for all Black-Scholes-Merton stock option-pricing calculations. Since the Company’s shares were not publicly traded prior to the Closing and its shares were rarely traded privately, expected volatility is estimated based on the average historical volatility of similar entities with publicly traded shares. The risk-free rate for the expected term of the options is based on the U.S. Treasury yield curve at the date of grant. Expected term is estimated using the simplified method, which takes into account vesting and contractual term. The simplified method is being used to calculate expected term instead of historical experience due to a lack of relevant historical data resulting from changes in option vesting schedules and changes in the pool of employees receiving option grants. The following table summarizes option activity for the six months ended June 30, 2021 (shares in thousands):

 

   Shares   Price (1)   Term (2) 
Options outstanding as of December 31, 2020 (2020 Plan)   1,942   $8.38    9.22 
Options granted   231   $14.98      
Options exercised   (10)  $8.13      
Options forfeited   (284)  $8.55      
Options outstanding as of June 30, 2021 (2020 Plan)   1,879   $9.17    8.76 

 

 

(1)Represents the weighted average exercise price

(2)Represents weighted average remaining contractual term

 

17

 

 

0.48 million shares of 2020 NSO grants were vested and outstanding as of June 30, 2021. The aggregated fair value of 0.23 million NSOs granted during the six months ending June 30, 2021 was $1.4 million or $5.95 per share. The intrinsic value of the 1.9 million total outstanding shares of 2020 Plan Options as of June 30, 2021, was $11.1 million. The total unrecognized compensation expenses related to 2020 Stock Plan options as of June 30, 2021 was $4.9 million to be expensed on a straight-line basis over the remaining 2.99 years.

 

Restricted Stock Units

 

The RSUs granted to employees generally are subject to the following time-based vesting conditions: one-fourth vest on the first anniversary of the grant; and thereafter one-sixteenth of the RSUs will vest each subsequent three-month anniversary. RSUs granted do not participate in earnings, dividends, and do not have voting rights until vested. RSUs granted to the Board in lieu of the quarterly payments vest immediately.

 

For the quarter ended June 30, 2021, approximately 0.15 million shares were issued upon vesting of the RSUs to the executives and 0.14 million shares were withheld to cover $2.2 million of employees’ tax obligations. 0.3 million unvested RSUs were forfeited as two members of the executive team resigned in June of 2021. The following table summarizes RSU activity for the six months ended June 30, 2021(in thousands):

 

   Shares 
RSUs outstanding as of December 31, 2020 (2020 Plan)   2,996 
RSUs granted   7 
RSUs released   (912)
RSU forfeited   (291)
RSUs outstanding as of June 30, 2021   1,799 

 

The total unrecognized compensation expenses related to 2020 Stock Plan RSUs as of June 30, 2021 was $14.2 million to be expensed on a straight-line basis over 2.7 years.

 

Performance Stock Units

 

On March 2, 2021, the Company granted 0.5 million Performance Stock target shares under the 2020 Stock Plan with the maximum payout capped at 300%. The performance goals for these grants consist of:

 

1)

Year-over-year growth in non-retail revenue for the Performance Period, which is Fiscal Year 2021, expressed as a percentage increase over the fiscal year 2020 non-retail revenue (“Revenue Growth”), and

 

2)

Contribution Margin for the Performance Period as a percentage of Non-Retail revenue for the Performance Period.

 

Fifty percent (50)% of the target number of performance shares granted will vest (if at all) based on the extent of achievement of Revenue Growth for the Performance Period and the remaining fifty percent (50)% of the target number of performance shares granted will vest (if at all) based on the extent of achievement of the Contribution Margin.

 

Additionally, 0.02 million shares of PSU were granted on June 16th, 2021, per a consulting agreement with a former executive with the performance goals being consistent with those described above.

 

Performance shares will be certified and vested no later than March 1, 2022 with the payout shortly after. As of June 30, 2021, the Company assessed the vesting of the Performance Share Units as probable and the payout is estimated at 225% of the target goal. Stock-based compensation expense related to Performance Stock Units granted in 2021 was $6.0 million for the six months ended June 30, 2021. The unrecognized expense for PSUs as of June 30, 2021, was $12.9 million.

 

18

 

 

Stock-Based Compensation Expense

 

The Company classifies awards issued under the stock-based compensation plans as equity. Total compensation expense for the three months ended June 30, 2021 and 2020 was $6.7 million and $3.7 million respectively. Employee stock-based compensation recognized was as follows (in thousands):

 

  

Three months ended

June 30,

  

Six months ended

June 30,

 
   2021   2020   2021   2020 
Cost of revenue  $149   $60   $260   $675 
Engineering, research, and development   617    460    1,171    1,056 
Sales and marketing   453    602    1,244    1,737 
General and administrative   5,456    2,532    9,671    4,990 
Total stock-based compensation  $6,675   $3,654   $12,346   $8,458 

 

As of June 30, 2021, there was approximately $32.2 million of unrecognized stock-based compensation expense.

 

Note 11 — Earnings per share

 

The Company computed earnings per share (“EPS”) in conformity with the two-class method required for participating securities. Undistributed earnings allocated to participating securities are subtracted from net income in determining net income attributable to common stockholders. The Company allocated income between its common and preferred shareholders only for the periods the preferred stock was outstanding, which was January 1, 2020 to March 4, 2020. There was no preferred stock outstanding from March 5, 2020 to June 30, 2021. As the Company was in a net loss position for the periods between January 1, 2020 to March 4, 2020 and March 5, 2020 to June 30, 2021, the net loss was allocated entirely to common shareholders.

 

All participating securities are excluded from basic weighted-average number of common shares outstanding. Diluted EPS is computed by dividing net income available to common shareholders by the weighted-average number of shares of common stock outstanding during the period increased to include the number of additional shares of common stock that would have been outstanding if the potentially dilutive securities had been issued. Potentially dilutive securities include outstanding stock options, restricted stock units, performance stock units, and convertible preferred securities. The dilutive effect of potentially dilutive securities is reflected in diluted EPS in order of dilution and by application of the treasury stock method and the if-converted method for stock-based compensation and convertible preferred securities, respectively.

 

The following table sets forth the computation of basic and diluted EPS of common stock as follows (in thousands except per share data):

 

  

Three months ended

June 30,

  

Six months ended

June 30,

 
   2021   2020   2021   2020 
Numerator for basic and diluted loss per share                
Net loss  $(1,483)  $(2,166)  $(3,545)  $(6,762)
                     
Denominator for basic and diluted loss per share                    
Weighted-average shares outstanding – basic and diluted   54,431    49,626    53,044    39,731 
                     
Net loss per share                    
Basic  $(0.03)  $(0.04)  $(0.07)  $(0.17)
Diluted  $(0.03)  $(0.04)  $(0.07)  $(0.17)

 

19

 

 

The following table represents the number of share equivalents outstanding during the period that were excluded from the calculation of diluted net loss per share attributable to common stockholders because including them would have had an anti-dilutive effect.

 

  

Three months ended

June 30,

  

Six months ended

June 30,

 
Potential common shares (in ‘000s)  2021   2020   2021   2020 
Convertible preferred stock   
    
    
    1,048 
Stock options to purchase common stock   6,666    6,105    6,773    8,571 
Restricted stock units   2,381    2,934    3,002    2,934 
Performance stock units   1,274    1,292    2,726    1,292 
Warrants to purchase common stock   4,963    11,347    11,347    11,347 
Total   15,284    21,678    23,848    25,192 

 

Note 12 — Commitments and contingencies

 

Legal Matters

 

The Company is subject to legal proceedings and claims that arise in the ordinary course of its business. Management evaluates each claim and provides for potential loss when the claim is probable to be paid and reasonably estimable. While adverse decisions in certain of these litigation matters, claims and administrative proceedings could have a material effect on a particular period’s results of operations, subject to the uncertainties inherent in estimating future costs for contingent liabilities, management believes that any future accruals with respect to these currently known contingencies would not have a material effect on the financial condition, liquidity or cash flows of the Company. There were no amounts required to be reflected in these consolidated financial statements related to contingencies.

 

Note 13 — Subsequent events

 

The Company performed its subsequent event procedures through August 5, 2021, the date these condensed consolidated financial statements were issued.

 

On July 6, 2021, the Company closed a follow-on public offering of 11,615,301 shares of its common stock, which included 5,470,039 shares offered by Grid Dynamics and 6,145,262 shares offered by certain selling stockholders, at a price to the public of $15.03 per share. These amounts include shares sold upon exercise in full of the underwriters' option to purchase additional shares. J.P. Morgan Securities, LLC, William Blair & Company, L.L.C. and Cowen and Company, LLC were acting as joint book-running managers for the offering. Needham & Company, LLC and Cantor Fitzgerald & Co. were acting as co-managers for the offering. The Company did not receive any proceeds from the sale of the shares by the selling stockholders. The net proceeds from this offering, after deducting underwriting discounts and commissions and estimated offering expenses were $78.3 million.

 

On July 28, 2021, the Company announced the redemption of its 2.8 million then outstanding public warrants. Any public warrants not exercised prior to 5:00 p.m., New York City time, on August 30, 2021 will be redeemed at that time for $0.01 per warrant. The public warrants are exercisable at a price of $11.50 per share, representing a total of approximately $31.9 million in potential proceeds to Grid Dynamics if all 2.8 million outstanding warrants are exercised prior to the redemption date.

 

20

 

 

Item 2. Management’s Discussion and Analysis of Financial Condition and Results of Operations

 

Forward-Looking Statements

 

The following discussion of the financial condition and results of operations of Grid Dynamics Holdings, Inc. should be read in conjunction with the unaudited condensed consolidated financial statements and the related notes thereto included elsewhere in this Quarterly Report on Form 10-Q and the audited financial statements and notes thereto and Management’s Discussion and Analysis of Financial Condition and Results of Operations for the fiscal year ended December 31, 2020, which has been filed with the Securities and Exchange Commission (“SEC”) on March 5, 2021.

 

The statements contained in this Quarterly Report on Form 10-Q that are not historical facts are forward-looking statements (within the meaning of Section 21E of the Securities Exchange Act of 1934, as amended, or the Exchange Act) that involve risks and uncertainties. Such forward-looking statements may be identified by, among other things, the use of forward-looking terminology such as “believes,” “expects,” “may,” “will,” “should,” “seek,” “intends,” “plans,” “estimates,” “projects,” “anticipates,” or the negative thereof or other variations thereon or comparable terminology, or by discussions of strategy that involve risks and uncertainties. Actual results may differ significantly from those projected in the forward-looking statements. Factors that might cause future results to differ materially from those projected in the forward-looking statements include, but are not limited to, those discussed in the sections titled “Risk Factors” and “Cautionary Note Regarding Forward Looking Statements,” included elsewhere in this Quarterly Report on Form 10-Q.

 

Overview

 

Grid Dynamics Holdings, Inc. (“Grid Dynamics,” “GDH,” the “Company,” “we,” “us,” or “our”) is an emerging leader in enterprise-level digital transformations in Fortune 1000 companies. For enterprises that create innovative digital products and experiences, Grid Dynamics offers close collaboration to provide digital transformation initiatives that span strategy consulting, development of early prototypes and enterprise-scale delivery of new digital platforms. Since its inception in 2006 in Menlo Park, California, as a grid and cloud consultancy firm, Grid Dynamics has been on the forefront of digital transformation, working on big ideas like cloud computing, NOSQL, DevOps, microservices, big data and AI, and quickly established itself as a provider of choice for technology and digital enterprise companies.

 

As a leading global digital engineering and IT services provider with its headquarters in Silicon Valley and engineering centers in the United States, Mexico and multiple European countries, Grid Dynamics’ core business is to deliver focused and complex technical consulting, software design, development, testing and internet service operations. Grid Dynamics also helps organizations become more agile and create innovative digital products and experiences through its deep expertise in emerging technology, such as AI, data science, cloud computing, big data and DevOps, lean software development practices and a high-performance product culture. Grid Dynamics believes that the key to its success is a business culture that puts products over projects, client success over contract terms and real business results over pure technical innovation. By leveraging Grid Dynamics’ proprietary processes optimized for innovation, emphasis on talent development and technical expertise, Grid Dynamics has been able to achieve significant growth.

 

We are a former blank check company that completed our initial public offering on May 21, 2018. In March 2020, Grid Dynamics, formerly known as ChaSerg Technology Acquisition Corp (“ChaSerg”), completed its acquisition of Grid Dynamics International, Inc. (“GDI”) pursuant to the business combination agreement dated November 13, 2019 (the “Business Combination”). In conjunction with the completion of the Business Combination, ChaSerg was renamed as Grid Dynamics Holdings, Inc.

 

The Business Combination was accounted for as a reverse recapitalization for which GDI was determined to be the accounting acquirer. Outstanding shares of GDI were converted into our common shares, presented as a recapitalization, and the net assets of ChaSerg were acquired at historical cost, with no goodwill or other intangible assets recorded.

 

21

 

 

The following table sets forth a summary of Grid Dynamics’ financial results for the periods indicated:

 

  

Three months ended

June 30,

 
(dollars in thousands, except per share data)  2021   2020 
       % of revenue       % of revenue 
Revenues  $47,676    100.0%  $22,368    100.0%
Gross profit   19,797    41.5%   8,386    37.5%
Income/(loss) from operations   1,384    2.9%   (3,187)   (14.2)%
Net loss   (1,483)   (3.1)%   (2,166)   (9.7)%
Comprehensive loss   (1,518)   (3.2)%   (2,166)   (9.7)%
Diluted loss per share  $(0.03)   n/a   $(0.04)   n/a 
Non-GAAP Financial Information(1)                    
Non-GAAP EBITDA(1)   9,731    20.4%   1,198    5.4%
Non-GAAP Net Income(1)   6,090    12.8%   433    1.9%
Non-GAAP Diluted EPS(1)  $0.10    n/a   $0.01    n/a 

 

 

(1)

Non-GAAP EBITDA, Non-GAAP Net Income and Non-GAAP Diluted EPS are non-GAAP financial measures. See “Non-GAAP Measures” below for additional information and reconciliations to the most directly comparable GAAP financial measures.

 

  

Six months ended

June 30,

 
(dollars in thousands, except per share data)  2021   2020 
       % of revenue       % of revenue 
Revenues  $86,810    100.0%  $54,825    100.0%
Gross profit   35,134    40.5%   18,204    33.2%
Loss from operations   (394)   (0.5)%   (10,221)   (18.6)%
Net loss   (3,545)   (4.1)%   (6,762)   (12.3)%
Comprehensive loss   (3,531)   (4.1)%   (6,762)   (12.3)%
Diluted loss per share  $(0.07)   n/a   $(0.17)   n/a 
Non-GAAP Financial Information(1)                    
Non-GAAP EBITDA(1)   14,994    17.3%   4,243    7.7%
Non-GAAP Net Income(1)   9,155    10.5%   1,978    3.6%
Non-GAAP Diluted EPS(1)  $0.15    n/a   $0.05    n/a 

 

(2)

 

Recent Developments

 

In the three months ended June 30, 2021, our revenues of $47.7 million were up 8.5 million or 21.8% in comparison to the three months ended March 31, 2021, and up 113.1% from the three months ended June 30, 2020. Our three months ended June 30, 2021 revenues included $9.3 million in revenue contribution from the acquisitions of Daxx and Tacit. Excluding contribution from acquisitions, in the three months ended June 30, 2021, our revenues of $38.4 million were up $5.8 million or 17.7% in comparison to the three months ended March 31, 2021, and up $16.0 million or 71.6% from the three months ended June 30, 2020 and was the highest revenue quarter in the company’s history. Similar to the last two quarters, in the three months ended June 30, 2021, we witnessed healthy business trends. This is largely reflected in the double-digit sequential growth over the three months ended March 31, 2021. The three months ended June 30, 2021 also marked the fourth consecutive sequential growth quarter since witnessing a bottom in revenues in the three months ended June 30, 2020. During the quarter, we witnessed strong demand from our customers across our industry verticals as digital transformation initiatives take center stage.

 

22

 

 

During the three months ended June 30, 2021, our largest industry vertical continued to be the Technology Media, and Telecom (“TMT”) at 33.8% of our revenue, while Consumer Packaged Goods (“CPG”)/Manufacturing, Finance, and Other verticals contributed to 20.8%, 8.5%, and 10.2% respectively. Revenues from our Top 5 customers during the quarter was 45.4%, down from 66.7% in the same quarter year ago. The diversification in our Top 5 customer concentration was driven by a combination of factors that included success in ramping business at new customers and growing business at existing customers, aided by our recent acquisitions.

 

We continue to focus on revenue diversification by increasing our customer base with new customers’ additions. During the three months ended June 30, 2021, we received revenues from a total of 212 customers, up from 188 customers in the three months ended March 31, 2021 and 37 customers in the three months ended June 30, 2020. Of these, 161 customers came from our recent acquisitions of Tacit and Daxx. Excluding customers from our recent acquisitions, we exited the quarter with 51 paying customers that included 5 new customers added during the three months ended June 30, 2021.

 

We exited the three months ended June 30, 2021 with $(1.5) million, or (3.1)% in GAAP Net Loss, an improvement from a GAAP Net Loss of $(2.1) million, or (5.3)% in the three months ended March 31, 2021 and a GAAP Net Loss of $(2.2) million, or (9.7)% in the three months ended June 30, 2020. We exited the three months ended June 30, 2021 with $9.7 million, or 20.4% in Non-GAAP EBITDA, up from $5.3 million, or 13.4% in the three months ended March 31, 2021 and $1.2 million, or 5.4% in the three months ended June 30, 2020. The sequential increase in profitability was largely driven by increase in billable personnel and billable work hours combined by contributions from our recent acquisitions of Tacit and Daxx.

 

Acquisition of Tacit Knowledge Inc.

 

On May 29, 2021, we acquired UK based Tacit Knowledge Inc. (“Tacit”) in an all-cash transaction. Headquartered in UK, Tacit is a global consultancy focused on digital commerce serving customers in the UK, North America, Continental Europe, and Asia. The company serves leading global brands across technology, CPG, financial, and retail markets. The company has approximately 180 employees with engineering centers situated in Moldova and Mexico. The acquisition will augment our service offerings and will strengthen our competitive position within the market. Additionally, the acquisition will also enable us to leverage near-shore capabilities with the company’s presence in Mexico.

 

Acquisition of Daxx

 

On December 14, 2020, we acquired Netherland based Daxx in an all-cash transaction. Headquartered in Amsterdam, and with approximately 490 employees, the company has engineering centers situated in major tech hubs across Ukraine. The company has over 20 years of experience in delivering software services to clients across a wide range of industry verticals that include high-tech, digital media, healthcare, and education. Some of the key capabilities include consulting services spanning agile process reengineering, lean development, and DevOps. Daxx serves customers in the Netherlands, Germany, U.K., and U.S., and with strong relationships with high-growth start-ups and established software companies. We believe the acquisition of Daxx will enable our company to have a stronger foothold in Europe and will enable the company to continue diversifying its business.

 

COVID-19 Related Updates

 

In December 2019, a novel coronavirus COVID-19 was reported in China, and in March 2020, the World Health Organization declared it a pandemic. This contagious disease pandemic has continued to spread across the globe, including extensively within the U.S., and is impacting worldwide economic activity and financial markets, significantly increasing economic volatility and uncertainty. In response to this global pandemic, several local, state, and federal governments have been prompted to take unprecedented steps that include, but not limited to, travel restrictions, closure of businesses, social distancing, and quarantines.

 

Starting in March 2020, headwinds to our business from the pandemic were largely centered around our retail customers as many of them witnessed a slowdown in their sales. After witnessing a low point in the month of May 2020, our business has steadily improved as we have added new customers and have grown existing business across industry verticals. We continue to take precautionary measures intended to minimize the risk of the virus to our employees, our customers, and the communities in which we operate that include suspension of all non-essential travel. Although a significant proportion of our employees continue to work remotely, all our facilities have been opened for employees to work following local government guidelines. We continue to deliver services to our clients in this fashion and this has resulted in minimal disruption in our operational and delivery capabilities.

 

23

 

 

Business Combination

 

On March 5, 2020, a wholly-owned subsidiary (“Merger Sub 1”) of ChaSerg merged with and into GDI, with GDI surviving the merger (the “Initial Merger”). Immediately following the Initial Merger, GDI merged with and into another wholly-owned subsidiary of ChaSerg (“Merger Sub 2”) with Merger Sub 2 surviving; Merger Sub 2 was then renamed “Grid Dynamics International, LLC,” and ChaSerg was then renamed “Grid Dynamics Holdings, Inc.” (the “Business Combination”). As of the open of trading on March 6, 2020, the common stock and warrants of Grid Dynamics Holdings, Inc. (“Grid Dynamics”), formerly those of ChaSerg, began trading on The NASDAQ Stock Market LLC as “GDYN” and “GDYNW,” respectively.

 

Comparability of Financial Information

 

Grid Dynamics’ results of operations and statements of assets and liabilities may not be comparable between periods as a result of the Business Combination on March 5, 2020 and the other events and transactions discussed below.

 

Key Performance Indicators and Other Factors Affecting Performance

 

Grid Dynamics uses the following key performance indicators and assesses the following other factors to analyze its business performance, to make budgets and financial forecasts and to develop strategic plans:

 

Employees by Region

 

Attracting and retaining the right employees is critical to the success of Grid Dynamics’ business and is a key factor in Grid Dynamics’ ability to meet client needs and grow its revenue base. Grid Dynamics’ revenue prospects and long-term success depend significantly on its ability to recruit and retain qualified IT professionals. A substantial majority of Grid Dynamics’ personnel is comprised of such IT professionals.

 

The following table shows the number of Grid Dynamics personnel (including full-time employees and contractors serving in similar capacities) by region, as of the dates indicated:

 

   As of June 30, 
   2021   2020 
United States and Mexico   317    251 
Central and Eastern Europe(1), U.K. and the Netherlands   2,193    986 
Total   2,510    1,237 

 

 

(1)

Includes Ukraine, Russia, Poland, Serbia, and Moldova.

 

Attrition

 

There is competition for IT professionals in the regions in which Grid Dynamics operates, and any increase in such competition may adversely impact Grid Dynamics’ business and gross profit margins. Employee retention is one of Grid Dynamics’ main priorities and is a key driver of operational efficiency. Grid Dynamics seeks to retain top talent by providing the opportunity to work on exciting, cutting-edge projects for high profile clients, a flexible work environment and training and development programs. Grid Dynamics’ management targets a voluntary attrition rate no higher than the mid-teen percentages, in line with the industry.

 

24

 

 

Hours and Utilization

 

As most of Grid Dynamics’ customer projects are performed and invoiced on a time and materials basis, Grid Dynamics’ management tracks and projects billable hours as an indicator of business volume and corresponding resource needs for IT professionals. To maintain its gross profit margins, Grid Dynamics must effectively utilize its IT professionals, which depends on its ability to integrate and train new personnel, to efficiently transition personnel from completed projects to new assignments, to forecast customer demand for services and to deploy personnel with appropriate skills and seniority to projects. Grid Dynamics’ management generally tracks utilization with respect to subsets of employees, by location or by project, and calculates the utilization rate for each subset by dividing (x) the aggregate number of billable hours for a period by (y) the aggregate number of total available hours for the same period. Grid Dynamics’ management analyzes and projects utilization to measure the efficiency of its workforce and to inform management’s budget and personnel recruiting decisions. 

 

Customer Concentration

 

Grid Dynamics’ ability to retain and expand its relationships with existing customers and add new customers are key indicators of its revenue potential. Grid Dynamics grew its customer base from 42 customers in the first half of 2020 to 226 customers in the same period of 2021, including 172 customers that were acquired as part of Daxx and Tacit acquisitions. Grid Dynamics’ procurement of new customers has a direct impact on its ability to diversify its sources of revenue and replace customers that may no longer require its services. Grid Dynamics has a relatively high level of revenue concentration with certain customers.

 

The following table shows the evolution of Grid Dynamics’ customer base and revenue concentration, as of the dates and for the periods indicated:

 

  

Three months ended

June 30,

 
   2021   2020 
         
Total customers (for the period) (1)   212    37 
Of which (customer revenue amounts annualized for interim periods):          
>$5.0 million   9    7 
>$2.5 – 5.0 million   4    2 
>$1.0 – 2.5 million   15    6 
Top five customers   45.4%   66.7%
Top ten customers   62.3%   84.5%
Top five customers  $21,634   $14,924 
Top ten customers  $29,690   $18,891 

 

 

(1)

Number of customers acquired as a result of Daxx and Tacit acquisitions for the three months ended June 30, 2021 is 161.

 

  

Six Months Ended

June 30,

 
   2021   2020 
         
Total customers (for the period) (1)   226    42 
Of which (customer revenue amounts annualized for interim periods):          
>$5.0 million   9    7 
>$2.5 – 5.0 million   4    2 
>$1.0 – 2.5 million   15    6 
Top five customers   48.6%   61.8%
Top ten customers   64.3%   84.0%
Top five customers  $42,213   $33,884 
Top ten customers  $55,786   $46,047 

 

 

(1)

Number of customers acquired as a result of Daxx and Tacit acquisitions for the six months ended June 30, 2021 is 172.

 

25

 

 

Foreign Currency Exchange Rate Exposure

 

Grid Dynamics is exposed to foreign currency exchange rate risk and its profit margins are subject to volatility between periods due to changes in foreign currency exchange rates relative to the U.S. dollar. Grid Dynamics’ functional currency apart from the U.S. dollar includes EURO, British pounds, Mexican pesos and Moldovan leu. Grid Dynamics contracts with customers for payment in and generates predominantly all of its revenue in U.S. dollars, except for Daxx and Tacit that generate revenue predominantly in EURO and British pounds. Its non-U.S. subsidiaries’ operations relate substantially to performing services under those contracts. Several of Grid Dynamics’ subsidiaries conduct operations and employ or contract personnel in Russia, Ukraine, Poland and Serbia, but keep their books and records in U.S. dollars. Daxx’s books are kept in EURO. Tacit’s books are kept in local currencies. Grid Dynamics’ foreign currency transaction exposure is a result of having to convert U.S. dollars into the local currencies of the countries in which it must pay expenses, typically by transferring funds to its non-U.S. subsidiaries. These expenses are primarily comprised of compensation and benefits and other operating costs, such as rent. Subsidiary transactions executed in local currencies are converted into U.S. dollars at the exchange rate in effect on the date of the transaction, in the case of asset and liability transactions, or at the average monthly exchange rate, in the case of income and expense transactions. Certain balances in local currencies, particularly cash and financial instruments, are adjusted at each balance sheet date to reflect the then-current exchange rate, which is the rate at which the related receivable or payable could be settled at that date. As a result, Grid Dynamics’ assets, liabilities, profit margins and other measures of profitability may be subject to volatility due to changes in the exchange rate of the U.S. dollar against the currencies in which Grid Dynamics’ subsidiaries incur operating expenses, hold assets, or owe liabilities, and may not be comparable between periods.

 

In the three and six months ended June 30, 2021, approximately 25.3%, 11.9% and 7.4% of Grid Dynamics’ $46.3 million and approximately 25.3%, 11.4% and 7.6% of Grid Dynamics’ $87.2 million of combined cost of revenue and total operating expenses were denominated in the Ukrainian hryvnia, Russian ruble, and Polish zloty, respectively. Comparatively, the same foreign currencies accounted for approximately 9.9%, 12.6% and 10.6% of Grid Dynamics’ $25.6 million and 10.7%, 15.6%, and 10.0% of Grid Dynamics’ $65.0 million of combined cost of revenue and total operating expenses in the three and six months ended June 30, 2020. Grid Dynamics does not currently hedge its foreign currency exposure, although it seeks to minimize such exposure by limiting cash transfers to amounts necessary to fund subsidiary operating expenses for a short period, typically one to two weeks. When and where possible, Grid Dynamics seeks to match expenses to the U.S. dollar. For example, in Ukraine, Grid Dynamics generally pays salaries in the current hryvnia equivalent of an agreed U.S. dollar amount, consistent with local requirements. As a result, a significant portion of Grid Dynamics’ exposure to fluctuations in the value of the Ukrainian hryvnia against the U.S. dollar is naturally hedged. Management carefully evaluates its exposure to foreign currency risk and, though Grid Dynamics does not currently hedge this exposure using financial instruments, it may do so in the future. See Item 7A, “Quantitative and Qualitative Disclosures about Market Risk—Foreign Currency Exchange Rate Risk” below for more information about Grid Dynamics’ exposure to foreign currency exchange rates.

 

Seasonality

 

Grid Dynamics’ business is subject to seasonal trends that impact its revenues and profitability between quarters. Some of the factors that influence the seasonal trends include the timing of holidays in the countries in which Grid Dynamics operates and the U.S. retail cycle, which drives the behavior of Grid Dynamics’ retail customers. Excluding the impact of growth in its book of business, Grid Dynamics has historically recorded higher revenue and gross profit in the second and third quarters of each year compared to the first and fourth quarters of each year. The Christmas holiday season in Russia and Ukraine, for example, falls in the first quarter of the calendar year, resulting in reduced activity and billable hours. In addition, many of Grid Dynamics’ retail sector customers tend to slow their discretionary spending during the holiday sale season, which typically lasts from late November (before Thanksgiving) through late December (after Christmas).

 

Non-GAAP Measures

 

To supplement Grid Dynamics’ consolidated financial data presented on a basis consistent with U.S. GAAP, this Quarterly Report contains certain non-GAAP financial measures, including Non-GAAP EBITDA, Non-GAAP Net Income and Non-GAAP Diluted Earnings Per Share, or EPS. Grid Dynamics has included these non-GAAP financial measures because they are financial measures used by Grid Dynamics’ management to evaluate Grid Dynamics’ core operating performance and trends, to make strategic decisions regarding the allocation of capital and new investments and are among the factors analyzed in making performance-based compensation decisions for key personnel. These measures exclude certain expenses that are required under U.S. GAAP. Grid Dynamics excludes these items because they are not part of core operations or, in the case of stock-based compensation, non-cash expenses that are determined based in part on Grid Dynamics’ underlying performance.

 

26

 

 

Grid Dynamics believes these supplemental performance measurements are useful in evaluating operating performance, as they are similar to measures reported by its public industry peers and those regularly used by security analysts, investors and other interested parties in analyzing operating performance and prospects. These non-GAAP financial measures are not intended to be a substitute for any GAAP financial measures and, as calculated, may not be comparable to other similarly titled measures of performance of other companies in other industries or within the same industry.

 

There are significant limitations associated with the use of non-GAAP financial measures. Further, these measures may differ from the non-GAAP information, even where similarly titled, used by other companies and therefore should not be used to compare our performance to that of other companies. Grid Dynamics compensates for these limitations by providing investors and other users of its financial information a reconciliation of non-GAAP measures to the related GAAP financial measures. Grid Dynamics encourages investors and others to review its financial information in its entirety, not to rely on any single financial measure and to view its non-GAAP measures in conjunction with GAAP financial measures.

 

Grid Dynamics defines and calculates its non-GAAP financial measures as follows:

 

Non-GAAP EBITDA: Net income/(loss) before interest income/expense, provision for income taxes and depreciation and amortization, and further adjusted for the impact of stock-based compensation expense, transaction-related costs (which include, when applicable, professional fees, retention bonuses, and consulting, legal and advisory costs related to Grid Dynamics’ merger and acquisition and capital-raising activities), impairment of goodwill and other income/expenses, net (which includes mainly interest income and expense, foreign currency transaction losses and gains, fair value adjustments and other miscellaneous expenses), and restructuring costs.

 

Non-GAAP Net Income: Net income/(loss) adjusted for the impact of stock-based compensation, impairment of goodwill, transaction-related costs, restructuring costs, other income/expenses, net, and the tax impacts of these adjustments.

 

Non-GAAP Diluted EPS: Non-GAAP Net income, divided by the diluted weighted-average number of common shares outstanding for the period.

 

The following table presents the reconciliation of Grid Dynamics’ Non-GAAP EBITDA to its consolidated net loss, the most directly comparable GAAP measure, for the periods indicated:

 

  

Three months ended

June 30,

  

Six Months Ended

June 30,

 
(in thousands)  2021   2020   2021   2020 
GAAP net loss  $(1,483)  $(2,166)  $(3,545)  $(6,762)
Adjusted for:                    
Depreciation and amortization   1,154    588    2,100    1,234 
Provision/(benefit) for income taxes   2,788    (813)   2,022    (3,495)
Stock-based compensation   6,675    3,654    12,346    8,458 
Transaction and transformation-related costs (1)   518        942    3,940 
Restructuring costs (2)       143        832 
Other (income)/expenses, net (3)   79    (208)   1,129    36 
Non-GAAP EBITDA  $9,731   $1,198   $14,994   $4,243 

 

 

(1)

Transaction and transformation-related costs include, when applicable, external deal costs, transaction-related professional fees, transaction-related retention bonuses, which are allocated proportionally across cost of revenue, engineering, research and development, sales and marketing and general and administrative expenses as well as other transaction-related costs including integration expenses consisting of outside professional and consulting services.

(2)We implemented a cost reduction plan during first quarter of 2020. During the three and six months ended June 30, 2020, we incurred restructuring and severance charges of $0.1 million and $0.8 million, respectively, primarily resulting from a reduction in workforce and other charges. We did not incur any restructuring expenses during the three and six months ended June 30, 2021.

(3)

Other expenses consist primarily of losses and gains on foreign currency transactions, fair value adjustments, and other miscellaneous non-operating expenses and other income consists primarily of interest on cash held at banks.

 

27

 

 

The following table presents a reconciliation of Grid Dynamics’ Non-GAAP Diluted EPS and its Non-GAAP Net Income to its consolidated net loss for the periods indicated:

 

  

Three months ended

June 30,

  

Six Months Ended

June 30,

 
(in thousands, except per share data)  2021   2020   2021   2020 
GAAP net loss  $(1,483)  $(2,166)  $(3,545)  $(6,762)
Adjusted for:                    
Stock-based compensation   6,675    3,654    12,346    8,458 
Transaction and transformation-related costs (1)   518        942    3,940 
Restructuring costs (2)       143        832 
Other (income)/expenses, net (3)   79    (208)   1,129    36 
Tax impact of non-GAAP adjustments (4)   301    (990)   (1,717)   (4,526)
Non-GAAP Net Income  $6,090   $433   $9,155   $1,978 
Non-GAAP Diluted EPS(5)  $0.10   $0.01   $0.15   $0.05 
Number of shares used in the Non-GAAP Diluted EPS   60,996    53,082    60,799    43,888 

 

 

(1)

Transaction and transformation-related costs include, when applicable, external deal costs, transaction-related professional fees, transaction-related retention bonuses, which are allocated proportionally across cost of revenue, engineering, research and development, sales and marketing and general and administrative expenses as well as other transaction-related costs including integration expenses consisting of outside professional and consulting services.

(2)We implemented a cost reduction plan during first quarter of 2020. During the three and six months ended June 30, 2020, we incurred restructuring and severance charges of $0.1 million and $0.8 million, respectively, primarily resulting from a reduction in workforce and other charges. We did not incur any restructuring expenses during the three and six months ended June 30, 2021.

(3)

Other expenses consist primarily of losses and gains on foreign currency transactions, fair value adjustments, and other miscellaneous non-operating expenses and other income consists primarily of interest on cash held at banks.

(4)

Reflects the estimated tax impact of the non-GAAP adjustments presented in the table.

(5)

Non-GAAP Diluted EPS is calculated by dividing Non-GAAP Net Income/(Loss) by the diluted weighted-average shares outstanding. From the three months ended December 31, 2020 onwards, we have chosen to calculate its Non-GAAP Diluted EPS based on the diluted share count even in net GAAP loss situation. This methodology differs from the prior approach when we applied the basic share count in situations of a net GAAP loss and a positive non-GAAP net income. Management believes that the new methodology provides better representation of the company’s financial results as it takes into account the significance of the dilutive impact from any outstanding equity instruments in a GAAP net loss/non-GAAP Net income situation.

(1)

 

28

 

 

Key Components of Revenue and Expenses

 

Revenue

 

Grid Dynamics generates revenue by providing focused and complex services in the area of software engineering, development, integration, testing, and operations of digital services. Grid Dynamics provides services mainly on a time and materials basis and, to a much lesser extent, on a fixed-fee basis. While fixed-fee contracts currently represent an immaterial portion of overall revenue for the periods presented, Grid Dynamics expects proportionate revenue from fixed-fee contracts to increase in future periods. On a time and materials basis, Grid Dynamics earns and recognizes revenue as hours and costs are incurred. On its current and future fixed fee contracts, Grid Dynamics earns and recognizes revenue as the work is performed, the monthly calculation of which is based upon actual labor hours incurred and level of effort expended throughout the duration of the contract. For both time and materials contracts and fixed fee contracts, hourly rates are typically determined based on the location and experience of Grid Dynamics personnel selected to perform the service and are negotiated for each contract or statement of work, as the case may be. For fixed fee contracts, the fixed fee generally remains constant for the contracted project period unless the customer directs a change in scope of project work or requests additional Grid Dynamics employees in excess of those scheduled for a specific project.

 

In select cases, Grid Dynamics offers volume discounts or early settlement discounts, which are recorded as contra-revenue items. Volume discounts apply once the customer reaches certain contractual spend thresholds. Early settlement discounts are issued contingent upon the timing of the payment from the customer. If there is uncertainty about project completion or receipt of payment for services provided, revenue is deferred until the uncertainty is sufficiently resolved.

 

Costs and Expenses

 

Cost of Revenue. Cost of revenue consists primarily of salaries and employee benefits, including performance bonuses and stock-based compensation, and travel expenses for client-serving personnel. Cost of revenue also includes depreciation and amortization expense related to client-serving activities.

 

Engineering, Research and Development. Engineering, research and development expenses consist mainly of salaries and employee benefits including performance bonuses and stock-based compensation for personnel engaged in the design and development of solutions. Engineering, research and development expenses also include depreciation and amortization expenses related to such activities. Engineering, research and development costs are expensed as incurred.

 

Sales and Marketing. Sales and marketing expenses consist primarily of expenses associated with promoting and selling Grid Dynamics’ services and consists mainly of salaries and employee benefits, including performance bonuses and stock-based compensation, marketing events, travel, as well as depreciation and amortization expenses related to such activities.

 

General and Administrative. General and administrative expenses consist primarily of administrative personnel and officers’ salaries and employee benefits including performance bonuses and stock-based compensation, legal and audit expenses, insurance, operating lease expenses (mainly facilities and vehicles) and other facility costs, workforce global mobility initiatives, restructuring and employee relocations cost (not in connection with customer projects), and depreciation and amortization expenses related to such activities. General and administrative expenses include a substantial majority of Grid Dynamics’ stock-based compensation costs for the financial periods discussed herein.

 

Provision for Income Taxes. Grid Dynamics follows the asset and liability method of accounting for income taxes, whereby deferred income taxes are recognized for the tax consequences of temporary differences between the financial statement carrying amounts and the tax basis of the assets and liabilities. The provision for income taxes reflects income earned and taxed in the various U.S. federal and state and non-U.S. jurisdictions. Jurisdictional tax law changes, increases or decreases in permanent differences between book and tax items, accruals, or adjustments of accruals for tax contingencies or valuation allowances, and the change in the mix of earnings from these taxing jurisdictions all affect the overall effective tax rate.

 

29

 

 

Results of Operations

 

The three and six months ended June 30, 2021compared to the three and six months ended June 30, 2020

 

The following table sets forth a summary of Grid Dynamics’ consolidated results of operations for the interim periods indicated, and the changes between periods:

 

  

Three months ended

June 30,

         
(unaudited, in thousands, except percentages)  2021   2020   Change 
Revenue  $47,676   $22,368   $25,308   113.1%
Cost of revenue   27,879    13,982    13,897    99.4%
Gross profit   19,797    8,386    11,411    136.1%
Engineering, research, and development   1,772    2,577    (805)   (31.2)%
Sales and marketing   2,837    1,637    1,200    73.3%
General and administrative   13,804    7,359    6,445    87.6%
Total operating expense   18,413    11,573    6,840    59.1%
Profit/(loss) from operations   1,384    (3,187)   4,571    (143.4)%
Other income/(expenses), net   (79)   208    (287)   (138.0)%
Profit/(loss) before income taxes   1,305    (2,979)   4,284    (143.8)%
Provision/(benefit) for income taxes   2,788    (813)   3,601    (442.9)%
Net loss   (1,483)   (2,166)   683    (31.5)%
Foreign currency translation adjustments, net of tax   (35)       (35)   n.m. 
Comprehensive loss  $(1,518)  $(2,166)  $648   (29.9)%

 

 

n.m. = not meaningful.

 

  

Six Months Ended

June 30,

         
(unaudited, in thousands, except percentages)  2021   2020   Change 
Revenue  $86,810   $54,825   $31,985    58.3%
Cost of revenue   51,676    36,621    15,055    41.1%
Gross profit   35,134    18,204    16,930    93.0%
Engineering, research, and development   3,555    5,117    (1,562)   (30.5)%
Sales and marketing   5,869    5,206    663    12.7%
General and administrative   26,104    18,102    8,002    44.2%
Total operating expense   35,528    28,425    7,103    25.0%
Loss from operations   (394)   (10,221)   9,827    (96.1)%
Other expenses, net   (1,129)   (36)   (1,093)   3,036.1%
Loss before income taxes   (1,523)   (10,257)   8,734    (85.2)%
Provision/(benefit) for income taxes   2,022    (3,495)   5,517    (157.9)%
Net loss   (3,545)   (6,762)   3,217    (47.6)%
Foreign currency translation adjustments, net of tax   14        14    n.m. 
Comprehensive loss  $(3,531)  $(6,762)  $3,231    (47.8)%

 

30

 

 

Revenues by Vertical. We assign our customers into one of our four main vertical markets or a group of various industries where we are increasing our presence, which we label as “Verticals”. The following table presents our revenues by vertical and revenues as a percentage of total revenues by vertical for the periods indicated:

 

   Three months ended June 30, 
(unaudited, in thousands, except percentages)  2021   % of revenue   2020   % of revenue 
Technology, Media and Telecom  $16,115    33.8%  $11,975    53.5%
Retail   12,729    26.7%   4,000    17.9%
Finance   4,071    8.5%   3,522    15.7%
CPG/Manufacturing   9,899    20.8%   2,472    11.1%
Other   4,862    10.2%   399    1.8%
Total  $47,676    100.0%  $22,368    100.0%

 

   Six months ended June 30, 
(unaudited, in thousands, except percentages)  2021   % of revenue   2020   % of revenue 
Technology, Media and Telecom  $30,526    35.2%  $22,052    40.2%
Retail   21,579    24.9%   20,099    36.7%
Finance   7,509    8.6%   7,555    13.8%
CPG/Manufacturing   18,624    21.5%   4,655    8.5%
Other   8,572    9.8%   464    0.8%
Total  $86,810    100.0%  $54,825    100.0%

 

Revenue. Revenue increased by $25.3 million, or 113.1%, to $47.7 million in the three months ended June 30, 2021 from $22.4 million in the three months ended June 30, 2020. Revenue increased by $32.0 million, or 58.3%, to $86.8 million in the six months ended June 30, 2021 from $54.8 million in the six months ended June 30, 2020. The year- over- year increases, both on a three month and six-month basis, were largely driven by the improved business conditions as the company recovered from the impact of COVID-19 that resulted in increased billable headcount and billable hours. Additionally, the acquisitions of Daxx and Tacit contributed to the year-over-year growth, both on a three month and six-month basis. Combined, these two acquisitions contributed a total of $9.3 million and $15.8 million during the three and six months ended June 30, 2021, respectively.

 

Cost of Revenue and Gross Profit. Cost of revenue increased by $13.9 million, or 99.4%, to $27.9 million in the three months ended June 30, 2021 from $14.0 million in the three months ended June 30, 2020 largely from increased costs of personnel to support higher revenue. This was offset by lower expenses, such as travel related costs. Cost of revenue increased by $15.1 million, or 41.1%, to $51.7 million in the six months ended June 30, 2021 from $36.6 million in the same period of June 30, 2020, largely from increased costs of personnel to support higher revenue offset by lower expenses, such as travel related expenses and retention bonuses.

 

Gross profit increased by $11.4 million, or 136.1%, to $19.8 million in the three months ended June 30, 2021 from $8.4 million in the three months ended June 30, 2020. Gross margin (gross profit as a percentage of revenue) increased by 4.0 percentage points to 41.5% in the three months ended June 30, 2021 from 37.5% in the three months ended June 30, 2020. Gross profit increased by $16.9 million, or 93.0%, to $35.1 million in the six months ended June 30, 2021 from $18.2 million in the six months ended June 30, 2020. Gross margin (gross profit as a percentage of revenue) increased by 7.3 percentage points to 40.5% in the six months ended June 30, 2021 from 33.2% in the same period of 2020. The increase in gross margins, both on a three month and six-month basis, was largely driven by a combination of increased billable workforce utilization and greater mix shift towards offshore delivery locations. Additionally, in the three and six months ended June 30, 2020, our business was severely impacted by COVID-19 which resulted in a significant proportion of our workforce becoming non-billable resulting in lower gross margins in comparison to the three and six months ended June 30, 2021.

 

31

 

 

Engineering, Research and Development. Engineering, research and development expenses decreased by $0.8 million to $1.8 million during the three months ended June 30, 2021, a 31.2% decrease from $2.6 million in the second quarter of 2020. During the first half of 2021, engineering, research and development expenses decreased by 30.5% to $3.6 million from $5.1 million during the six months ended June 30, 2020. The decrease was primarily due to high utilization of our personnel and decrease in retention bonuses.

 

Sales and Marketing. Sales and marketing expenses increased by $1.2 million, or 73.3% to $2.8 million in the three months ended June 30, 2021. The increase was mainly due to increase in sales personnel and new sales initiatives as well as increase in wages in 2021. Sales and marketing expenses accounted for 6.0% of Grid Dynamics’ revenue in the three months ended June 30, 2021 compared to 7.3% in the same period of last year, a decrease of 1.3%. The decrease was due mainly to decrease in marketing and sales events due to the COVID-19 pandemic. Sales and marketing expense remained on relatively the same level during the first half of 2021 compared to the same period of 2020. Sales and marketing expense accounted for 6.8% of Grid Dynamics’ revenue in the six months ended June 30, 2021 compared to 9.5% in the six months ended June 30, 2020, a decrease of 2.7 percentage points mainly to decrease in marketing and sales events due to the COVID-19 pandemic.

 

General and Administrative. General and administrative expenses increased by $6.4 million to $13.8 million in the three months ended June 30, 2021 and increased by $8.0 million, or 44.2%, to $26.1 million in the six months ended June 30, 2021 from $18.1 million in the same period of 2020. The increase was mainly due to increase in stock-based compensation, 2021 wages and bonuses, increase in legal and professional fees due to the recent acquisition of Tacit in May of 2021 and additional facilities expenses as well as amortization of intangibles resulting from it. General and administrative expenses accounted for 30.1% of Grid Dynamics’ revenue in the first half of 2021, a decrease of 2.9 percentage points from 33.0% in the six months ended June 30, 2020.

 

Other Income/(Expenses), Net. Other expenses, net changed by $0.3 million for the three months ended June 30, 2021 as compared to Other income, net recorded in the same period last year reflecting increased interest, other income and miscellaneous expenses. Other income/(expenses), net changed by $1.1 million for the six months ended June 30, 2021 as compared to the six months ended June 30, 2020, mainly due to changes in the fair value of private warrants of $0.9 million in the first quarter of 2021.

 

Provision/(Benefit) for Income Tax. During the three months ended June 30, 2021 we recognized a provision for income tax of $2.8 million compared to benefit for income tax of $(0.8) million in the same period of 2020. The difference in tax provision was attributable mainly to Section 162(m) compensation deduction limitations partially offset by stock-based compensation excess tax benefit. Additionally, the United Kingdom’s (“UK”) recently enacted Finance Act 2021 has increased its corporate tax rate to 25% for companies with profits exceeding 250,000 pounds, effective beginning April 01, 2023. As a result of this change in tax law, the Company remeasured its UK deferred taxes which resulted in a $0.5 million discrete tax expense in the three months ended June 30, 2021. Provision for income tax was $2.0 million in the six months ended June 30, 2021 compared to benefit for income tax of $(3.5) million in the six months ended June 30, 2020.

 

During three and six months ended June 30, 2021, we recognized net loss of $(1.5) million and $(3.5) million, respectively, compared to net loss of $(2.2) million and $(6.8) million in the same periods of 2020 due to the reasons stated above.

 

Liquidity and Capital Resources

 

Grid Dynamics measures liquidity in terms of its ability to fund the cash requirements of its business operations, including working capital needs, capital expenditures, contractual obligations, and other commitments with cash flows from operations and other sources of funding. Grid Dynamics’ current liquidity needs relate mainly to compensation and benefits of Grid Dynamics’ employees and contractors and capital expenditures for computer hardware and office furniture. Grid Dynamics’ ability to expand and grow its business will depend on many factors including its capital expenditure needs and the evolution of its operating cash flows. Grid Dynamics may need more cash resources due to changed business conditions or other developments, including investments or acquisitions. Grid Dynamics believes that its current cash position on its balance sheet of $68.0 million as of June 30, 2021, as well as the net proceeds received as a result of our follow-on public offering that closed on July 6, 2021, as described in Note 13 to the condensed consolidated financial statements, is sufficient to fund its currently expected levels of operating, investing and financing expenditures for a period of twelve months from the date of this filing. However, if Grid Dynamics’ resources are insufficient to satisfy its cash requirements, it may need to seek additional equity or debt financing, which may be subject to conditions outside of Grid Dynamics’ control and may not be available on terms acceptable to Grid Dynamics’ management or at all.

 

32

 

 

As of June 30, 2021, Grid Dynamics had cash and cash equivalents amounting to $68.0 million (compared to $112.7 million at December 31, 2020). Of this amount, $7.4 million was held outside the United States, namely in Russia, Ukraine, Poland, Serbia, the Netherlands, UK, Mexico, Moldova, and Singapore (compared to $3.1 million as of December 31, 2020). As many of Grid Dynamics’ assets, operations and employees are located in these countries, Grid Dynamics expects that all such cash and cash equivalents will be used to fund future operating needs and Grid Dynamics’ management has no intention of repatriating the funds. If Grid Dynamics decided to remit funds from these countries to the United States in the future, whether in the form of inter-company dividends or otherwise, they may be subject to foreign withholding taxes. In addition, Grid Dynamics’ cash in banks in Russia, Ukraine, Poland, Moldova, Serbia, and Mexico may be subject to other risks, as the banking sector in certain of these countries is subject to periodic instability, may be subject to sanctions and may be subject to capital adequacy and other banking standards that are substantially less rigorous than those of the United States.

 

On July 6, 2021, Grid Dynamics closed a follow-on public offering of common stock that resulted in $78.3 million net proceeds, after deducting underwriting discounts and commissions and estimated offering expenses payable by the Company.

 

Grid Dynamics does not have any debt outstanding as of June 30, 2021 and or December 31, 2020.

 

Our performance stock units, or PSUs, vested upon the satisfaction of a performance-based vesting condition. The compensation committee of our board of directors certified that the performance conditions of the PSUs were met, and PSUs were released on February 12, 2021. Approximately 0.7 million shares were issued upon vesting of the PSUs and 0.75 million shares were net withheld to cover $10.7 million employees’ tax withholding obligations. In the six months ending June 30, 2021, approximately 0.8 million shares underlying RSUs held by our officers being vested. Upon vesting of the RSUs, approximately 0.4 million shares were released, and 0.4 million shares were net withheld to cover the employees’ tax withholding obligations. We have determined that our policy will be to require individuals to withhold to cover taxes, so approximately 52% of the vested shares were withheld on the settlement date, with the equivalent value being paid by us from our working capital. The total net tax withholding obligations for the six months ended June 30, 2021 were approximately $18.9 million in the aggregate for the option exercises, RSU and PSU releases.

 

Cash Flows

 

The following table summarizes Grid Dynamics’ cash flows for the periods indicated:

 

  

Six Months Ended

June 30,

 
(unaudited, in thousands)  2021   2020 
Net cash provided by/(used in) operating activities  $6,650   $(921)
Net cash used in investing activities  $(32,525)  $(1,110)
Net cash provided by/(used in) financing activities  $(18,910)  $82,927 
Effect of exchange rate changes on cash and cash equivalents  $14   $ 
Net increase/(decrease) in cash and cash equivalents  $(44,771)  $80,896 
Cash, cash equivalents (beginning of period)  $112,745   $42,189 
Cash, cash equivalents (end of period)  $67,974   $123,085 

 

Operating Activities. Net cash provided by operating activities for the six months ended June 30, 2021 increased by $7.6 million to $6.7 million from $(0.9) million used in the same period in 2020, driven by higher cash operating profit (before non-cash depreciation and amortization and stock-based compensation charges). The key reasons for the increase in cash operating profit in the six months ended June 30, 2021 in comparison to the six months ended June 30, 2020, were higher levels of revenue and greater billable utilization resulting in higher profitability.

 

Investing Activities. Net cash used in investing activities during the six months ended June 30, 2021 was $(32.5) million, which primarily reflects the acquisition of Tacit, compared to $(1.1) million used in the same period in 2020 reflecting mainly capital expenditures for computer hardware, related equipment and software.

 

Financing Activities. Net cash used in financing activities was $(18.9) million in the six months ended June 30, 2021, reflecting primarily the tax withholding obligations due to issuance of shares in connection with vested awards. Net cash provided by financing activities was $82.9 million in the six months ended June 30, 2020, reflecting primarily the proceeds from the Business Combination.

 

33

 

 

Contractual Obligations

 

Grid Dynamics’ outstanding operating leases and software service agreement obligations have not changed materially since December 31, 2020. In addition, Grid Dynamics purchases software licenses in the ordinary course of business.

 

Non-perpetual licenses are typically renewed annually. Grid Dynamics does not have any material obligations under contractual arrangements other than as disclosed in this report.

 

Off-Balance Sheet Arrangements and Commitments

 

Except for its credit support for the letter of credit and balances on corporate credit cards, Grid Dynamics does not have any off-balance sheet arrangements of the kind required to be disclosed under SEC rules and does not have any off-balance sheet or contingent commitments, except as described above with respect to operating leases.

 

As a result of analysis related to Grid Dynamics’ functional control of subcontractor GD Ukraine, LLC, the subcontractor was determined to be a variable interest entity (“VIE”) and is therefore consolidated in Grid Dynamics’ financial statements. The assets and liabilities of this VIE consist primarily of intercompany balances and transactions, all of which have been eliminated in consolidation.

 

Critical Accounting Policies

 

Grid Dynamics management’s discussion and analysis of our financial condition and results of operations is based on the condensed consolidated financial statements, which have been prepared in accordance with U.S. GAAP. Preparation of the financial statements requires Grid Dynamics to make judgments, estimates and assumptions that impact the reported amount of revenue and expenses, assets and liabilities and the disclosure of contingent assets and liabilities. Grid Dynamics considers an accounting judgment, estimate or assumption to be critical when (1) an estimate or assumption is complex in nature or requires a high degree of judgment, and (2) the use of different judgments, estimates and assumptions could have a material impact on Grid Dynamics’ condensed consolidated financial statements. Grid Dynamics’ critical accounting policies are described in Note 2 to its condensed consolidated financial statements.

 

Emerging Growth Company Accounting Election

 

Section 102(b)(1) of the Jumpstart Our Business Startups Act of 2012 (“JOBS Act”) exempts emerging growth companies from being required to comply with new or revised financial accounting standards until private companies are required to comply with the new or revised financial accounting standards. The JOBS Act provides that a company can choose not to take advantage of the extended transition period and comply with the requirements that apply to non-emerging growth companies and any such election to not to take advantage of the extended transition period is irrevocable. Prior to the Business Combination, ChaSerg was an “emerging growth company” as defined in Section 2(a) of the Securities Act and has elected to take advantage of the benefits of this extended transition period. Following the consummation of the Business Combination, Grid Dynamics remains an emerging growth company and continues to take advantage of the benefits of the extended transition period.

 

Recently Adopted and Issued Accounting Pronouncements

 

Recently issued and adopted accounting pronouncements are described in Note 2 to Grid Dynamics’ condensed consolidated financial statements.

 

Item 3. Quantitative and Qualitative Disclosures About Market Risk

 

Grid Dynamics has in the past and may in the future be exposed to certain market and credit risks in the ordinary course of business, including exposure related to fluctuations in foreign currency rates, and on occasion and to a lesser extent, changes in interest rates and concentration of credit risk. In addition, Grid Dynamics’ international operations are subject to risks related to differing economic conditions, changes in political climate, differing tax structures, and other regulations and restrictions. See the section titled “Risk Factors” for additional information.

 

34

 

 

Foreign Currency Exchange Rate Risk

 

Grid Dynamics is exposed to foreign currency exchange rate risk and its profit margins are subject to volatility between periods due to changes in foreign currency exchange rates relative to the U.S. dollar. Grid Dynamics’ functional currency apart from the U.S. dollar includes EURO, British pounds, Mexican pesos, Moldovan leu. In addition, Grid Dynamics’ profit margins are subject to volatility as a result of changes in foreign exchange rates. When and where possible, Grid Dynamics seeks to match expenses to the U.S. dollar, and believes, due to Ukrainian payroll being pegged to the U.S. dollar, that a significant portion of its foreign currency exchange rate exposure to the Ukrainian hryvnia is naturally hedged. In future periods, Grid Dynamics may also become materially exposed to changes in the value of the Serbian dinar, Mexican pesos and Moldovan leu against the U.S. dollar, due to the recent acquisitions and continuous expansion of operations.

 

In the three months ended June 30, 2021, approximately 25.3%, 11.9% and 7.4% of Grid Dynamics’ $46.3 million of combined cost of revenue and total operating expenses were denominated in the Ukrainian hryvnia, Russian ruble, and Polish zloty, respectively. Comparatively, the same foreign currencies accounted for approximately 9.9%, 12.6% and 10.6% of Grid Dynamics’ $25.6 million of combined cost of revenue and total operating expenses in the three months ended June 30, 2020.

 

In the three months ended June 30, 2021:

 

a 10% decrease in the value of the Russian rouble against the U.S. dollar would have resulted in a $0.5 million increase in Grid Dynamics’ income from operations, while a 10% increase in the rouble’s value would have resulted in a $0.6 million decrease in income from operations.

 

a 10% decrease in the value of the Polish zloty against the U.S. dollar would have resulted in a $0.3 million increase in Grid Dynamics’ income from operations, while a 10% increase in the zloty’s value would have resulted in a $0.4 million decrease in income from operations.

 

In the three months ended June 30, 2020:

 

a 10% decrease in the value of the Russian rouble against the U.S. dollar would have resulted in a $0.3 million increase in Grid Dynamics’ income from operations, while a 10% increase in the rouble’s value would have resulted in a $0.4 million decrease in income from operations.

 

a 10% decrease in the value of the Polish zloty against the U.S. dollar would have resulted in a $0.2 million increase in Grid Dynamics’ income from operations, while a 10% increase in the zloty’s value would have resulted in a $0.3 million decrease in income from operations.

 

In the six months ended June 30, 2021, approximately 25.3%, 11.4% and 7.6% of Grid Dynamics’ $87.2 million of combined cost of revenue and total operating expenses were denominated in the Ukrainian hryvnia, Russian ruble, and Polish zloty, respectively. Comparatively, the same foreign currencies accounted for approximately 10.7%, 15.6%, and 10.0% of Grid Dynamics’ $65.0 million of combined cost of revenue and total operating expenses in the six months ended June 30, 2020.

 

In the six months ended June 30, 2021:

 

a 10% decrease in the value of the Russian rouble against the U.S. dollar would have resulted in a $0.9 million increase in Grid Dynamics’ income from operations, while a 10% increase in the rouble’s value would have resulted in a $1.1 million decrease in income from operations.

 

a 10% decrease in the value of the Polish zloty against the U.S. dollar would have resulted in a $0.6 million n increase in Grid Dynamics’ income from operations, while a 10% increase in the zloty’s value would have resulted in a $0.7 million decrease in income from operations.

 

35

 

 

In the six months ended June 30, 2020:

 

a 10% decrease in the value of the Russian ruble against the U.S. dollar would have resulted in a $0.9 million increase in Grid Dynamics’ income from operations, while a 10% increase in the ruble’s value would have resulted in a $1.2 million decrease in income from operations.

 

a 10% decrease in the value of the Polish zloty against the U.S. dollar would have resulted in a $0.6 million increase in Grid Dynamics’ income from operations, while a 10% increase in the zloty’s value would have resulted in a $0.7 million decrease in income from operations.

 

Grid Dynamics analyses sensitivity to the rouble and zloty separately because, in management’s experience, fluctuations in the value of these currencies against the U.S. dollar are frequently driven by distinct macroeconomic and geopolitical factors.

 

Grid Dynamics does not currently hedge its foreign currency exposure, although it seeks minimize it by limiting cash transfers to amounts necessary to fund subsidiary operating expenses for a short period, typically one week. Grid Dynamics’ management may evaluate new hedging strategies in future periods.

 

Item 4. Controls and Procedures

 

Evaluation of Disclosure Controls and Procedures

 

Our management, with the participation of our Chief Executive Officer and Chief Financial Officer, has evaluated the effectiveness of our disclosure controls and procedures (as such term is defined in Rules 13a-15(e) and 15d-15(e) under the Securities Exchange Act of 1934, as amended (the “Exchange Act”)) as of the end of the period covered by this quarterly report. Based on such evaluation, our Chief Executive Officer and Chief Financial Officer have concluded that, as of the end of such period, our disclosure controls and procedures were effective in recording, processing, summarizing and reporting on a timely basis, information required to be disclosed by us in the reports that we file or submit under the Exchange Act and were effective in ensuring that information required to be disclosed by us in the reports that we file or submit under the Exchange Act is accumulated and communicated to our management, including our Chief Executive Officer and Chief Financial Officer, as appropriate to allow timely decisions regarding required disclosure.

 

Changes in Internal Control Over Financial Reporting

 

Our management, including the CEO and CFO, confirmed there have been no changes in our internal control over financial reporting during the three months ended June 30, 2021 that have materially affected, or are reasonably likely to materially affect, our internal control over financial reporting.

 

Inherent Limitations on Effectiveness of Controls

 

Our management, including our CEO and CFO, do not expect that our disclosure controls or our internal control over financial reporting will prevent all errors and all fraud. A control system, no matter how well conceived and operated, can provide only reasonable, not absolute, assurance that the objectives of the control system are met. Further, the design of a control system must reflect the fact that there are resource constraints, and the benefits of controls must be considered relative to their costs. Because of the inherent limitations in all control systems, no evaluation of controls can provide absolute assurance that all control issues and instances of fraud, if any, have been detected. These inherent limitations include the realities that judgments in decision-making can be faulty, and that breakdowns can occur because of a simple error or mistake. Additionally, controls can be circumvented by the individual acts of some persons, by collusion of two or more people or by management override of the controls. The design of any system of controls is also based in part upon certain assumptions about the likelihood of future events, and there can be no assurance that any design will succeed in achieving its stated goals under all potential future conditions; over time, controls may become inadequate because of changes in conditions, or the degree of compliance with policies or procedures may deteriorate. Because of the inherent limitations in a cost-effective control system, misstatements due to error or fraud may occur and not be detected.

 

36

 

 

PART II — OTHER INFORMATION

 

Item 1. Legal Proceedings

 

Although we may, from time to time, be involved in litigation and claims arising out of our operations in the normal course of business, we are not currently a party to any material legal proceeding. In addition, we are not aware of any material legal or governmental proceedings against us or contemplated to be brought against us. Future litigation may be necessary, among other things, to defend us or our customers by determining the scope, enforceability, and validity of third-party proprietary rights or to establish our proprietary rights. The results of any litigation cannot be predicted with certainty and, regardless of the outcome, litigation can have an adverse impact on our company because of defense and settlement costs, diversion of management resources and other factors.

 

Item 1A. Risk Factors

 

This Quarterly Report on Form 10-Q contains forward-looking statements that are subject to risks and uncertainties that could cause actual results to differ materially from those projected. These risks and uncertainties include, but are not limited to, the risk factors set forth below. The risks and uncertainties described in this Quarterly Report on Form 10-Q are not the only ones we face. Additional risks and uncertainties not presently known to us or that we currently believe are immaterial may also affect our business. See the section titled “Special Note Regarding Forward-Looking Statements” of this Quarterly Report on Form 10-Q for a discussion of the forward-looking statements that are qualified by these risk factors. If any of these known or unknown risks or uncertainties actually occurs and have a material adverse effect on us, our business, financial condition and results of operations could be seriously harmed.

 

Summary of Risk Factors

 

Our business is subject to numerous risks and uncertainties that you should consider before investing in our company, as fully described below. The principal factors and uncertainties that make investing in our company risky include, among others:

 

We have a relatively short operating history and operate in a rapidly evolving industry, which makes it difficult to evaluate our future prospects and may increase the risk that we will not continue to be successful and may adversely impact our stock price.

 

We may be unable to effectively manage our growth or achieve anticipated growth, which could place significant strain on our management personnel, systems and resources.

 

Our revenues have historically been highly dependent on a limited number of clients and industries that are affected by seasonal trends, and any decrease in demand for outsourced services in these industries may reduce our revenues and adversely affect our business, financial condition and results of operations.

 

The impact of the COVID-19 pandemic has and may continue to affect our overall financial performance, business operations, and stock price.

 

Our revenues are highly dependent on clients primarily located in the U.S. Any economic downturn in the U.S. or in other parts of the world, including Europe, or disruptions in the credit markets may have a material adverse effect on our business, financial condition and results of operations.

 

We face intense competition.

 

Damage to our reputation may adversely impact our ability to generate and retain business.

 

Our failure to successfully attract, hire, develop, motivate and retain highly skilled personnel could have a significant adverse effect on our business, financial condition, and results of operations.

 

Our business operations may be severely disrupted if we lose the services of our senior executives and key employees.

 

37

 

 

Failure to adapt to changing technologies, methodologies, and evolving industry standards may have a material adverse effect on our business, financial condition, and results of operations.

 

Security breaches, system failures or errors, and other disruptions to our network could result in disclosure of confidential information and expose us to liability, which would cause our business and reputation to suffer.

 

Undetected software design defects, errors or failures may result in loss of business or in liabilities that could have a material adverse effect on our reputation, business and results of operations.

 

Acquisitions, strategic investments, partnerships or alliances could be difficult to identify and integrate, divert the attention of management, disrupt our business, dilute stockholder value and adversely affect our financial condition and results of operations, we may not achieve the financial and strategic goals that were contemplated at the time of a transaction, and we may be exposed to claims, liabilities and disputes as a result of the transaction that may adversely impact our business, operating results and financial condition.

 

Risks Related to Our Business, Operations and Industry

 

We have a relatively short operating history and operate in a rapidly evolving industry, which makes it difficult to evaluate future prospects and may increase the risk that we will not continue to be successful and may adversely impact our stock price.

 

We were founded in 2006 and have a relatively short operating history in the technology services industry, which is competitive and continuously evolving, subject to rapidly changing demands and constant technological developments. As a result, success and performance metrics are difficult to predict and measure. Since services and technologies are rapidly evolving and each company within the industry can vary greatly in terms of the services it provides, its business model and its results of operations, it can be difficult to predict how any company’s services, including ours, will be received in the market.

 

While many Fortune 1000 enterprises, including our clients, have been willing to devote significant resources to incorporate emerging technologies and related market trends into their business models, they may not continue to spend any significant portion of their budgets on services like those provided by us in the future. Neither our past financial performance nor the past financial performance of any other company in the technology services industry is indicative of how we will fare financially in the future. Our future profits may vary substantially from those of other companies and our past profits, making an investment in us risky and speculative. If clients’ demand for our services declines as a result of economic conditions, market factors or shifts in the technology industry, our business, financial condition and results of operations would be adversely affected.

 

As a recently formed public company, our stock performance is highly dependent on our ability to successfully execute and grow the business. Consequently, our stock price may be adversely impacted by our inability to execute to our plan, our inability to meet or exceed forward looking financial forecasts, and our inability to achieve our stated short-term and long-term goals.

 

We may be unable to effectively manage our growth or achieve anticipated growth, which could place significant strain on our management personnel, systems and resources.

 

Continued growth and expansion may increase challenges we face in recruiting, training and retaining sufficiently skilled professionals and management personnel, maintaining effective oversight of personnel and delivery centers, developing financial and management controls, coordinating effectively across geographies and business units, and preserving our culture and values. Failure to manage growth effectively could have a material adverse effect on the quality of the execution of our engagements, our ability to attract and retain IT professionals, as well as our business, financial condition and results of operations.

 

In addition, as we increase the size and complexity of projects that we undertake with clients, add new delivery sites, introduce new services or enter into new markets, we may face new market, technological, operational, compliance and administrative risks and challenges, including risks and challenges unfamiliar to us. We may not be able to mitigate these risks and challenges to achieve our anticipated growth or successfully execute large and complex projects, which could materially adversely affect our business, prospects, financial condition and results of operations.

 

38

 

 

Our revenues have historically been highly dependent on a limited number of clients and industries that are affected by seasonal trends, and any decrease in demand for outsourced services in these industries may reduce our revenues and adversely affect our business, financial condition and results of operations.

 

Our revenues have historically been highly dependent on a limited number of clients. In the three months ended June 30, 2021 and 2020, we generated a significant portion of our revenues from our largest clients. For example, we generated approximately 62.3% and 84.5% of our revenue from our 10 largest clients during the three months ended June 30, 2021 and 2020, respectively, and approximately 64.3% and 84.0% of our revenue from our 10 largest clients during six months ended June 30, 2021 and 2020, respectively. Our top two and three clients each accounted for greater than 10% of our revenue for the three months ended June 30, 2021 and 2020, respectively. Two and three customers individually accounted for greater than 10% of the sales for the six months ended June 30, 2021 and 2020, respectively. Since a substantial portion of our revenue is derived through time and materials contracts, which are mostly short-term in nature, a major client in one year may not provide the same level of revenues for us in any subsequent year. In addition, a significant portion of our revenues is concentrated in our top two industry verticals: technology and retail. Our growth largely depends on our ability to diversify the industries in which we serve, continued demand for our services from clients in these industry verticals and other industries that we may target in the future, as well as on trends in these industries to outsource the type of services we provide.

 

Our business is also subject to seasonal trends that impact our revenues and profitability between quarters, driven by the timing of holidays in the countries in which we operate and the U.S. retail cycle, which drives the behavior of several of our retail clients. Excluding the impact of growth in our book of business, we have historically recorded higher revenue and gross profit in the second and third quarters of each year compared to the first and fourth quarters of each year. The Christmas holiday season in Russia and Ukraine, for example, falls in the first quarter of the calendar year, resulting in reduced activity and billable hours of our engineering personnel. In addition, many of our retail sector clients tend to slow their discretionary spending during the holiday sale season, which typically lasts from late November (before Thanksgiving) through late December (after Christmas). Such seasonal trends may cause reductions in our profitability and profit margins during periods affected.

 

A reduction in demand for our services and solutions caused by seasonal trends, downturns in any of our targeted industries, a slowdown or reversal of the trend to outsource IT services in any of these industries or the introduction of regulations that restrict or discourage companies from outsourcing may result in a decrease in the demand for our services and could have a material adverse effect on our business, financial condition and results of operations.

 

The impact of the COVID-19 pandemic has and may continue to affect our overall financial performance, business operations, and stock price.

 

In December 2019, a novel coronavirus COVID-19 was reported in China, and in March 2020, the World Health Organization declared it a pandemic. This contagious disease pandemic has continued to spread across the globe and is impacting worldwide economic activity and financial markets, significantly increasing economic volatility and uncertainty. In response to this global pandemic, local, state, and federal governments have been prompted to take unprecedented steps that include, but are not limited to, travel restrictions, closure of businesses, social distancing, and quarantines.

 

From March 2020 onwards, we started witnessing the impacts of the COVID-19 pandemic to our revenues, largely as a consequence of the effect of the pandemic on the business conditions at some of our customers’ operations. The impacts have been more pronounced at our customers exposed to the retail vertical where store closures resulted in sales being severely impacted. Although we witnessed sequential growth in this vertical in the second half of 2020, revenues from most of our retail customers have not come back to pre-COVID-19 levels. The impact of the pandemic to other verticals of our business has largely been determined by customer-specific dynamics. The ongoing COVID-19 pandemic may pose risks in the future to our business as some of our customers are unable to recover to pre-COVID 19 levels of operation. Examples of the COVID-19 pandemic’s impact to our business have included a temporary scale back to our personnel on projects, our customers placing projects and statements of work (“SOWs”) on temporary hold, and request for longer payment terms. Additionally, because more of our personnel are working remotely, we face increased cyber threats that may affect our systems and networks or those of our clients and contractors, and we anticipate the potential for increased costs to maintain and help secure our infrastructure and data.

 

39

 

 

Although recent vaccine approvals and rollout have raised hopes of a turnaround in the COVID-19 pandemic later this year, renewed waves and new variants pose concerns for the outlook. Growth may be stymied if virus surges (including from new variants) prove difficult to contain, infections and deaths mount rapidly before vaccines are widely available, and social distancing or lockdowns are more stringent than anticipated. Slower-than-anticipated progress on medical interventions could dampen hopes of a relatively quick exit from the COVID-19 pandemic and weaken confidence. Specifically, vaccine rollout could suffer delays or be uneven, widespread hesitancy could hamper vaccine take-up, vaccines could deliver shorter-lived immunity than anticipated and advances on therapies could be limited. Intensifying social unrest, including due to higher inequality and unequal access to vaccines and therapies, could further complicate the recovery. Moreover, if policy support is withdrawn before full economic recovery, bankruptcies of viable but illiquid companies could mount, leading to further employment and income losses. The ensuing tighter financial conditions could increase rollover risks for vulnerable borrowers, add to the already large number of economies in debt distress, and increase insolvencies among corporations and households.

 

In the United States, given the widespread impact of the COVID-19 pandemic, substantial governmental support is still required and the recently passed American Rescue Plan may be insufficient for long-term economic sustainability should there be a protracted recovery. Furthermore, investors fleeing the Dollar could elevate inflation expectations and interest rates. Additionally, high unemployment could lead to mortgage and rental defaults adding losses to the commercial banking industry, resulting in higher loan-loss provision, tighter lending standards and lending curtailment. If the impacts of the COVID-19 pandemic are materially prolonged, it could result in a cascade of additional corporate filings for bankruptcies, further eroding market confidence and increasing unemployment rates. Together, these uncertainties and risks could have a material adverse impact not only on our financial condition, business and results of operations in the United States, but also on our consolidated financial conditions, business and results of operations.

 

There are no comparable recent events which may provide guidance as to the effect of the spread and the ultimate impact of the COVID-19 pandemic. Consequently, the total magnitude of impact to our business and duration of impact is uncertain and difficult to reasonably estimate at this time.

 

We continue to take precautionary measures intended to minimize the risk of the virus to our employees, our customers, and the communities in which we operate that include suspension of all non-essential travel. All of our facilities in the Central and Eastern Europe (“CEE”) region have been opened for employees to work following local government guidelines. That said, the COVID-19 pandemic has placed restrictions in movement, and the majority of our employees continue to work remotely. Additionally, we have been successful in transitioning the majority of our workforce to work remotely and this has resulted in minimal disruption in our ability to deliver services to our customers.

 

As of June 30, 2021 and December 31, 2020 our allowance for doubtful accounts was $0.2 million and $0.4 million, respectively and we continue to be engaged with all of our customers regarding their ability to fulfill their payment obligations. We continue to review our accounts receivable on a regular basis and have put in place regular review and processes to ensure payments from our customers.

 

Our revenues are highly dependent on clients primarily located in the U.S. Any economic downturn in the U.S. or in other parts of the world, including Europe, or disruptions in the credit markets may have a material adverse effect on our business, financial condition and results of operations.

 

The IT services industry is particularly sensitive to the economic environment and tends to decline during general economic downturns. We derive the majority of our revenues from clients in the U.S. In the event of an economic downturn in the U.S. or in other parts of the world, including Europe (where we have gained customers in the Netherlands, Germany and the United Kingdom through our acquisition of Daxx Web Industries B.V.("Daxx") in December 2020), as well as through our acquisition of Tacit in May 2021 our existing and prospective clients may reduce or postpone their technology spending significantly, which may in turn lower the demand for our services and may have a material adverse effect on our business, financial condition and results of operations. In addition, if a disruption in the credit markets were to occur, it could pose a risk to our business if clients or vendors are unable to obtain financing to meet payment or delivery obligations to us or if we are unable to obtain necessary financing. The COVID-19 pandemic has had adverse effects on economies and financial markets globally, which have particularly impacted many small, medium as well as large-sized businesses. Although the U.S. government and others throughout the world have or have taken steps to provide monetary and fiscal assistance to individuals and businesses affected by the pandemic, it is unclear whether these government actions will be sufficient to successfully avert or mitigate any economic downturn. Any economic downturn resulting from the COVID-19 pandemic and preventative measures taken by governments and private business worldwide could decrease technology spending and negatively affect demand for our offerings, which could materially adversely affect our business, prospects, financial condition and results of operations.

 

40

 

 

We face intense competition.

 

The market for technology and IT services is highly competitive and subject to rapid change and evolving industry standards and we expect competition to persist and intensify. We face competition from offshore IT services providers in other outsourcing destinations with low wage costs such as India, China, CEE countries and Latin America, as well as competition from large, global consulting and outsourcing firms and in-house IT departments of large corporations. Industry clients tend to engage multiple IT services providers instead of using an exclusive IT services provider, which could reduce our revenues to the extent that our clients obtain services from competing companies. Industry clients may prefer IT services providers that have more locations or that are based in countries that are more cost-competitive, stable and/or secure than some of the emerging markets in which we operate.

 

Our primary competitors include IT service providers such as Andersen Lab, Ciklum, EPAM Systems, Inc., Globant S.A. and Endava plc; global consulting and traditional IT services companies, such as Accenture plc, Capgemini SE, Cognizant Technology Solutions Corporation, SoftServe, Inc. and Tata Consultancy Services Limited; and in-house development departments of our clients. Many of our present and potential competitors have substantially greater financial, marketing and technical resources, and name recognition than we do. Therefore, they may be able to compete more aggressively on pricing or devote greater resources to the development and promotion of technology and IT services and we may be unable to retain our clients while competing against such competitors. Increased competition as well as our inability to compete successfully may have a material adverse effect on our business, prospects, financial condition and results of operations.

 

Damage to our reputation may adversely impact our ability to generate and retain business.

 

Since our business involves providing tailored services and solutions to clients, we believe that our corporate reputation is a significant factor when an existing or prospective client is evaluating whether to engage our services as opposed to those of our competitors. In addition, we believe that our brand name and reputation also play an important role in recruiting, hiring and retaining highly skilled personnel.

 

However, our brand name and reputation is potentially susceptible to damage by factors beyond our control, including actions or statements made by current or former clients and employees, competitors, vendors, adversaries in legal proceedings, government regulators and the media. There is a risk that negative information about us, even if untrue, could adversely affect our business. Any damage to our reputation could be challenging to repair, could make potential or existing clients reluctant to select us for new engagements, could adversely affect our recruitment and retention efforts, and could also reduce investor confidence.

 

Our failure to successfully attract, hire, develop, motivate and retain highly skilled personnel could have a significant adverse effect on our business, financial condition, and results of operations.

 

Our continued growth and success and operational efficiency is dependent on our ability to attract, hire, develop, motivate and retain highly skilled personnel, including IT engineers and other technical personnel, in the geographically diverse locations in which we operate. Competition for highly skilled IT professionals can be intense in the regions in which we operate, and we may experience significant employee attrition rates due to such competition. While our management targets a voluntary attrition rate (expressed as a percentage) no higher than in the low-twenties, the significant market demand for highly skilled IT personnel and competitors’ activities may induce our qualified personnel to leave and make it more difficult for us to recruit new employees with suitable knowledge, experience and professional qualifications. High attrition rates of IT personnel would increase our operating costs, including hiring and training costs, and could have an adverse effect on our ability to complete existing contracts in a timely manner, meet client objectives and expand our business. Failure to attract, hire, develop, motivate and retain personnel with the skills necessary to serve our clients could decrease our ability to meet and develop ongoing and future business and could materially adversely affect our business, financial condition and results of operations.

 

Our business operations may be severely disrupted if we lose the services of our senior executives and key employees.

 

Our success depends substantially upon the continued services of our senior executives and other key employees. If we lose the services of one or more of such senior executives or key employees, as recently occurred in June 2021 when Victoria Livschitz resigned as Executive Vice President of Customer Success and became our consultant and Max Martynov resigned as our Chief Technology Officer, our business operations can be disrupted, and we may not be able to replace them easily or at all. In addition, competition for senior executives and key personnel in our industry is intense, and we may be unable to retain our senior executives and key personnel or attract and retain new senior executives and key personnel in the future, in which case our business may be severely disrupted.

 

41

 

 

Failure to adapt to changing technologies, methodologies, and evolving industry standards may have a material adverse effect on our business, financial condition, and results of operations.

 

We operate in an industry characterized by rapidly changing technologies, methodologies and evolving industry standards. Our future success depends in part upon our ability to anticipate developments in our industry, enhance our existing services and to develop and introduce new services to keep pace with such changes and developments and to meet changing client needs. 

 

Development and introduction of new services and products is expected to become increasingly complex and expensive, involve a significant commitment of time and resources, and subject to a number of risks and challenges, including:

 

difficulty or cost in updating services, applications, tools and software and in developing new services quickly enough to meet clients’ needs;

 

difficulty or cost in making some features of software work effectively and securely over the internet or with new or changed operating systems;

 

difficulty or cost in updating software and services to keep pace with evolving industry standards, methodologies, regulatory and other developments in the industries where our clients operate; and

 

difficulty or cost in maintaining a high level of quality and reliability as we implement new technologies and methodologies.

 

We may not be successful in anticipating or responding to these developments in a timely manner, and even if we do so, the services, technologies or methodologies we develop or implement may not be successful in the marketplace. Furthermore, services, technologies or methodologies that are developed by competitors may render our services non-competitive or obsolete. Our failure to adapt and enhance our existing services and to develop and introduce new services to promptly address the needs of our clients may have a material adverse effect on our business, financial condition and results of operations.

 

Security breaches, system failures or errors, and other disruptions to our network could result in disclosure of confidential information and expose us to liability, which would cause our business and reputation to suffer.

 

We often have access, or are required, to collect, process, transmit and store sensitive or confidential client and customer data, including intellectual property, proprietary business information of Grid Dynamics and our clients, and personally identifiable information of our clients, customers, employees, contractors, service providers, and others. We use our data centers and networks, and certain networks and other facilities and equipment of our contractors and service providers, for these purposes. Despite our security measures, our information technology and infrastructure may be vulnerable to attacks and disruptions by hackers or other third parties or otherwise may be breached due to human error, phishing attacks, social engineering, malfeasance or other disruptions. During the COVID-19 pandemic, because more of our personnel are working remotely, we face increased risks of such attacks and disruptions that may affect our systems and networks or those of our clients and contractors. Any such breach or disruption could compromise our data centers, networks and other equipment and the information stored or processed there could be accessed, disclosed, altered, misappropriated, lost or stolen. In addition, any failure or breach of security in a client’s system relating to the services we provide could also result in loss or misappropriation of, or unauthorized access, alteration, use, acquisition or disclosure of sensitive or confidential information, and may result in a perception that we or our contractors or service providers caused such an incident, even if Grid Dynamics’ and our contractors’ networks and other facilities and equipment were not compromised.

 

Our contractors and service providers face similar risks with respect to their facilities and networks used by us, and they also may suffer outages, disruptions, and security incidents and breaches. Breaches and security incidents suffered by us and our contractors and service providers may remain undetected for an extended period. Any such breach, disruption or other circumstance leading to loss, alteration, misappropriation, or unauthorized use, access, acquisition, or disclosure of sensitive or confidential client or customer data suffered by us or our contractors or service providers, or the perception that any may have occurred, could expose us to claims, litigation, and liability, regulatory investigations and proceedings, cause us to lose clients and revenue, disrupt our operations and the services provided to clients, damage our reputation, cause a loss of confidence in our products and services, require us to expend significant resources to protect against further breaches and to rectify problems caused by these events, and result in significant financial and other potential losses.

 

42

 

 

Our errors and omissions insurance covering certain damages and expenses may not be sufficient to compensate for all liability. Although we maintain insurance for liabilities incurred as a result of certain security-related damages, we cannot be certain that our coverage will be adequate for liabilities actually incurred, that insurance will continue to be available to us on economically reasonable terms, or at all, or that any insurer will not deny coverage as to any future claim. The successful assertion of one or more large claims against us that exceeds available insurance coverage, or the occurrence of changes in our insurance policies, including premium increases or the imposition of large deductible or co-insurance requirements, could have a material adverse effect on our business, including our financial condition, results of operations, and reputation.

 

Undetected software design defects, errors or failures may result in loss of business or in liabilities that could have a material adverse effect on our reputation, business and results of operations.

 

Our services involve developing software solutions for our clients and we may be required to make certain representations and warranties to our clients regarding the quality and functionality of our software. Given that our software solutions have a high degree of technological complexity, they could contain design defects or errors that are difficult to detect or correct. We cannot provide assurances that, despite testing by us, errors or defects will not be found in our software solutions. Any such errors or defects could result in litigation, other claims for damages against us, the loss of current clients and loss of, or delay in, revenues, loss of market share, a failure to attract new clients or achieve market acceptance, diversion of development resources, increased support or service costs, as well as reputational harm and thus could have a material adverse effect on our reputation, business, prospects, financial condition and results of operations.

 

We do not have long-term commitments from our clients, and our clients may terminate contracts before completion or choose not to renew contracts.

 

Our clients are generally not obligated for any long-term commitments to us. Although a substantial majority of our revenues are generated from repeated business, which we define as revenues from a client who also contributed to our revenues during the prior year, our engagements with our clients are typically for projects that are singular in nature. In addition, our clients can terminate many of our master services agreements and work orders with or without cause, and in most cases without any cancellation charge. Therefore, we must seek to obtain new engagements when our current engagements are successfully completed or are terminated as well as maintain relationships with existing clients and secure new clients to expand our business.

 

There are a number of factors relating to our clients that are outside of our control which might lead them to terminate a contract or project with us, including:

 

financial difficulties for the client;

 

a change in strategic priorities, resulting in elimination of the impetus for the project or a reduced level of technology spending;

 

a change in outsourcing strategy resulting in moving more work to the client’s in-house technology departments or to our competitors;

 

the replacement by our clients of existing software with packaged software supported by licensors; and

 

mergers and acquisitions or significant corporate restructurings.

 

Failure to perform or observe any contractual obligations could result in cancellation or non-renewal of a contract, which could cause us to experience a higher than expected number of unassigned employees and an increase in our cost of revenues as a percentage of revenues, until we are able to reduce or reallocate our headcount. The ability of our clients to terminate agreements makes our future revenues uncertain. We may not be able to replace any client that elects to terminate or not renew its contract with us, which could materially adversely affect our revenues and thus our results of operations.

 

In addition, some of our agreements specify that if a change of control of our company occurs during the term of the agreement, the client has the right to terminate the agreement. If any future event triggers any change-of- control provision in our client contracts, these master services agreements may be terminated, which would result in loss of revenues.

 

43

 

 

Failure to successfully deliver contracted services or causing disruptions to clients’ businesses may have a material adverse effect on our reputation, business, financial condition, and results of operations.

 

Our business is dependent on our ability to successfully deliver contracted services in a timely manner. Any partial or complete failure of our equipment or systems, or any major disruption to basic infrastructure like power and telecommunications in the locations in which we operate, could impede our ability to provide contracted services to our clients. In addition, if our professionals make errors in the course of delivering services to our clients or fail to consistently meet the service requirements of a client, these errors or failures could disrupt the client’s business. Any failure to successfully deliver contracted services or causing disruptions to a client’s business, including the occurrence of any failure in a client’s system or breach of security relating to the services provided by us, may expose us to substantial liabilities and have a material adverse effect on our reputation, business, financial condition and results of operations.

 

Additionally, our clients may perform audits or require us to perform audits and provide audit reports with respect to the IT and financial controls and procedures that we use in the performance of services for our clients. Our ability to acquire new clients and retain existing clients may be adversely affected and our reputation could be harmed if we receive a qualified opinion, or if we cannot obtain an unqualified opinion in a timely manner, with respect to our controls and procedures in connection with any such audit. We could also incur liability if our controls and procedures, or the controls and procedures we manage for a client, were to result in an internal control failure or impair our client’s ability to comply with its own internal control requirements. If we or our partners fail to meet our contractual obligations or otherwise breach obligations to our clients, we could be subject to legal liability, which may have a material and adverse effect on our reputation, business, financial condition, and results of operations.

 

We rely on software, hardware and SaaS technologies from third parties that may be difficult to replace or that may cause errors or defects in, or failures of, our services or solutions.

 

We rely on software and hardware from various third parties as well as hosted Software as a Service ("SaaS") applications from third parties to deliver our services and solutions. If any of these software, hardware or SaaS applications become unavailable due to loss of license, extended outages, interruptions, or because they are no longer available on commercially reasonable terms, there may be delays in the provisioning of our services until equivalent technology is either developed by us, or, if available, is identified, obtained and integrated, which could increase our expenses or otherwise harm our business. Furthermore, any errors or defects in or failures of third-party software, hardware or SaaS applications could result in errors or defects in or failures of our services and solutions, which could be costly to correct and have an adverse effect on our reputation, business, financial condition and results of operations.

 

Existing insurance coverage and limitation of liability provisions in service contracts may be inadequate to protect us against losses.

 

We maintain certain insurance coverage, including professional liability insurance, director and officer insurance, property insurance for certain of our facilities and equipment, and business interruption insurance for certain of our operations. However, we do not insure for all risks in our operations and if any claims for injury are brought against us, or if we experience any business disruption, litigation or natural disaster, we might incur substantial costs and diversion of resources.

 

Most of the agreements we have entered into with our clients require us to purchase and maintain specified insurance coverage during the terms of the agreements, including commercial general insurance or public liability insurance, umbrella insurance, product liability insurance, and workers’ compensation insurance. Some of these types of insurance are not available on reasonable terms or at all in some countries in which we operate.

 

Our liability for breach of our obligations is in some cases limited under client contracts. Such limitations may be unenforceable or otherwise may not protect us from liability for damages. In addition, our existing contracts may not limit certain liabilities, such as claims of third parties for which we may be required to indemnify our clients. The successful assertion of one or more large claims against us in amounts greater than those covered by our current insurance policies could materially adversely affect our business, financial condition and results of operations. Even if such assertions against us are unsuccessful, we may incur reputational harm and substantial legal fees.

 

44

 

 

If we are not able to maintain an effective system of internal control over financial reporting, current and potential investors could lose confidence in our financial reporting, which could harm our business and have an adverse effect on our stock price. Management identified a material weakness in our internal controls over financial reporting in 2019 and although this material weakness has since been remediated, we cannot provide assurances that additional material weaknesses, or significant deficiencies, will not occur in the future.

 

Any failure to maintain effective internal controls over our financial reporting could materially and adversely affect us. Section 404 of the Sarbanes-Oxley Act requires us to include in our annual reports on Form 10-K an assessment by management of the effectiveness of our internal controls over financial reporting. In addition, we will be required to have our independent public accounting firm attest to and report on management’s assessment of the effectiveness of our internal control over financial reporting when we cease qualifying as an “emerging growth company” pursuant to the JOBS Act. If we are unable to conclude that we have effective internal control over financial reporting or, if our independent auditors are unable to provide us with an attestation and an unqualified report as to the effectiveness of our internal control over financial reporting, investors could lose confidence in the reliability of our financial statements, which could result in a decrease in the value of our securities.

 

In 2019, management identified a material weakness in our internal control over financial reporting. A material weakness is defined as a deficiency, or a combination of deficiencies, in internal control over financial reporting, such that there is a reasonable possibility that a material misstatement of our financial statements will not be prevented or detected on a timely basis. Subsequent to the original issuance of the private company financial statements for the year ended December 31, 2018, we identified balances that were accounted for or presented incorrectly under GAAP relating to stock-based compensation and the presentation of retention bonuses and depreciation on the consolidated statement of income and comprehensive income.

 

The material weakness identified was a lack of sufficient resources with appropriate depth and experience to interpret complex accounting guidance and prepare financial statements and related disclosures in accordance with GAAP.

 

We have taken steps to enhance our internal control environment, including hiring a new Chief Financial Officer in December 2019, hiring a Global Controller in May 2020, and hiring additional qualified accounting and financial reporting personnel. Additionally, our new enterprise resource planning system, which has been implemented in phases since January 2020, has enhanced our internal controls over financial reporting. Given a combination of increased personnel, greater automation with software systems, and implementation of more detailed processes and procedures over the course of the year ended December 31, 2020, management considers this material weakness to have been remediated as of December 31, 2020.

 

If additional material weaknesses, or significant deficiencies, in internal controls are discovered in the future, they may adversely affect our ability to record, process, summarize and report financial information in a timely and accurate manner and, as a result, our financial statements may contain material misstatements or omissions.

 

Our global business, especially in CIS and CEE countries, exposes us to significant legal, economic, tax and political risks.

 

We have significant operations in certain emerging market economies, which creates legal, economic, tax and political risks. Risks inherent in conducting international operations include:

 

less established legal systems and legal ambiguities, inconsistencies and anomalies;

 

changes in laws and regulations;

 

application and imposition of protective legislation and regulations relating to import or export, including tariffs, quotas and other trade protection measures;

 

difficulties in enforcing intellectual property and/or contractual rights;

 

45

 

 

bureaucratic obstacles and corruption;

 

compliance with a wide variety of foreign laws, including those relating to privacy and data protection;

 

restrictions on the repatriation of dividends or profits;

 

expropriation or nationalization of property;

 

restrictions on currency convertibility and exchange controls;

 

fluctuations in currency exchange rates;

 

potentially adverse tax consequences;

 

competition from companies with more experience in a particular country or with international operations;

 

civil strife;

 

unstable political and military situations; and

 

overall foreign policy and variability of foreign economic conditions, including the effects of the COVID-19 pandemic.

 

The legal systems of Russia, Ukraine, Poland and Serbia, where we have significant operations, as well as Moldova, where we have acquired operations through the Tacit acquisition completed on May 29, 2021, are often beset by legal ambiguities as well as inconsistencies and anomalies due to the relatively recent enactment of many laws that may not always coincide with market developments. Furthermore, legal and bureaucratic obstacles and corruption exist to varying degrees in each of these countries. In such environments, our competitors may receive preferential treatment from governments, potentially giving them a competitive advantage. Governments may also revise existing contract rules and regulations or adopt new ones at any time and for any reason, and government officials may apply contradictory or ambiguous laws or regulations in ways that could materially adversely affect our business and operations in such countries. Any of these changes could impair our ability to obtain new contracts or renew or enforce contracts under which we currently provide services or to which we are a party. Any new contracting methods could be costly or administratively difficult for us to implement, which could materially adversely affect our business and operations. We cannot guarantee that regulators, judicial authorities or third parties in Russia, Ukraine, Poland and Serbia will not challenge our (including our subsidiaries’) compliance with applicable laws, decrees and regulations. In addition to the foregoing, selective or arbitrary government actions may include withdrawal of licenses, sudden and unexpected tax audits, criminal prosecutions and civil actions, all of which could have a material adverse effect on our business, financial condition and results of operations.

 

The banking and other financial systems in certain Commonwealth of Independent States (“CIS”) and CEE countries where we operate remain subject to periodic instability and generally do not meet the banking standards of more developed markets. A financial crisis or the bankruptcy or insolvency of banks through which we receive, or with which we hold, funds may result in the loss of our deposits or adversely affect our ability to complete banking transactions in that region, which could materially adversely affect our business and financial condition.

 

Furthermore, existing tensions and the emergence of new or escalated tensions in CIS and CEE countries could further exacerbate tensions between such countries and the U.S. Such tensions, concerns regarding information security, and potential imposition of additional sanctions by the U.S. and other countries may discourage existing or prospective clients to engage our services, have a negative effect on our ability to develop or maintain our operations in the countries where we currently operate, and disrupt our ability to attract, hire and retain employees. The occurrence of any such event may have a material adverse effect on our business, financial condition and results of operations.

 

46

 

 

As a result of our acquisition of Tacit on May 29, 2021, we have acquired operations in Guadalajara, Mexico. The laws and regulations in Mexico to which we have become subject thereby, and interpretations thereof, may change, sometimes substantially, as a result of a variety of factors beyond our control, including political, economic, regulatory or social events. As a result of amendments in May 2019 to the Mexican Federal Labor Law (Ley Federal del Trabajo) and other related regulations, among other things, new labor authorities and courts were created, new bargaining procedures were implemented and provisions related to employees’ freedom of association and organization, collective bargaining agreements, and rules against labor discrimination were issued or amended. We cannot assure you that these changes will not lead to an increase in litigation, labor activism or increasingly contentious labor relations, which in turn may adversely affect our business, financial condition, results of operations and prospects, particularly in Mexico. These and any other policies, laws and regulations which are further adopted could result in a deterioration of investment sentiment, political and economic uncertainty, and increased costs for our business, which may in turn have a material adverse effect on our business, financial condition, liquidity and results of operations.

 

The extent to which the COVID-19 pandemic continues to impact our results will depend on future developments, which are highly uncertain and cannot be predicted, including the duration of the pandemic, travel restrictions and social distancing in the CIS and CEE countries, the U.S. and other countries, business closures or business disruptions and the effectiveness of actions taken by governments and private businesses to attempt to contain and treat the disease. Any prolonged shut down of a significant portion of global economic activity or downturn in the global economy, along with any adverse effects on industries in which our customers operate, could materially and adversely impact our business, results of operations and financial condition.

 

Our results of operations and financial condition could be materially affected by the enactment of legislation implementing changes in the U.S. taxation of international business activities or the adoption of other tax reform policies.

 

On April 7, 2021, the U.S. Department of the Treasury released the Made in America tax plan. The document describes President Biden’s proposals for U.S. tax reform, which include raising the U.S. federal corporate income tax from 21% to 28% and replacing the Base Erosion and Anti-Abuse Tax with SHIELD (Stopping Harmful Inversions and Ending Low-tax Developments), a regime for preventing foreign corporations from shifting profits to lower-taxed jurisdictions. If enacted, these and other proposed changes could have an adverse impact on our business, results of operations, financial condition and cash flow.

 

The tax rates and rules applicable to our stockholders could be materially affected by the enactment of legislation implementing changes in U.S. tax law.

 

There have been reports that President Biden’s tax reform proposals may include increases to the tax rates applicable to individuals, including the long-term capital gains rate for individuals whose gross income exceeds certain limits. If these or other proposals are enacted, the tax consequences to U.S. Holders (as defined below) of owning and disposing of our common shares may differ from those discussed below in “Material U.S. Federal Income and Estate Tax Consequences for Non-U.S. Holders of Common Stock.” Potential Investors are urged to consult their own tax advisors on the potential impact of U.S. tax reform to an investment in our common shares.

 

Our effective tax rate could be adversely affected by several factors.

 

We conduct business globally and file income tax returns in multiple jurisdictions. Our effective tax rate could be materially adversely affected by several factors, including changes in the amount of income taxed by, or allocated to, the various jurisdictions in which we operate that have differing statutory tax rates; changing tax laws, regulations and interpretations of such tax laws in multiple jurisdictions; and the resolution of issues arising from tax audits or examinations and any related interest or penalties. In particular, there have been significant changes to the taxation systems in CEE countries in recent years as the authorities have gradually replaced or introduced new legislation regulating the application of major taxes such as corporate income tax, value-added tax, corporate property tax, personal income taxes and payroll taxes. Furthermore, any significant changes to the Tax Cuts and Jobs Act (“U.S. Tax Act”) enacted in 2017, or to regulatory guidance associated with the U.S. Tax Act, could materially adversely affect our effective tax rate.

 

47

 

 

The determination of our provision for income taxes and other tax liabilities requires estimation, judgment and calculations where the ultimate tax determination may not be certain. Our determination of tax liability is always subject to review or examination by authorities in various jurisdictions. If a tax authority in any jurisdiction reviews any of our tax returns and proposes an adjustment, including a determination that the transfer prices and terms we have applied are not appropriate, such an adjustment could have an adverse effect on our business, financial condition and results of operations.

 

We are unable to predict what tax reforms may be proposed or enacted in the future or what effect such changes would have on our business, but such changes, to the extent they are brought into tax legislation, regulations, policies or practices in jurisdictions in which we operate, could increase the estimated tax liability that we have expensed to date and paid or accrued on our balance sheets, and otherwise affect our financial position, future results of operations, cash flows in a particular period and overall or effective tax rates in the future in countries where we have operations, reduce post-tax returns to our stockholders and increase the complexity, burden and cost of tax compliance.

 

There may be adverse tax and employment law consequences if the independent contractor status of some of our personnel or the exempt status of our employees is successfully challenged.

 

Certain of our personnel are retained as independent contractors. The criteria to determine whether an individual is considered an independent contractor or an employee are typically fact intensive and vary by jurisdiction, as can the interpretation of the applicable laws. If a government authority or court makes any adverse determination with respect to some or all of our independent contractors, we could incur significant costs, including for prior periods, in respect of tax withholding, social security taxes or payments, workers’ compensation and unemployment contributions, and recordkeeping, or we may be required to modify our business model, any of which could materially adversely affect our business, financial condition and results of operations.

 

Global mobility of employees may potentially create additional tax liabilities for us in different jurisdictions.

 

In performing services to clients, our employees may be required to travel to various locations. Depending on the length of the required travel and the nature of employees’ activities the tax implications of travel arrangements vary, with generally more extensive tax consequences in cases of longer travel. Such tax consequences mainly include payroll tax liabilities related to employee compensation and, in cases envisaged by international tax legislation, taxation of profits generated by employees during their time of travel.

 

We have internal procedures, policies and systems, including an internal mobility program, for monitoring our tax liabilities arising in connection with the business travel. However, considering that the tax authorities worldwide are paying closer attention to global mobility issues, our operations may be adversely affected by additional tax charges related to the activity of our mobile employees.

 

Loss of taxation benefits related to our employment-related taxes that are enjoyed in Russia could have a negative impact on our operating results and profitability.

 

The Russian government provides qualified Russian IT companies with substantial tax benefits through a reduced social contribution charge rate program. This program resulted in savings for us of approximately $1.8 million in the fiscal year ended December 31, 2020 and approximately $2.3 million in the fiscal year ended December 31, 2019. However, the reduced tax rates for social contributions (16% in total) are a temporary measure. In 2016, application of reduced rates was prolonged until 2023, after which the Russian government may take the decision to gradually increase the tax rates. If the Russian government were to change its favorable treatment of Russian IT companies by modifying or repealing its current favorable tax measures, or if we become ineligible for such favorable treatment, it would significantly impact our financial condition and results of operations.

 

48

 

 

Tax authorities may disagree with our positions and conclusions regarding certain tax positions, or may apply existing rules in an arbitrary or unforeseen manner, resulting in unanticipated costs, taxes or non-realization of expected benefits.

 

A tax authority may disagree with tax positions that we have taken, which could result in increased tax liabilities. For example, a tax authority could challenge our allocation of income by tax jurisdiction and the amounts paid between our affiliated companies pursuant to our intercompany arrangements and transfer pricing policies, including methodologies for valuing developed technology and amounts paid with respect to our intellectual property development.

 

A tax authority may take the position that material income tax liabilities, interest and penalties are payable by us, where there has been a technical violation of contradictory laws and regulations that are relatively new and have not been subject to extensive review or interpretation, in which case we expect that we might contest such assessment. High-profile companies can be particularly vulnerable to aggressive application of unclear requirements. Many companies must negotiate their tax bills with tax inspectors who may demand higher taxes than applicable law appears to provide. Contesting such an assessment may be lengthy and costly and if we were unsuccessful in disputing the assessment, the implications could increase our anticipated effective tax rate, where applicable.

 

Our business, financial condition and results of operations may be adversely affected by fluctuations in foreign currency exchange rates.

 

Grid Dynamics is exposed to foreign currency exchange rate risk and its profit margins are subject to volatility between periods due to changes in foreign currency exchange rates relative to the U.S. dollar. Grid Dynamics’ functional currency apart from the U.S. dollar includes EURO, British pounds, Mexican pesos and Moldovan leu. We are exposed to foreign currency exchange transaction risk related to funding our non-U.S. operations and to foreign currency translation risk related to certain of our subsidiaries’ cash balances that are denominated in currencies other than the U.S. dollar as we do not currently hedge our foreign currency exposure. In addition, our profit margins are subject to volatility as a result of changes in foreign exchange rates. In the three and six months ended June 30, 2021, approximately 25.3%, 11.9% and 7.4% of Grid Dynamics’ $46.3 million and approximately 25.3%, 11.4% and 7.6% of Grid Dynamics’ $87.2 million of combined cost of revenue and total operating expenses were denominated in the Ukrainian hryvnia, Russian ruble, and Polish zloty, respectively. Comparatively, the same foreign currencies accounted for approximately 9.9%, 12.6% and 10.6% of Grid Dynamics’ $25.6 million and 10.7%, 15.6%, and 10.0% of Grid Dynamics’ $65.0 million of combined cost of revenue and total operating expenses in the three and six months ended June 30, 2020. Any significant fluctuations in currency exchange rates may have a material impact on our business and results of operations. In some countries, we may be subject to regulatory or practical restrictions on the movement of cash and the exchange of foreign currencies, which would limit our ability to use cash across our global operations and increase our exposure to currency fluctuations. This risk could increase as we continue expanding our global operations, which may include entering emerging markets that may be more likely to impose these types of restrictions. Currency exchange volatility caused by political or economic instability or other factors, could also materially impact our results. See the section titled, “Quantitative and Qualitative Disclosures about Market Risk—Foreign Currency Exchange Rate Risk” in our most recent annual report on Form 10-K and this quarterly report on Form 10-Q for more information about our exposure to foreign currency exchange rates.

 

We may be exposed to liability for actions taken by its subsidiaries.

 

In certain cases, we may be jointly and severally liable for losses of our subsidiaries. Irrespective of incurring liability for losses of our subsidiaries, we may incur secondary liability and, in certain cases, liability to creditors for obligations of our subsidiaries in certain instances involving bankruptcy or insolvency.

 

In particular, under Article 53, Part 1 of the Russian Civil Code, a “controlling person” of a legal entity may be held directly liable for losses that the entity suffers because of his or her “fault,” and any agreement that seeks to limit or waive such liability will not be valid. Generally, a controlling person is anyone who holds the power to determine the entity’s actions, including the right to direct the actions of officers or executives. When a controlling person causes losses, officers and executives may all be held jointly and severally liable (a parent entity may also be held jointly liable with a subsidiary for actions directed by the parent or made with its consent). Liability may also apply to stockholders or controlling persons when the company is a foreign legal entity but conducts its business primarily in Russia.

 

49

 

 

Further, an effective parent is secondarily liable for an effective subsidiary’s debts if the effective subsidiary becomes insolvent or bankrupt as a result of the action or inaction of the effective parent. Compensation for the effective subsidiary’s losses from the effective parent that caused the effective subsidiary to take action or fail to take action, knowing that such action or failure to take action would result in losses, may be claimed, inter alia, by the other stockholders of the effective subsidiary, the administrators and creditors in an insolvency proceeding. We could be found to be the effective parent of the subsidiaries, in which case we could become liable for their debts, which could have a material adverse effect on our business, financial condition and results of operations or prospects.

 

Our profitability may suffer if we are unable to maintain our resource utilization and productivity levels.

 

As most of our client projects are performed and invoiced on a time and materials basis, our management tracks and projects billable hours as an indicator of business volume and corresponding resource needs for IT professionals. To maintain our gross profit margins, we must effectively utilize our IT professionals, which depends on our ability to:

 

integrate and train new personnel;

 

efficiently transition personnel from completed projects to new assignments;

 

forecast customer demand for services; and

 

deploy personnel with appropriate skills and seniority to projects.

 

If we experience a slowdown or stoppage of work for any client, or on any project for which we have dedicated personnel or facilities, including any adverse impacts from the COVID-19 pandemic, which occurred in the second quarter, and to a lesser extent, in the third quarter of 2020, we may be unable to reallocate these personnel or assets to other clients and projects to keep their utilization and productivity levels high. If we are unable to maintain appropriate resource utilization levels, our profitability may suffer.

 

If we are unable to accurately estimate the cost of service or fail to maintain favorable pricing for our services, our contracts may be unprofitable.

 

While fixed-fee contracts currently represent an immaterial portion of overall revenue for the periods presented, Grid Dynamics expects proportionate revenue from fixed-fee contracts to increase in future periods. In order for our contracts to be profitable, we must be able to accurately estimate our costs to provide the services required by the applicable contract and appropriately price our contracts. Such estimates and pricing structures used by us for our contracts are highly dependent on internal forecasts, assumptions and predictions about our projects, the marketplace, global economic conditions (including foreign exchange volatility) and the coordination of operations and personnel in multiple locations with different skill sets and competencies. Due to the inherent uncertainties that are beyond our control, we may underprice our projects, fail to accurately estimate the costs of performing the work or fail to accurately assess the risks associated with potential contracts. In select cases, we also offer volume discounts once a client reaches certain contractual spend thresholds, which may lower the reference price for a client or result in a loss of profits if we do not accurately estimate the amount of discounts to be provided. We may not be able to recognize revenues from fixed-fee contracts in the period in which our services are performed, which may cause our margins to fluctuate. Any increased or unexpected costs, delays or failures to achieve anticipated cost savings, or unexpected risks we encounter in connection with the performance of our contracts, including those caused by factors outside our control, could make these contracts less profitable or unprofitable.

 

We face risks associated with the long selling and implementation cycle for our services that require significant resource commitments prior to realizing revenues for those services.

 

We have a long selling cycle for our services, which requires us to expend substantial time and resources to educate clients on the value of our services and our ability to meet their requirements. In certain cases, we may begin work and incur costs prior to executing a contract. Our selling cycle is subject to many risks and delays over which we have little or no control, including clients’ decisions to choose alternatives to our services (such as other IT services providers or in-house resources) and the timing of clients’ budget cycles and approval processes. Therefore, selling cycles for new clients can be especially unpredictable and we may fail to close sales with prospective clients to whom we have devoted significant time and resources. Any significant failure to generate revenues or delays in recognizing revenues after incurring costs related to sales processes could have a material adverse effect on our business, financial condition and results of operations.

 

50

 

 

Failure to obtain engagements for and effectively manage increasingly large and complex projects may have an adverse effect on our business, financial condition and results of operations.

 

Our operating results are dependent on the scale of our projects and the prices we are able to charge for our services. In order to successfully perform larger and more complex projects, we need to establish and maintain effective, close relationships with our clients, continue high levels of client satisfaction and develop a thorough understanding of our clients’ needs. We may also face a number of challenges managing larger and more complex projects, including:

 

maintaining high quality control and process execution standards;

 

maintaining planned resource utilization rates on a consistent basis;

 

using an efficient mix of on-site, off-site and offshore staffing;

 

maintaining productivity levels;

 

implementing necessary process improvements;

 

recruiting and retaining sufficient numbers of highly skilled IT personnel; and

 

controlling costs.

 

There is no guarantee that we may be able to overcome such challenges. In addition, large and complex projects may involve multiple engagements or stages, and there is a risk that a client may choose not to retain us for additional stages or may cancel or delay additional planned engagements. Our failure to successfully obtain engagements for and effectively manage large and complex projects may have an adverse effect on our business, financial condition and results of operations.

 

Increases in compensation expenses, including stock-based compensation expenses, could lower our profitability, and dilute our existing stockholders.

 

Wages and other compensation costs in the countries in which we maintain significant operations and delivery centers are lower than comparable wage costs in more developed countries. However, wages in the technology industry in these countries may increase at a faster rate than in the past, which may make us less competitive unless we are able to increase the efficiency and productivity of our people. If we increase operations and hiring in more developed economies, our compensation expenses will increase because of the higher wages demanded by technology professionals in those markets. Wage inflation, whether driven by competition for talent or ordinary course pay increases, could increase our cost of services as well as selling, general and administrative expenses and reduce our profitability if we are not able to pass those costs on to our customers or charge premium prices when justified by market demand.

 

In addition, we have granted certain equity-based awards under our equity incentive plans and expect to continue doing so. For the three months ended June 30, 2021 and 2020, Grid Dynamics recorded $6.7 million and $3.7 million, respectively, of stock-based compensation expense related to the grant of equity-based awards. For the six months ended June 30, 2021 and 2020, Grid Dynamics recorded $12.3 million and $8.5 million, respectively, of stock-based compensation expense related to the grant of equity-based awards. If we do not grant equity awards, or if we reduce the value of equity awards we grant, we may not be able to attract, hire and retain key personnel. If we grant more equity awards to attract, hire and retain key personnel, the expenses associated with such additional equity awards could materially adversely affect our results of operations. If the anticipated value of these equity awards does not materialize because of volatility or lack of positive performance in our stock price, we may be unable to retain our key personnel or attract and retain new key employees in the future, in which case our business may be severely disrupted our ability to attract and retain personnel could be adversely affected. The issuance of equity-based compensation may also result in dilution to stockholders.

 

Failure to collect receivables from, or bill for unbilled services to, clients may have a material adverse effect on our results of operations and cash flows.

 

Our business depends on our ability to successfully obtain payment from our clients of the amounts they owe for work performed. We usually bill and collect such amounts on relatively short cycles and maintain allowances for doubtful accounts. However, actual losses on client balances could differ from those that we anticipate and, as a result, we might need to adjust our allowances.

 

51

 

 

There is no guarantee that we will accurately assess the creditworthiness of our clients. If clients suffer financial difficulties, it could cause them to delay payments, request modifications to their payment arrangements that could increase our receivables balance, or default on their payment obligations.

 

In addition, some of our clients may delay payments due to changes in internal payment procedures driven by rules and regulations to which they are subject. Timely collection of client balances also depends on our ability to complete our contractual commitments and bill and collect contracted revenues. If we are unable to meet our contractual requirements, we may experience delays in collection of or inability to collect accounts receivable. If this occurs, our financial condition, results of operations and cash flows could be materially adversely affected.

 

We may need additional capital and failure to raise additional capital on terms favorable to us, or at all, could limit our ability to grow our business and develop or enhance our service offerings to respond to market demand or competitive challenges.

 

We may require additional cash resources due to changed business conditions or other future developments. If existing resources are insufficient to satisfy cash requirements, we may seek to sell additional equity or debt securities or obtain one or more credit facilities. The sale of additional equity securities could result in dilution to stockholders. The incurrence of indebtedness would result in increased debt service obligations and could require us to agree to operating and financing covenants that would restrict our operations. Our ability to obtain additional capital on acceptable terms is subject to a variety of uncertainties, including investors’ perception of, and demand for, securities of IT services companies, conditions in the capital markets in which we may seek to raise funds, our future results of operations and financial condition, and general economic and political conditions. Financing may not be available in amounts or on terms acceptable to us, or at all, which could limit our ability to grow our business and develop or enhance our service offerings to respond to market demand or competitive challenges.

 

War, terrorism, other acts of violence, or natural or manmade disasters may affect the markets in which we operate, our clients and our service delivery.

 

Our business may be adversely affected by instability, disruption or destruction in a geographic region in which we operate, regardless of cause, including war, terrorism, riot, civil insurrection or social unrest, and natural or manmade disasters, including famine, flood, fire, earthquake, storm or pandemic events and spread of disease, such as the COVID-19 pandemic. Such events may cause clients to delay their decisions on spending for the services provided by us and give rise to sudden significant changes in regional and global economic conditions and cycles. These events also pose significant risks to our personnel and to physical facilities and operations, which could materially adversely affect our financial results.

 

Acquisitions could be difficult to identify and integrate, divert the attention of management, disrupt our business, dilute stockholder value and adversely affect our financial condition and results of operations, we may not achieve the financial and strategic goals that were contemplated at the time of a transaction, and we may be exposed to claims, liabilities and disputes as a result of the transaction that may adversely impact our business, operating results and financial condition.

 

We continuously review and consider strategic acquisitions of businesses, products or technologies. We recently acquired Daxx Web Industries B.V., a Netherlands-based software development and technology consulting company, as well as Tacit, a global provider of digital commerce solutions, and we may in the future seek to acquire or invest in other businesses, products or technologies that we believe could complement or expand our services, enhance our technical capabilities or otherwise offer growth opportunities. The pursuit of potential acquisitions may divert the attention of management and cause us to incur various expenses in identifying, investigating and pursuing suitable acquisitions, whether or not the acquisition purchases are completed. Additionally, we may not be able to find and identify desirable acquisition targets or be successful in entering into an agreement with any particular target or obtain adequate financing to complete such acquisitions. If we acquire businesses, we may not be able to successfully integrate the acquired personnel, operations, and technologies, or effectively manage the combined business following the acquisition.

 

Additionally, we may not be able to find and identify desirable acquisition targets or be successful in entering into an agreement with any particular target or obtain adequate financing to complete such acquisitions. Acquisitions could also result in dilutive issuances of equity securities or the incurrence of debt, which could adversely affect our financial condition, cash flows and results of operations. In addition, if an acquired business fails to meet our expectations, we may not achieve the financial and strategic goals that were contemplated at the time of a transaction, and our business, financial condition and results of operations may be adversely affected. Furthermore, we may acquire businesses that have inferior margins and profitability levels in comparison to our existing business and this may dilute our overall profitability of the company. This, in turn, may result in adverse financial results and dilution to existing stockholders.

 

52

 

 

Our operating results or financial condition may be adversely impacted by claims or liabilities that we assume from an acquired company or technology or other claims or liabilities otherwise related to an acquisition, including, among others, claims from governmental and regulatory agencies or bodies, terminated employees, current or former customers, current or former stockholders or other third parties, or arising from contingent payments related to the acquisition; pre-existing contractual relationships that we assume from an acquired company that we would not have otherwise entered into, the termination or modification of which may be costly or disruptive to our business; unfavorable revenue recognition or other accounting treatment as a result of an acquired company’s practices; and intellectual property claims or disputes. We may fail to identify or assess the magnitude of certain liabilities, shortcomings or other circumstances prior to acquiring a company or technology, which could result in unexpected litigation or regulatory exposure and other adverse effects on our business, operating results and financial condition.

 

We face risks associated with the transparency, quality, and reliability of financial information of a business we acquire.

 

Although we perform due diligence on a targeted business that we intend to acquire, we are exposed to risks associated with the quality and reliability of the financial statements of the acquired business. This risk may be higher with smaller businesses and businesses that are operated in jurisdictions and countries with poorer regulatory and compliance requirements. In such situation where we acquire a target with unreliable financial statements, we are exposed to material risks that may impact the reliability of our overall financial statements and may adversely impact our stock price.

 

We also cannot assure you that the diligence we conduct when evaluating future acquisitions will reveal all material issues that may be present, that it would be possible to uncover all material issues through a customary amount of due diligence, or that factors outside of our control will not later arise. Even if our due diligence successfully identifies certain risks, unexpected risks may arise and previously known risks may materialize in a manner not consistent with our preliminary risk analysis. Further, as a result of a completed acquisition, purchase accounting, and integration of the acquired business, we may be required to take write-offs or write-downs, restructuring and impairment or other charges that could negatively affect our business, assets, liabilities, prospects, outlook, financial condition and results of operations.

 

Some of the additional risks associated with acquiring a business include, but not limited to the following:

 

inability to integrate or benefit from acquired technologies or services;

 

product synergies, cost reductions, increases in revenue and economies of scale may not materialize as expected;

 

the business culture of the acquired entity may not match well with our culture;

 

unforeseen delays, unanticipated costs and liabilities may arise when integrating operations, processes and systems in geographies where we have not conducted business;

 

unanticipated costs or liabilities associated with the strategic transactions;

 

incurrence of transaction-related costs;

 

assumption of the existing obligations or unforeseen liabilities of the acquired business;

 

difficulty integrating the accounting systems, security infrastructure, operations, and personnel of the acquired business;

 

difficulties and additional expenses associated with supporting legacy products and hosting infrastructure of the acquired business;

 

difficulty converting the current and prospective customers of the acquired business onto our platform and contract terms, including disparities in the revenue, licensing, support, or professional services model of the acquired company;

 

53

 

 

diversion of management’s attention from other business concerns;

 

adverse effects to our existing business relationships with business partners and customers as a result of the strategic transactions;

 

unexpected costs may arise due to unforeseen changes in tax, payroll, pension, labor, trade, environmental and safety policies in new jurisdictions where the acquired entity operates;

 

difficulty in retaining, motivating and integrating key management and other employees of the acquired business;

 

use of resources that are needed in other parts of our business; and

 

use of substantial portions of our available cash to consummate the strategic transaction.

 

We are an emerging growth company within the meaning of the Securities Act, and if we take advantage of certain exemptions from disclosure requirements available to emerging growth companies, this could make our securities less attractive to investors and may make it more difficult to compare our performance with other public companies.

 

We are an “emerging growth company” within the meaning of the Securities Act, as modified by the JOBS Act, and we may take advantage of certain exemptions from various reporting requirements that are applicable to other public companies that are not emerging growth companies including, but not limited to, not being required to comply with the auditor attestation requirements of Section 404 of the Sarbanes-Oxley Act, reduced disclosure obligations regarding executive compensation in our periodic reports and proxy statements, and exemptions from the requirements of holding a nonbinding advisory vote on executive compensation and stockholder approval of any golden parachute payments not previously approved. As a result, our stockholders may not have access to certain information they may deem important. We could be an emerging growth company for the first five years after the completion of our initial public offering, although circumstances could cause us to lose that status earlier, including if the market value of our ordinary shares held by non-affiliates exceeds $700 million as of any June 30 before that time, in which case we would no longer be an emerging growth company as of the following December 31. We cannot predict whether investors will find our securities less attractive because we will rely on these exemptions. If some investors find our securities less attractive as a result of our reliance on these exemptions, the market prices of our securities may be lower than they otherwise would be, there may be a less active trading market for our securities and the market prices of our securities may be more volatile.

 

Further, Section 102(b)(1) of the JOBS Act exempts emerging growth companies from being required to comply with new or revised financial accounting standards until private companies (that is, those that have not had a Securities Act registration statement declared effective or do not have a class of securities registered under the Securities Exchange Act of 1934 (the “Exchange Act”) are required to comply with the new or revised financial accounting standards. The JOBS Act provides that a company can elect to opt out of the extended transition period and comply with the requirements that apply to non-emerging growth companies but any such an election to opt out is irrevocable. We have elected not to opt out of such extended transition period, which means that when a standard is issued or revised and it has different application dates for public or private companies, we, as an emerging growth company, can adopt the new or revised standard at the time private companies adopt the new or revised standard. This may make comparison of our financial statements with certain other public companies difficult or impossible because of the potential differences in accounting standards used.

 

Changes in financial accounting standards or practices may cause adverse, unexpected financial reporting fluctuations and affect our reported results of operations.

 

Generally accepted accounting principles in the U.S. are subject to interpretation by the Financial Accounting Standards Board (“FASB”), the SEC and various bodies formed to promulgate and interpret appropriate accounting principles. A change in accounting standards or practices can have a significant effect on our reported results and may even affect our reporting of transactions completed before the change is effective. New accounting pronouncements and varying interpretations of accounting pronouncements have occurred and may occur in the future. Changes to existing rules or the questioning of current practices may adversely affect our reported financial results or the way we conduct our business.

 

54

 

 

For example, on April 12, 2021, the Staff of the SEC issued the “Staff Statement on Accounting and Reporting Considerations for Warrants Issued by Special Purpose Acquisition Companies (“SPACs”)” (the “Staff Statement”). The Staff Statement provided new guidance for all SPAC-related companies regarding the accounting and reporting for their warrants that could result in the warrants issued by SPACs being classified as a liability measured at fair value, with non-cash fair value adjustments reported in earnings at each reporting period. We reviewed the accounting for both our public warrants and private warrants following the Staff Statement. We determined that the accounting for our public warrants as equity was consistent with the Staff Statement. We determined that our private warrants should be accounted for as liabilities but that the related accounting errors during the year ended December 31, 2020 were not material to the required financial statements and disclosures included in our annual report on Form 10-K filed on March 5, 2021. In the three months ended March 31, 2021, we began accounting for the private warrants correctly, as disclosed in Note 8 in our quarterly report on Form 10-Q filed on May 6, 2021.

 

Reports published by analysts, including projections in those reports that differ from our actual results, could adversely affect the price and trading volume of our common stock and warrants.

 

Securities research analysts may establish and publish their own periodic projections for us. These projections may vary widely and may not accurately predict the results we actually achieve. Our share price may decline if our actual results do not match the projections of these securities research analysts. Similarly, if one or more of the analysts who write reports on us downgrades our stock or publishes inaccurate or unfavorable research about our business, our share price could decline. If one or more of these analysts ceases coverage of us or fails to publish reports on us regularly, our share price or trading volume could decline and demand for our shares could decrease.

 

Risks Related to Government Regulations

 

Failure to comply with privacy and data protection laws and regulations could lead to government enforcement actions, private litigation and adverse publicity.

 

We receive, store and process personal information and other data from and about customers in addition to our employees and contractors. Our handling of data is subject to a variety of laws and regulations, including regulation by various government agencies and various state, local and foreign agencies. Our data handling also is subject to contractual obligations and may be deemed to be subject to industry standards, including certain industry standards that we undertake to comply with. The laws and regulations relating to privacy and data security are evolving, can be subject to significant change and may result in ever-increasing regulatory and public scrutiny and escalating levels of enforcement and sanctions.

 

For example, the European Union has implemented the General Data Protection Regulation (“GDPR”), which came into effect on May 25, 2018. The GDPR has a significant impact on how businesses can collect and process the personal data of individuals in the European Economic Area (“EEA”). The regulation includes stringent operational requirements for processors and controllers of personal data and imposes significant penalties for non-compliance of up to the greater of €20 million or 4% of global annual revenues. With regard to transfers to the U.S. of personal data from our employees and European customers and users, we rely upon standard contractual clauses approved by the European Commission (the “SCCs”). The SCCs have been subject to legal challenge and may be modified or invalidated, and we may be unsuccessful in maintaining legitimate means for the transfer and receipt of personal data from the EEA. We are in the process of assessing the “Schrems II” decision issued by the Court of Justice of the European Union (the “CJEU”) on July 16, 2020, and its impact on our data transfer mechanisms. In the Schrems II decision, the CJEU deemed the SCCs valid, but ruled that transfers made pursuant to the SCCs and other alternative transfer mechanisms must be analyzed on a case-by-case basis to ensure EU standards of data protection are met in the jurisdiction where the data importer is based. Subsequent guidance from EU regulators has stated that in certain cases, the SCCs must be accompanied by the use of supplementary measures. Concerns remain about the potential for the SCCs and other mechanisms to face additional challenges. We may, in addition to other impacts of the Schrems II decision and other developments relating to cross-border transfer, experience additional costs associated with increased compliance burdens, and we and our customers face the potential for regulators in the EEA to apply different standards to the transfer of personal data from the EEA to the U.S., and to block, or require ad hoc verification of measures taken with respect to, certain data flows from the EEA to the U.S. We also may be required to engage in new contract negotiations with third parties that aid in processing data on our behalf. We may experience reluctance or refusal by current or prospective European customers to use our products, and may find it necessary or desirable to make further changes to our handling of personal data of EEA residents. The regulatory environment applicable to the handling of EEA residents’ personal data, and our actions taken in response, may cause us to assume additional liabilities or incur additional costs and obligations and could result in our business, operating results and financial condition being harmed. Additionally, we and our customers may face a risk of enforcement actions by data protection authorities in the EEA relating to personal data transfers to and by us from the EEA. Any such enforcement actions could result in substantial costs and diversion of resources, distract management and technical personnel and negatively affect our business, operating results and financial condition.

 

55

 

 

In addition, California has enacted legislation that has been described as the first “GDPR-like” law in the U.S. The California state legislature passed the California Consumer Privacy Act (“CCPA”) in 2018 and California voters approved a ballot measure subsequently establishing the California Privacy Rights Act (“CPRA”) in 2020, which will jointly regulate the processing of personal information of California residents and increase the privacy and security obligations of entities handling certain personal information of California residents, including requiring covered companies to provide new disclosures to California consumers, and afford such consumers new abilities to opt-out of certain sales of personal information. The CCPA came into effect on January 1, 2020, and the California Attorney General may bring enforcement actions, with penalties for violations of the CCPA. The CPRA will go into effect on January 1, 2023 instilling enforcement authority in a new dedicated regulatory body, the California Privacy Protection Agency, which will begin carrying out enforcement actions as soon as six months after the enactment date. While aspects of both the CCPA and CPRA and their interpretations remain to be determined in practice, we are committed to comply with their obligations. We cannot yet fully predict the impact of the CCPA and CPRA on our business or operations, but developments regarding these and all privacy and data protection laws and regulations around the world may require us to modify our data processing practices and policies and to incur substantial additional costs and expenses in an effort to maintain compliance on an ongoing basis. Other countries and jurisdictions throughout the world are considering or enacting laws and regulations requiring the local storage of data. For example, under Russian law, all data operators collecting personal data of Russian citizens through electronic communications, including the internet, must comply with Russian laws regulating the local storage of such data in databases located in the territory of Russia. This law applies not only to local data controllers but also to data controllers established outside Russia to the extent they gather personal data relating to Russian nationals through websites aimed at the territory of Russia. 

 

We have been undertaking measures in an effort to comply with the GDPR, CCPA, CPRA and other applicable privacy and data protection laws and regulations, and complying with these laws and regulations may require us to incur substantial operational costs and to require its data handling practices. The costs of compliance with, and other burdens imposed by, such laws, regulations and policies that are applicable to us may limit the use and adoption of our products and solutions, alter the way we conduct business and/or could otherwise have a material adverse impact on our results of operations. For example, we may find it necessary to establish systems to maintain data originated in certain jurisdictions within those jurisdictions, which may involve substantial expense and distraction from other aspects of our business. Further, the costs of compliance with, and other burdens imposed by, such laws, regulations and policies that are applicable to us, may limit the use and adoption of our products and solutions and could have a material adverse impact on our results of operations.

 

Any failure or perceived failure (including as a result of deficiencies in our policies, procedures or measures relating to privacy, data protection, data security, marketing or client communications) by us to comply with laws, regulations, policies, legal or contractual obligations, industry standards, or regulatory guidance relating to privacy, data protection or data security may result in governmental investigations and enforcement actions, litigation, fines and penalties or adverse publicity and could cause our clients to lose trust in us, which could have a material adverse effect on our reputation, business, financial condition and results of operations.

 

We expect that there will continue to be new proposed laws, regulations and industry standards relating to privacy, data protection, data security, marketing, consumer communications and information security in the U.S., the European Union, Russia and other jurisdictions, and we cannot determine the impact such future laws, regulations and standards may have on our business. Future laws, regulations, standards and other obligations or any changed interpretation or enforcement of existing laws or regulations could impair our ability to develop and market new services and maintain and grow our client base and increase revenue.

 

We are subject to laws and regulations restricting our operations, including export restrictions, economic sanctions and the Foreign Corrupt Practices Act and similar anti-corruption laws. If we are not in compliance with applicable legal requirements, we may be subject to civil or criminal penalties and other remedial measures.

 

Our operations are subject to laws and regulations restricting our operations, including activities involving restricted countries, organizations, entities and persons that have been identified as unlawful actors or that are subject to U.S. sanctions imposed by the Office of Foreign Assets Control (“OFAC”) or other international economic sanctions that prohibit us from engaging in trade or financial transactions with certain countries, businesses, organizations and individuals. We are subject to the Foreign Corrupt Practices Act (“FCPA”), which prohibits U.S. companies and their intermediaries from bribing foreign officials for the purpose of obtaining or keeping business or otherwise obtaining favorable treatment, and other laws concerning our international operations. The FCPA’s foreign counterparts contain similar prohibitions, although varying in both scope and jurisdiction. We operate in many parts of the world that have experienced governmental corruption to some degree, and, in certain circumstances, strict compliance with anti-bribery laws may conflict with local customs and practices.

 

56

 

 

We are currently in the process of developing and implementing formal controls and procedures to ensure that we are in compliance with the FCPA, OFAC sanctions, and similar sanctions, laws and regulations. The implementation of such procedures may be time consuming and expensive and could result in the discovery of issues or violations with respect to the foregoing by us or our employees, independent contractors, subcontractors or agents of which we were previously unaware.

 

If we are not completely effective in ensuring our compliance with all such applicable laws, it could result in us being subject to criminal and civil penalties, disgorgement and other sanctions and remedial measures, and legal expenses. Likewise, any investigation of any potential violations of such laws by the U.S. or other jurisdictions could also have an adverse impact on our reputation, business, financial condition and results of operations.

 

Changes to the U.S. administration’s fiscal, political, regulatory and other policies may adversely affect our business, financial condition and results of operations.

 

Recent events, including new policy introductions following the 2020 U.S presidential election, may result in substantial regulatory uncertainty regarding international trade and trade policy. U.S. policies have called for substantial changes to trade agreements, have increased tariffs on certain goods imported into the U.S. and have raised the possibility of imposing significant, additional tariff increases. In the past, unilateral tariffs on imported products by the U.S. have triggered retaliatory actions from certain foreign governments, including China and Russia, and may trigger retaliatory actions by other foreign governments, potentially resulting in a “trade war.” While we cannot predict the extent to which the U.S. or other countries will impose quotas, duties, tariffs, taxes or other similar restrictions upon the import or export of our products in the future, a “trade war” of this nature or other governmental action related to tariffs or international trade agreements could have an adverse impact on demand for our services, sales and clients and affect the economies of the U.S. and various countries, having an adverse effect on our business, financial condition and results of operations.

 

In addition, regulatory, judicial or other developments regarding SPACs or companies, such as us, that have merged with a SPAC, could have an adverse effect on us. For example, the SEC has recently issued several statements regarding regulatory matters involving SPACS, and there can be no assurances that future statements would not have an adverse effect on our business, financial condition and results of operations.

 

Negative publicity about offshore outsourcing or anti-outsourcing legislation and restriction on immigration may have an adverse effect on our business.

 

The issue of companies outsourcing services to organizations operating in other countries is a topic of political discussion in many countries, including the U.S., which is our largest source of revenues. Many organizations and public figures in the U.S. and Europe have publicly expressed concern about a perceived association between offshore outsourcing IT services providers and the loss of jobs in their home countries. For example, measures aimed at limiting or restricting outsourcing by U.S. companies are periodically considered in Congress and in numerous state legislatures to address concerns over the perceived association between offshore outsourcing and the loss of jobs in the U.S. A number of U.S. states have passed legislation that restricts state government entities from outsourcing certain work to offshore IT services providers. Given the ongoing debate over this issue, the introduction and consideration of other restrictive legislation is possible. If enacted, such measures may broaden restrictions on outsourcing by federal and state government agencies and on government contracts with firms that outsource services directly or indirectly, impact private industry with measures such as tax disincentives or intellectual property transfer restrictions, and/or restrict the use of certain business visas. In addition, current or prospective clients may be discouraged from transferring services to providers that utilize offshore delivery centers such as us to avoid any negative perceptions that may be associated with using an offshore provider or for data privacy and security concerns. As a result, our ability to service our clients could be impaired and we may not be able to compete effectively with competitors that operate primarily from within the countries in which our clients operate. Any such slowdown or reversal of the existing industry trends toward offshore outsourcing may have a material adverse effect on our business, financial condition and results of operations.

 

Some of our projects may involve our personnel obtaining visas to travel and work at customer sites outside of our personnel’s home countries and often in the United States. Our reliance on visas to staff projects with employees who are not citizens of the country where the work is to be performed makes us vulnerable to legislative and administrative changes in the number of visas to be issued in any particular year and other work permit laws and regulations. The process to obtain the required visas and work permits can be lengthy and difficult and variations due to political forces and economic conditions in the number of permitted applications, as well as application and enforcement processes, may cause delays or rejections when trying to obtain visas. Delays in obtaining visas may result in delays in the ability of our personnel to travel to meet with and provide services to our customers or to continue to provide services on a timely basis. In addition, the availability of a sufficient number of visas without significant additional costs could limit our ability to provide services to our customers on a timely and cost-effective basis or manage our sales and delivery centers as efficiently as we otherwise could. Delays in or the unavailability of visas and work permits could have a material adverse effect on our business, results of operations, financial condition and cash flows.

 

57

 

 

Our subsidiaries in CEE can be forced into liquidation on the basis of formal noncompliance with certain legal requirements.

 

We operate in CEE primarily through locally organized subsidiaries. Certain provisions of local laws may allow a court to order liquidation of a locally organized legal entity on the basis of its formal noncompliance with certain requirements during formation, reorganization or during its operations. If a company fails to comply with certain requirements including those relating to minimum net assets, governmental or local authorities can seek the involuntary liquidation of such company in court, and the company’s creditors will have the right to accelerate their claims or demand early performance of the company’s obligations as well as demand compensation for any damages. If involuntary liquidation of any of our subsidiaries were to occur, such liquidation could materially adversely affect our business, financial condition and results of operations.

 

Risks Associated with Intellectual Property

 

We may not be able to prevent unauthorized use of our intellectual property and our intellectual property rights may not be adequate to protect our business, financial condition and results of operations.

 

Our success largely depends on methodologies, practices, tools and technical expertise and other intellectual property that we use in designing, developing, implementing and maintaining our services and solutions. We rely upon a combination of nondisclosure, confidentiality, assignment of invention and other contractual arrangements as well as trade secret, patent, copyright and trademark laws to protect our intellectual property rights. We may also rely on litigation to enforce our intellectual property rights and contractual rights.

 

The nondisclosure and confidentiality agreements that we enter into with our employees, independent contractors, vendors and clients in order to protect our proprietary information may not provide meaningful protection against unauthorized use, misappropriation or disclosure for trade secrets, know-how or other proprietary information and there can be no assurance that others will not independently develop the know-how and trade secrets or develop better methods than us. Policing unauthorized use of such proprietary information is difficult and expensive. We may not be able to deter current and former employees, contractors, vendors, clients and other parties from breaching confidentiality agreements and misappropriating proprietary information and it is possible that third parties may copy, reverse engineer, or otherwise obtain and use our information and proprietary technology without authorization or otherwise infringing on our intellectual property rights.

 

In addition, our current and former employees or contractors could challenge our exclusive rights in the intellectual property they have developed in the course of their employment. In Russia and certain other countries in which we operate, an employer is deemed to own the copyright in works created by its employees during the course, and within the scope, of their employment, provided certain requirements are complied with. The employer may be required to satisfy additional legal requirements in order to make further use and dispose of such works. While we believe that we have complied with all such requirements and have fulfilled all requirements necessary to acquire all rights in intellectual property developed by our contractors and subcontractors, these requirements are often ambiguously defined and enforced.

 

Implementation of intellectual property-related laws in CIS and CEE countries in which we operate has historically been lacking and there is no assurance that we will be able to enforce or defend our rights under our non-disclosure, confidentiality or assignment of invention agreements or that protection of intellectual property rights in such countries will be as effective as that in the U.S. Any litigation relating to our intellectual property may not prove successful and might result in substantial costs and diversion of resources and management attention.

 

In some cases, litigation may be necessary to enforce our intellectual property rights or to protect our trade secrets. Litigation could be costly, time consuming and distracting to management and could result in the impairment or loss of portions of our intellectual property. Furthermore, our efforts to enforce our intellectual property rights may be met with defenses, counterclaims and countersuits attacking the validity and enforceability of our intellectual property rights and exposing us to significant damages or injunctions. Our inability to protect our intellectual property against unauthorized copying or use, as well as any costly litigation or diversion of our management’s attention and resources, could delay sales or the implementation of our products, impair the functionality of our products, delay introductions of new products, result in our substituting less-advanced or more-costly technologies into our products or harm our reputation. In addition, we may be required to license additional intellectual property from third parties to develop and market new products, and we cannot assure you that we could license that intellectual property on commercially reasonable terms or at all.

 

58

 

 

Due to the foregoing reasons, we cannot guarantee that we will be successful in maintaining existing or obtaining future intellectual property rights or registrations, be able to detect unauthorized use of our intellectual property and take appropriate steps to enforce and protect our rights, or that any such steps will be successful. We can also neither guarantee that we have taken all necessary steps to enforce our intellectual property rights in each jurisdiction in which we operate nor that the intellectual property laws of any jurisdiction in which we operate are adequate to protect our interest or that any favorable judgment obtained by us with respect thereto will be enforced in the courts. Unauthorized use by third parties of, or other failure to protect, our intellectual property, including the costs of enforcing intellectual property rights, could have a material adverse effect on our business, financial condition and results of operations.

 

We may face intellectual property infringement claims that could be time-consuming and costly to defend and failure to defend against such claims may have a material adverse effect on our reputation, business, financial condition and results of operations.

 

Our success largely depends on our ability to use and develop our technology, tools, code, methodologies and services without infringing the intellectual property rights of third parties, including patents, copyrights, trade secrets and trademarks. We may be subject to litigation involving claims of patent infringement or violation of other intellectual property rights of third parties.

 

We typically indemnify clients who purchase our services and solutions against potential infringement of intellectual property rights, which subjects us to the risk of indemnification claims. These claims may require us to initiate or defend protracted and costly litigation on behalf of our clients, regardless of the merits of these claims and are often not subject to liability limits or exclusion of consequential, indirect or punitive damages. If any of these claims succeed, we may be forced to pay damages on behalf of our clients, redesign or cease offering our allegedly infringing services or solutions or obtain licenses for the intellectual property such services or solutions allegedly infringe. If we cannot obtain all necessary licenses on commercially reasonable terms, our clients may be forced to stop using our services or solutions.

 

The holders of patents and other intellectual property rights potentially relevant to our service offerings may make it difficult for us to acquire a license on commercially acceptable terms. Also, we may be unaware of intellectual property registrations or applications relating to our services that may give rise to potential infringement claims against us. There may also be technologies licensed to and relied on by us that are subject to infringement or other corresponding allegations or claims by third parties which may damage our ability to rely on such technologies.

 

Parties making infringement claims may be able to obtain an injunction to prevent us from delivering our services or using technology involving the allegedly infringing intellectual property. Intellectual property litigation is expensive and time-consuming and could divert management’s attention from our business. A successful infringement claim against us, whether with or without merit, could, among other things, require us to pay substantial damages, develop non-infringing technology, or rebrand our name or enter into royalty or license agreements that may not be available on acceptable terms, if at all, and would require us to cease making, licensing or using products that have infringed a third party’s intellectual property rights. Protracted litigation could also result in existing or prospective clients deferring or limiting their purchase or use of our software product development services or solutions until resolution of such litigation or could require us to indemnify our clients against infringement claims in certain instances. Any intellectual property claims or litigation in this area, whether or not we ultimately win or lose, could damage our reputation and materially adversely affect our business, financial condition and results of operations. 

 

Our use of open source software may lead to possible litigation, negatively affect sales and create liability.

 

We often incorporate software licensed by third parties under so-called “open source” licenses, which may expose us to liability and have a material impact on our software development services. Use of open source software may entail greater risks than use of third-party commercial software, as open source licensors generally do not provide support, warranties, indemnification, or other contractual protections regarding infringement claims or the quality of the code. In addition, the public availability of such software may make it easier for others to compromise our services. Although we monitor our use of open source software in an effort both to comply with the terms of the applicable open source licenses and to avoid subjecting our client deliverables to conditions we do not intend, the terms of many open source licenses have not been interpreted by courts in relevant jurisdictions, and there is a risk that these licenses could be construed in a way that could impose unanticipated conditions or restrictions on our clients’ ability to use the software that we develop for them and operate their businesses as they intend. Moreover, we cannot assure you that our processes for controlling our use of open source software in our products will be effective. From time to time, there have been claims challenging the ownership of open source software against companies that incorporate it into their products.

 

59

 

 

Therefore, there is a possibility that our clients could be subject to actions by third parties claiming that what we believe to be licensed open source software infringes such third parties’ intellectual property rights, and we would generally be required to indemnify our clients against such claims. In addition, in the event that portions of client deliverables are determined to be subject to an open source license, we or our clients could be required to publicly release the affected portions of source code or re-engineer all, or a portion of, the applicable software. Disclosing our proprietary source code could allow our clients’ competitors to create similar products with lower development effort and time and ultimately could result in a loss of sales for our clients. Furthermore, if the license terms for the open source code change, we may be forced to re-engineer our software or incur additional costs. Any of these events could create liability for us to our clients and damage our reputation, which could have a material adverse effect on our business, financial condition and results of operations.

 

Risks Related to Our Securities

 

Our bylaws provide that the Court of Chancery of the State of Delaware (or, if the Court of Chancery does not have jurisdiction, another State court in Delaware or the federal district court for the District of Delaware) shall, to the fullest extent permitted by law, be the sole and exclusive forum for substantially all disputes between us and our stockholders (other than claims arising under federal securities laws, including the Securities Act or the Exchange Act and any successors thereto), which could limit our stockholders’ ability to obtain a favorable judicial forum for disputes with us or our directors, officers or employees.

 

Our bylaws provide that the Court of Chancery of the State of Delaware (or, if the Court of Chancery does not have jurisdiction, another State court in Delaware or the federal district court for the District of Delaware) shall, to the fullest extent permitted by law, be the sole and exclusive forum for the following (except for any claim as to which such court determines that there is an indispensable party not subject to the jurisdiction of such court (and the indispensable party does not consent to the personal jurisdiction of such court within 10 days following such determination), which is vested in the exclusive jurisdiction of a court or forum other than such court or for which such court does not have subject matter jurisdiction):

 

any derivative action or proceeding brought on our behalf;

 

any action asserting a claim of breach of a fiduciary duty owed by, or otherwise wrongdoing by, any of our directors, officers or other employees to us or our stockholders;

 

any action arising pursuant to any provision of the Delaware General Corporation Law (the “DGCL”), our certificate of incorporation or bylaws;

 

any action to interpret, apply, enforce or determine the validity of our certificate of incorporation or bylaws; and

 

any other action asserting a claim that is governed by the internal affairs doctrine.

 

However, notwithstanding the exclusive forum provisions, our bylaws explicitly state that they would not preclude the filing of claims brought to enforce any liability or duty created under federal securities laws, including the Exchange Act or Securities Act.

 

Our amended and restated bylaws also provide that, unless we consent in writing to the selection of an alternative forum, the federal district courts of the United States shall be the sole and exclusive forum for any action asserting a claim arising pursuant to the Securities Act, such a provision known as a “Federal Forum Provision.” Any person or entity purchasing or otherwise acquiring any interest in our shares of capital stock shall be deemed to have notice of and consented to these provisions.

 

These exclusive forum provisions may limit a stockholder’s ability to bring a claim in a judicial forum that it finds favorable for disputes with us or our directors, officers or other employees, which may discourage lawsuits against us and our directors, officers and other employees. Additionally, a court could determine that the exclusive forum provision is unenforceable. If a court were to find the exclusive forum provision in our bylaws to be inapplicable or unenforceable in an action, we may incur additional costs associated with resolving the dispute in other jurisdictions, which could seriously harm our business.

 

60

 

 

The price of our common stock and warrants may be volatile.

 

The price of our common stock and warrants may fluctuate due to a variety of factors, including:

 

our ability to effectively service any current and future outstanding debt obligations;

 

the announcement the introduction of new products or services, or enhancements thereto, by us or our competitors;

 

developments concerning intellectual property rights;

 

changes in legal, regulatory and enforcement frameworks impacting our products;

 

variations in our and our competitors’ results of operations;

 

the addition or departure of key personnel;

 

announcements by us or our competitors of acquisitions, investments or strategic alliances;

 

actual or perceived data security incidents or breaches;

 

actual or anticipated fluctuations in our quarterly and annual results and those of other public companies in our industry;

 

the failure of securities analysts to publish research about us, or shortfalls in our results of operations compared to levels forecast by securities analysts;

 

any delisting of our common stock or warrants from NASDAQ due to any failure to meet listing requirements;

 

adverse developments from litigation; and

 

the general state of the securities market.

 

These market and industry factors may materially reduce the market price of our common stock and warrants, regardless of our operating performance.

 

As of June 30, 2021, over one-third of our outstanding common stock was held by our executive officers and directors, or by stockholders controlled by our executive officers or directors, although that percentage decreased as a result of our public offering that closed on July 6, 2021. The concentration of ownership provides such persons with substantial control over us, which could limit your ability to influence the outcome of key transactions, including a change of control, and future resales of our common stock held by such persons may cause the market price of our common stock to drop significantly.

 

As a result, such persons, acting together, have significant influence over all matters that require approval by our stockholders, including the election of directors and approval of significant corporate transactions. Corporate action might be taken even if other stockholders oppose them. This concentration of ownership might also have the effect of delaying or preventing a change of control of our company that other stockholders may view as beneficial.

 

To the extent that such persons purchase additional shares of ours, the percentage of shares that will be held by them will increase, decreasing the percentage of shares that are held by public stockholders.

 

If any significant stockholder sells large amounts of our common stock in the open market or in privately negotiated transactions, or if warrant holders exercise their warrant and sell the shares acquired upon exercise, this could have the effect of increasing the volatility in the price of our common stock or putting significant downward pressure on the price of our common stock.

 

61

 

 

We do not currently intend to pay dividends on our common stock and, consequently, your ability to achieve a return on your investment will depend on appreciation in the price of our common stock.

 

We have not paid any cash dividends on our common stock since our merger with ChaSerg. The payment of any cash dividends will be dependent upon our revenue, earnings and financial condition from time to time. The payment of any dividends will be within the discretion of our board of directors. It is presently expected that we will retain all earnings for use in our business operations and, accordingly, it is not expected that our board of directors will declare any dividends in the foreseeable future. Our ability to declare dividends may be limited by the terms of any financing and/or other agreements entered into by us or our subsidiaries from time to time and by requirements under the laws of our subsidiaries’ respective jurisdictions of incorporation to set aside a portion of their net income in each year to legal reserves. Therefore, you are not likely to receive any dividends on your common stock for the foreseeable future and the success of an investment in shares of our common stock will depend upon any future appreciation in its value. Consequently, investors may need to sell all or part of their holdings of our common stock after price appreciation, which may never occur, as the only way to realize any future gains on their investment. There is no guarantee that shares of our common stock will appreciate in value or even maintain the price at which our stockholders have purchased their shares.

 

Delaware law and our certificate of incorporation and bylaws contain certain provisions, including anti-takeover provisions, that limit the ability of stockholders to take certain actions and could delay or discourage takeover attempts that stockholders may consider favorable.

 

Our certificate of incorporation and bylaws, and the DGCL, contain provisions that could have the effect of rendering more difficult, delaying, or preventing an acquisition deemed undesirable by our board of directors and therefore depress the trading price of our common stock and warrants. These provisions could also make it difficult for stockholders to take certain actions, including electing directors who are not nominated by the current members of our board of directors or taking other corporate actions, including effecting changes in our management. Among other things, our certificate of incorporation and bylaws include provisions regarding:

 

a classified board of directors with three-year staggered terms, which could delay the ability of stockholders to change the membership of a majority of our board of directors;

 

the ability of our board of directors to issue shares of preferred stock, including “blank check” preferred stock, and to determine the price and other terms of those shares, including preferences and voting rights, without stockholder approval, which could be used to significantly dilute the ownership of a hostile acquirer;

 

the limitation of the liability of, and the indemnification of our directors and officers;

 

the exclusive right of our board of directors to elect a director to fill a vacancy created by the expansion of the board of directors or the resignation, death or removal of a director, which prevents stockholders from being able to fill vacancies on our board of directors;

 

the requirement that directors may only be removed from our board of directors for cause;

 

a prohibition on stockholder action by written consent, which forces stockholder action to be taken at an annual or special meeting of stockholders and could delay the ability of stockholders to force consideration of a stockholder proposal or to take action, including the removal of directors;

 

the requirement that a special meeting of stockholders may be called only by our board of directors, the chairman of our board of directors, or our chief executive officer, which could delay the ability of stockholders to force consideration of a proposal or to take action, including the removal of directors;

 

controlling the procedures for the conduct and scheduling of board of directors and stockholder meetings;

 

62

 

 

the requirement for the affirmative vote of holders of at least a majority of the voting power of all of the then outstanding shares of the voting stock, voting together as a single class, to amend, alter, change or repeal any provision of our certificate of incorporation or our bylaws, which could preclude stockholders from bringing matters before annual or special meetings of stockholders and delay changes in our board of directors and also may inhibit the ability of an acquirer to effect such amendments to facilitate an unsolicited takeover attempt;

 

the ability of our board of directors to amend the bylaws, which may allow our board of directors to take additional actions to prevent an unsolicited takeover and inhibit the ability of an acquirer to amend the bylaws to facilitate an unsolicited takeover attempt; and

 

advance notice procedures with which stockholders must comply to nominate candidates to our board of directors or to propose matters to be acted upon at a stockholders’ meeting, which could preclude stockholders from bringing matters before annual or special meetings of stockholders and delay changes in our board of directors and also may discourage or deter a potential acquirer from conducting a solicitation of proxies to elect the acquirer’s own slate of directors or otherwise attempting to obtain control of our company.

 

These provisions, alone or together, could delay or prevent hostile takeovers and changes in control or changes in our board of directors or management.

 

In addition, as a Delaware corporation, we are subject to provisions of Delaware law, including Section 203 of the DGCL, which may prohibit certain stockholders holding 15% or more of our outstanding capital stock from engaging in certain business combinations with us for a specified period of time.

 

Any provision of our certificate of incorporation, bylaws or Delaware law that has the effect of delaying or preventing a change in control could limit the opportunity for our stockholders to receive a premium for their shares of our capital stock and could also affect the price that some investors are willing to pay for our common stock and warrants.

 

Item 2. Unregistered Sales of Equity Securities and Use of Proceeds.

 

None.

 

Purchases of Equity Securities

 

None.

 

Item 3. Default Upon Senior Securities

 

None.

 

Item 4. Mine Safety Disclosures

 

None.

 

Item 5. Other Information

 

None.

 

63

 

 

Item 6. Exhibits.

 

The exhibits listed in the accompanying Exhibit Index are filed or incorporated by reference as part of this Quarterly Report on Form 10-Q.

 

EXHIBIT INDEX

 

Exhibit
Number
  Description   Incorporated by
Reference
From Form
 

Incorporated

by Reference

From Exhibit

Number

  Date Filed
10.1   Warrant Exchange Agreement   8-K   10.1   May 17, 2021
10.2   Warrant Exchange Agreement   8-K   10.1   May 17, 2021
10.3   Warrant Exchange Agreement   8-K   10.1   May 20, 2021
10.4   Consulting Agreement   Filed herewith        
31.1   Certification of the Chief Executive Officer pursuant to Section 302 of the Sarbanes-Oxley Act.   Filed herewith        
31.2   Certification of the Chief Financial Officer pursuant to Section 302 of the Sarbanes-Oxley Act.   Filed herewith        
32.1*   Certification of the Chief Executive Officer pursuant to Section 906 of the Sarbanes-Oxley Act.   Furnished herewith        
32.2*   Certification of the Chief Financial Officer pursuant to Section 906 of the Sarbanes-Oxley Act.   Furnished herewith        
101.INS   XBRL Instance Document - the instance document does not appear in the Interactive Data File because its XBRL tags are embedded within the Inline XBRL document.   Filed herewith        
101.SCH   XBRL Taxonomy Extension Schema Document   Filed herewith        
101.CAL   XBRL Taxonomy Extension Calculation Linkbase Document   Filed herewith        
101.DEF   XBRL Taxonomy Extension Definition Linkbase Document   Filed herewith        
101,LAB   XBRL Taxonomy Extension Label Linkbase Document   Filed herewith        
101.PRE   XBRL Taxonomy Extension Presentation Linkbase Document   Filed herewith        
104   Cover Page Interactive Data File (formatted as Inline XBRL and contained in Exhibit 101)   Filed herewith        

 

 

*

The certifications furnished in Exhibits 32.1 and 32.2 hereto are deemed to accompany this Quarterly Report on Form 10-Q and will not be deemed “filed” for purposes of Section 18 of the Securities Exchange Act of 1934, as amended. Such certifications will not be deemed to be incorporated by reference into any filings under the Securities Act of 1933, as amended, or the Securities Exchange Act of 1934, as amended, except to the extent that the registrant specifically incorporates it by reference.

 

64

 

 

SIGNATURES

 

Pursuant to the requirements of the Securities Exchange Act of 1934, the registrant has duly caused this report to be signed on its behalf by the undersigned thereunto duly authorized.

 

  Grid Dynamics Holdings, Inc.
     
Date: August 5, 2021 By: /s/ Leonard Livschitz
    Leonard Livschitz
   

Chief Executive Officer and Director

(Principal Executive Officer)

     
Date: August 5, 2021 By: /s/ Anil Doradla
    Anil Doradla
   

Chief Financial Officer

(Principal Financial and Accounting Officer)

 

65

Represents the weighted average exercise price Represents weighted average remaining contractual term false --12-31 Q2 0001743725 0001743725 2021-01-01 2021-06-30 0001743725 2021-08-02 0001743725 2021-06-30 0001743725 2020-12-31 0001743725 2021-04-01 2021-06-30 0001743725 2020-04-01 2020-06-30 0001743725 2020-01-01 2020-06-30 0001743725 us-gaap:PreferredStockMember 2020-12-31 0001743725 us-gaap:CommonStockMember 2020-12-31 0001743725 us-gaap:AdditionalPaidInCapitalMember 2020-12-31 0001743725 us-gaap:RetainedEarningsMember 2020-12-31 0001743725 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2020-12-31 0001743725 us-gaap:PreferredStockMember 2021-01-01 2021-03-31 0001743725 us-gaap:CommonStockMember 2021-01-01 2021-03-31 0001743725 us-gaap:AdditionalPaidInCapitalMember 2021-01-01 2021-03-31 0001743725 us-gaap:RetainedEarningsMember 2021-01-01 2021-03-31 0001743725 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-01-01 2021-03-31 0001743725 2021-01-01 2021-03-31 0001743725 us-gaap:PreferredStockMember 2021-03-31 0001743725 us-gaap:CommonStockMember 2021-03-31 0001743725 us-gaap:AdditionalPaidInCapitalMember 2021-03-31 0001743725 us-gaap:RetainedEarningsMember 2021-03-31 0001743725 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-03-31 0001743725 2021-03-31 0001743725 us-gaap:PreferredStockMember 2021-04-01 2021-06-30 0001743725 us-gaap:CommonStockMember 2021-04-01 2021-06-30 0001743725 us-gaap:AdditionalPaidInCapitalMember 2021-04-01 2021-06-30 0001743725 us-gaap:RetainedEarningsMember 2021-04-01 2021-06-30 0001743725 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-04-01 2021-06-30 0001743725 us-gaap:PreferredStockMember 2021-06-30 0001743725 us-gaap:CommonStockMember 2021-06-30 0001743725 us-gaap:AdditionalPaidInCapitalMember 2021-06-30 0001743725 us-gaap:RetainedEarningsMember 2021-06-30 0001743725 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-06-30 0001743725 us-gaap:PreferredStockMember 2019-12-31 0001743725 us-gaap:CommonStockMember 2019-12-31 0001743725 us-gaap:AdditionalPaidInCapitalMember 2019-12-31 0001743725 us-gaap:RetainedEarningsMember 2019-12-31 0001743725 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2019-12-31 0001743725 2019-12-31 0001743725 us-gaap:PreferredStockMember 2020-01-01 2020-03-31 0001743725 us-gaap:CommonStockMember 2020-01-01 2020-03-31 0001743725 us-gaap:AdditionalPaidInCapitalMember 2020-01-01 2020-03-31 0001743725 us-gaap:RetainedEarningsMember 2020-01-01 2020-03-31 0001743725 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2020-01-01 2020-03-31 0001743725 2020-01-01 2020-03-31 0001743725 us-gaap:PreferredStockMember 2021-01-01 2021-06-30 0001743725 us-gaap:CommonStockMember 2021-01-01 2021-06-30 0001743725 us-gaap:AdditionalPaidInCapitalMember 2021-01-01 2021-06-30 0001743725 us-gaap:RetainedEarningsMember 2021-01-01 2021-06-30 0001743725 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-01-01 2021-06-30 0001743725 us-gaap:PreferredStockMember 2020-03-31 0001743725 us-gaap:CommonStockMember 2020-03-31 0001743725 us-gaap:AdditionalPaidInCapitalMember 2020-03-31 0001743725 us-gaap:RetainedEarningsMember 2020-03-31 0001743725 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2020-03-31 0001743725 2020-03-31 0001743725 us-gaap:PreferredStockMember 2020-04-01 2020-06-30 0001743725 us-gaap:CommonStockMember 2020-04-01 2020-06-30 0001743725 us-gaap:AdditionalPaidInCapitalMember 2020-04-01 2020-06-30 0001743725 us-gaap:RetainedEarningsMember 2020-04-01 2020-06-30 0001743725 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2020-04-01 2020-06-30 0001743725 us-gaap:PreferredStockMember 2020-06-30 0001743725 us-gaap:CommonStockMember 2020-06-30 0001743725 us-gaap:AdditionalPaidInCapitalMember 2020-06-30 0001743725 us-gaap:RetainedEarningsMember 2020-06-30 0001743725 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2020-06-30 0001743725 2020-06-30 0001743725 gdyn:MergerAgreementMember 2020-03-01 2020-03-05 0001743725 us-gaap:AccountsReceivableMember 2021-01-01 2021-06-30 0001743725 us-gaap:AccountsReceivableMember 2020-01-01 2020-12-31 0001743725 gdyn:UnbilledReceivablesMember 2021-01-01 2021-06-30 0001743725 gdyn:UnbilledReceivablesMember 2021-06-30 0001743725 gdyn:UnbilledReceivablesMember 2020-01-01 2020-12-31 0001743725 gdyn:UnbilledReceivablesMember 2020-12-31 0001743725 gdyn:SalesCustomerMember 2021-01-01 2021-06-30 0001743725 gdyn:SalesCustomerMember 2020-01-01 2020-06-30 0001743725 2020-01-01 2020-12-31 0001743725 srt:MinimumMember 2021-01-01 2021-06-30 0001743725 srt:MaximumMember 2021-01-01 2021-06-30 0001743725 2020-03-01 2020-03-05 0001743725 2006-09-30 0001743725 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember 2021-06-30 0001743725 gdyn:ReductionOfProceedsMember 2021-01-01 2021-06-30 0001743725 us-gaap:GeneralAndAdministrativeExpenseMember 2021-01-01 2021-06-30 0001743725 2021-05-29 0001743725 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember us-gaap:CustomerRelationshipsMember 2021-01-01 2021-06-30 0001743725 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember gdyn:TacitTradeNameMember 2021-01-01 2021-06-30 0001743725 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember 2021-01-01 2021-06-30 0001743725 gdyn:TacitKnowledgeIncMember 2021-01-01 2021-06-30 0001743725 gdyn:TacitKnowledgeIncMember 2020-01-01 2020-06-30 0001743725 srt:MinimumMember gdyn:ComputersAndEquipmentMember 2021-01-01 2021-06-30 0001743725 srt:MaximumMember gdyn:ComputersAndEquipmentMember 2021-01-01 2021-06-30 0001743725 gdyn:ComputersAndEquipmentMember 2021-06-30 0001743725 gdyn:ComputersAndEquipmentMember 2020-12-31 0001743725 gdyn:MachineryAndAutomobilesMember 2021-01-01 2021-06-30 0001743725 gdyn:MachineryAndAutomobilesMember 2021-06-30 0001743725 gdyn:MachineryAndAutomobilesMember 2020-12-31 0001743725 srt:MinimumMember us-gaap:FurnitureAndFixturesMember 2021-01-01 2021-06-30 0001743725 srt:MaximumMember us-gaap:FurnitureAndFixturesMember 2021-01-01 2021-06-30 0001743725 us-gaap:FurnitureAndFixturesMember 2021-06-30 0001743725 us-gaap:FurnitureAndFixturesMember 2020-12-31 0001743725 gdyn:SoftwareMember 2021-01-01 2021-06-30 0001743725 gdyn:SoftwareMember 2021-06-30 0001743725 gdyn:SoftwareMember 2020-12-31 0001743725 srt:MinimumMember us-gaap:LeaseholdImprovementsMember 2021-01-01 2021-06-30 0001743725 srt:MaximumMember us-gaap:LeaseholdImprovementsMember 2021-01-01 2021-06-30 0001743725 us-gaap:LeaseholdImprovementsMember 2021-06-30 0001743725 us-gaap:LeaseholdImprovementsMember 2020-12-31 0001743725 srt:MinimumMember gdyn:CapitalizedSoftwareDevelopmentCostsMember 2021-01-01 2021-06-30 0001743725 srt:MaximumMember gdyn:CapitalizedSoftwareDevelopmentCostsMember 2021-01-01 2021-06-30 0001743725 gdyn:CapitalizedSoftwareDevelopmentCostsMember 2021-06-30 0001743725 gdyn:CapitalizedSoftwareDevelopmentCostsMember 2020-12-31 0001743725 srt:MinimumMember us-gaap:CustomerRelationshipsMember 2021-01-01 2021-06-30 0001743725 srt:MaximumMember us-gaap:CustomerRelationshipsMember 2021-01-01 2021-06-30 0001743725 us-gaap:CustomerRelationshipsMember 2021-06-30 0001743725 us-gaap:CustomerRelationshipsMember 2020-12-31 0001743725 srt:MinimumMember us-gaap:TrademarksAndTradeNamesMember 2021-01-01 2021-06-30 0001743725 srt:MaximumMember us-gaap:TrademarksAndTradeNamesMember 2021-01-01 2021-06-30 0001743725 us-gaap:TrademarksAndTradeNamesMember 2021-06-30 0001743725 us-gaap:TrademarksAndTradeNamesMember 2020-12-31 0001743725 us-gaap:NoncompeteAgreementsMember 2021-01-01 2021-06-30 0001743725 us-gaap:NoncompeteAgreementsMember 2021-06-30 0001743725 us-gaap:NoncompeteAgreementsMember 2020-12-31 0001743725 2023-03-25 2023-04-01 0001743725 2020-03-01 2020-03-27 0001743725 us-gaap:CommonStockMember 2020-03-05 0001743725 gdyn:GDIMember 2021-06-30 0001743725 2021-01-01 2021-01-20 0001743725 2021-02-23 2021-03-02 0001743725 2021-03-03 2021-03-29 0001743725 us-gaap:IPOMember 2021-06-30 0001743725 srt:AffiliatedEntityMember 2021-02-17 0001743725 srt:AffiliatedEntityMember us-gaap:CommonStockMember 2021-02-17 0001743725 gdyn:TwoThousandEighteenStockPlanMember 2021-06-30 0001743725 gdyn:TwoThousandEighteenStockPlanMember 2021-01-01 2021-06-30 0001743725 srt:MinimumMember gdyn:TwoThousandEighteenStockPlanMember 2021-06-30 0001743725 srt:MaximumMember gdyn:TwoThousandEighteenStockPlanMember 2021-06-30 0001743725 gdyn:TwoThousandTwentyPlanMember 2020-03-01 2020-03-05 0001743725 gdyn:NSOMember gdyn:EquityIncentivePlanMember 2021-04-01 2021-06-30 0001743725 us-gaap:RestrictedStockUnitsRSUMember gdyn:EquityIncentivePlanMember 2021-04-01 2021-06-30 0001743725 gdyn:EquityIncentivePlanMember 2021-04-01 2021-06-30 0001743725 gdyn:NSOMember 2021-01-01 2021-06-30 0001743725 gdyn:TwoThousandTwentyPlanMember 2021-01-01 2021-06-30 0001743725 gdyn:TwoThousandTwentyPlanMember 2021-06-30 0001743725 us-gaap:RestrictedStockUnitsRSUMember 2021-01-01 2021-06-30 0001743725 us-gaap:RestrictedStockUnitsRSUMember gdyn:TwoThousandTwentyPlanMember 2021-01-01 2021-06-30 0001743725 gdyn:TwoThousandTwentyPlanMember 2021-02-23 2021-03-02 0001743725 2021-03-02 0001743725 2021-07-01 2021-07-16 0001743725 us-gaap:PhantomShareUnitsPSUsMember 2021-01-01 2021-06-30 0001743725 2020-04-01 2020-12-31 0001743725 us-gaap:SubsequentEventMember 2021-06-01 2021-07-06 0001743725 us-gaap:CommonStockMember us-gaap:SubsequentEventMember 2021-06-01 2021-07-06 0001743725 us-gaap:SubsequentEventMember 2021-07-06 0001743725 us-gaap:SubsequentEventMember us-gaap:WarrantMember 2021-07-28 0001743725 us-gaap:SubsequentEventMember 2021-08-30 0001743725 us-gaap:SubsequentEventMember us-gaap:WarrantMember 2021-08-30 xbrli:shares iso4217:USD iso4217:USD xbrli:shares xbrli:pure
EX-10.4 2 f10q0621ex10-4_griddyna.htm CONSULTING AGREEMENT

Exhibit 10.4

 

5000 Executive Parkway,
Ste 520, San Ramon,
CA 94583, United States

Tel: 650.523.5000

www.griddynamics.com

 

CONSULTING AGREEMENT

 

This Consulting Agreement (“Agreement”) is entered into as of June 15, 2021 (the “Effective Date”), between Grid Dynamics Holdings, Inc. (“Company”), and Livschitz Family Enterprises, LLC, a Montana Limited Liability Company (“Consultant”). Company and Consultant desire to have Consultant perform services for Company, subject to and in accordance with the terms and conditions of this Agreement.

 

THEREFORE, the parties agree as follows:

 

1. SERVICES

 

1.1 Statements of Work. From time to time, Company and Consultant may execute one or more statements of work, substantially in the form attached hereto as Exhibit A, that describe the specific services to be performed by Consultant (as executed, a “Statement of Work”). Each Statement of Work will expressly refer to this Agreement, will form a part of this Agreement, and will be subject to the terms and conditions contained herein. A Statement of Work may be amended only by written agreement of the parties.

 

1.2 Performance of Services. Victoria Livschitz (“Service Provider”) will perform the services described in each Statement of Work (the “Services”) on behalf of Consultant in accordance with the terms and conditions set forth in each such Statement of Work and this Agreement. In no event will Consultant be permitted to provide the Services through anyone other than Service Provider. For purposes of this Agreement, references to Consultant will include Service Provider unless the context clearly requires otherwise.

 

1.3 Delivery. Consultant will deliver to Company the deliverables, designs, modules, software, products, documentation and other materials specified in the Statement of Work (individually or collectively, “Deliverables”) in accordance with the delivery schedule and other terms and conditions set forth in the Statement of Work.

 

2. PAYMENT

 

2.1 Fees. As Consultant’s sole compensation for the performance of Services, Company will pay Consultant the consideration specified in each Statement of Work in accordance with the terms set forth therein. Without limiting the generality of the foregoing Consultant acknowledges and agrees that, if specified in the Statement of Work, Company’s obligation to provide the consideration will be expressly subject to Consultant’s completion or achievement of certain milestones to Company’s reasonable satisfaction.

 

2.2 Expenses. Unless otherwise provided in the Statement of Work, Company will also reimburse Consultant for all reasonable and customary out-of-pocket travel, lodging and related expenses incurred by Consultant in connection with Consultant’s performance of Services. At Company’s request, Consultant will furnish Company with copies of receipts and other customary documentation for any expenses for which Consultant requests reimbursement hereunder.

 

 

 

 

5000 Executive Parkway,
Ste 520, San Ramon,
CA 94583, United States

 

Tel: 650.523.5000

www.griddynamics.com

 

2.3 Payment Terms. All fees and other amounts set forth in the Statement of Work, if any, are stated in and are payable in U.S. dollars. Unless otherwise provided in a Statement of Work, Consultant will invoice Company on a monthly basis for all fees and expenses payable to Consultant. Company will pay the full amount of each such invoice within thirty (30) days following receipt thereof, except for any amounts that Company disputes in good faith. The parties will use their respective commercially reasonable efforts to promptly resolve any such payment disputes.

 

3. RELATIONSHIP OF THE PARTIES

 

3.1 Independent Contractor. Consultant (including Service Provider) is an independent contractor and nothing in this Agreement will be construed as establishing an employment or agency relationship between Company and Consultant. Consultant has no authority to bind Company by contract or otherwise. Consultant will perform Services under the general direction of Company, but Consultant will determine, in Consultant’s sole discretion, the manner and means by which Services are accomplished, subject to the requirement that Consultant will at all times comply with applicable law.

 

3.2 Taxes and Employee Benefits. Consultant will report to all applicable government agencies as income all compensation received by Consultant pursuant to this Agreement. Consultant will be solely responsible for payment of all withholding taxes, social security, workers’ compensation, unemployment and disability insurance or similar items required by any government agency. Consultant will not be entitled to any benefits paid or made available by Company to its employees, including, without limitation, any vacation or illness payments, or to participate in any plans, arrangements or distributions made by Company pertaining to any bonus, stock option, profit sharing, insurance or similar benefits. Consultant will indemnify and hold Company harmless from and against all damages, liabilities, losses, penalties, fines, expenses and costs (including reasonable fees and expenses of attorneys and other professionals) arising out of or relating to any obligation imposed by law on Company to pay any withholding taxes, social security, unemployment or disability insurance or similar items in connection with compensation received by Consultant pursuant to this Agreement.

 

3,3 Liability Insurance. Consultant acknowledges that Company will not carry any liability insurance on behalf of Consultant. Consultant will maintain in force adequate liability insurance to protect Consultant from claims of personal injury (or death) or tangible or intangible property damage (including loss of use) that arise out of any act or omission of Consultant.

 

4. OWNERSHIP

 

4.1 Disclosure of Work Product. Consultant will, as an integral part of the performance of Services, disclose in writing to Company all inventions, products, designs, drawings, notes, documents, information, documentation, improvements, works of authorship, processes, techniques, know-how, algorithms, specifications, biological or chemical specimens or samples, hardware, circuits, computer programs, databases, user interfaces, encoding techniques, and other materials of any kind that Consultant may make, conceive, develop or reduce to practice, alone or jointly with others, in connection with performing Services, or that result from or that are related to such Services, whether or not they are eligible for patent, copyright, mask work, trade secret, trademark or other legal protection (collectively, “Consultant Work Product”). Consultant Work Product includes without limitation any Deliverables that Consultant delivers to Company pursuant to Section 1.3.

 

2

 

 

5000 Executive Parkway,
Ste 520, San Ramon,
CA 94583, United States

 

Tel: 650.523.5000

www.griddynamics.com

 

4.2 Ownership of Consultant Work Product. Consultant and Company agree that, to the fullest extent permitted by applicable law, each item of Consultant Work Product will be a work made for hire owned exclusively by Company. Consultant agrees that, regardless of whether an item of Consultant Work Product is a work made for hire, all Consultant Work Product will be the sole and exclusive property of Company. Consultant hereby irrevocably transfers and assigns to Company, and agrees to irrevocably transfer and assign to Company, all right, title and interest in and to the Consultant Work Product, including all worldwide patent rights (including patent applications and disclosures), copyright rights, mask work rights, trade secret rights, know-how, and any and all other intellectual property or proprietary rights (collectively, “Intellectual Property Rights”) therein. At Company’s request and expense, during and after the term of this Agreement, Consultant will assist and cooperate with Company in all respects, and will execute documents, and will take such further acts reasonably requested by Company to enable Company to acquire, transfer, maintain, perfect and enforce its Intellectual Property Rights and other legal protections for the Consultant Work Product. Consultant hereby appoints the officers of Company as Consultant’s attorney-in-fact to execute documents on behalf of Consultant for this limited purpose.

 

4.3 Moral Rights. To the fullest extent permitted by applicable law, Consultant also hereby irrevocably transfers and assigns to Company, and agrees to irrevocably transfer and assign to Company, and waives and agrees never to assert, any and all Moral Rights (as defined below) that Consultant may have in or with respect to any Consultant Work Product, during and after the term of this Agreement. “Moral Rights” mean any rights to claim authorship of a work, to object to or prevent the modification or destruction of a work, to withdraw from circulation or control the publication or distribution of a work, and any similar right, existing under judicial or statutory law of any country in the world, or under any treaty, regardless of whether or not such right as called or generally referred to as a “moral right.”

 

4.4 Related Rights. To the extent that Consultant owns or controls (presently or in the future) any patent rights, copyright rights, mask work rights, trade secret rights, or any other intellectual property or proprietary rights that may block or interfere with, or may otherwise be required for, the exercise by Company of the rights assigned to Company under this Agreement (collectively, “Related Rights”), Consultant hereby grants or will cause to be granted to Company a non-exclusive, royalty- free, irrevocable, perpetual, transferable, worldwide license (with the right to sublicense) to make, have made, use, offer to sell, sell, import, copy, modify, create derivative works based upon, distribute, sublicense, display, perform and transmit any products, software, hardware, methods or materials of any kind that are covered by such Related Rights, to the extent necessary to enable Company to exercise all of the rights assigned to Company under this Agreement.

 

3

 

 

5000 Executive Parkway,
Ste 520, San Ramon,
CA 94583, United States

 

Tel: 650.523.5000

www.griddynamics.com

 

5. CONFIDENTIAL INFORMATION

 

For purposes of this Agreement, “Confidential Information” means and will include: (i) any information, materials or knowledge regarding Company and its business, financial condition, products, programming techniques, customers, suppliers, technology or research and development that is disclosed to Consultant or to which Consultant has access in connection with performing Services; (ii) the Consultant Work Product; and (iii) the terms and conditions of this Agreement. Confidential Information will not include any information that: (a) is or becomes part of the public domain through no fault of Consultant; (b) was rightfully in Consultant’s possession at the time of disclosure, without restriction as to use or disclosure; or (c) Consultant rightfully receives from a third party who has the right to disclose it and who provides it without restriction as to use or disclosure. Consultant agrees to hold all Confidential Information in strict confidence, not to use it in any way, commercially or otherwise, except in performing Services, and not to disclose it to others. Consultant further agrees to take all actions reasonably necessary to protect the confidentiality of all Confidential Information.

 

6. WARRANTIES

 

6.1 No Pre-existing Obligations. Consultant represents and warrants that Consultant has no pre-existing obligations or commitments (and will not assume or otherwise undertake any obligations or commitments) that would be in conflict or inconsistent with or that would hinder Consultant’s performance of its obligations under this Agreement.

 

6.2 Performance Standard. Consultant represents and warrants that Services will be performed in a thorough and professional manner, consistent with high professional and industry standards by individuals with the requisite training, background, experience, technical knowledge and skills to perform Services.

 

6.3 Non-infringement. Consultant represents and warrants that the Consultant Work Product will not infringe, misappropriate or violate the rights of any third party, including, without limitation, any Intellectual Property Rights or any rights of privacy or rights of publicity, except to the extent any portion of the Consultant Work Product is created, developed or supplied by Company or by a third party on behalf of Company.

 

6.4 Competitive Activities. During the term of this Agreement, Consultant will not, directly or indirectly, in any individual or representative capacity, engage or participate in or provide services to any business that is competitive with the types and kinds of business being conducted by Company.

 

6.5 Non-Solicitation of Personnel. During the term of this Agreement and for a period of one (1) year thereafter, Consultant will not directly or indirectly solicit the services of any Company employee or consultant for Consultant’s own benefit or for the benefit of any other person or entity.

 

4

 

 

5000 Executive Parkway,
Ste 520, San Ramon,
CA 94583, United States

 

Tel: 650.523.5000

www.griddynamics.com

 

7. INDEMNITY

 

Consultant will defend, indemnify and hold Company harmless from and against all claims, damages, liabilities, losses, expenses and costs (including reasonable fees and expenses of attorneys and other professionals) arising out of or resulting from:

 

(a) any action by a third party against Company that is based on a claim that any Services performed under this Agreement, or the results of such Services (including any Consultant Work Product), or Company’s use thereof, infringe, misappropriate or violate such third party’s Intellectual Property Rights; and

 

(b) any action by a third party against Company that is based on any act or omission of Consultant and that results in: (i) personal injury (or death) or tangible or intangible property damage (including loss of use); or (ii) the violation of any statute, ordinance, or regulation.

 

8. TERM AND TERMINATION

 

8.1 Term. This Agreement will commence on the Effective Date and, unless terminated earlier in accordance with the terms of this Agreement, will remain in force and effect through June 30, 2022.

 

8.2 Termination for Breach. Either party may terminate this Agreement (including all Statements of Work) if the other party breaches any material term of this Agreement and fails to cure such breach within thirty (30) days following written notice thereof from the non-breaching party.

 

8.3 Termination for Convenience. Company may terminate this Agreement (including all Statements of Work) at any time, for any reason or no reason. Consultant may also terminate this Agreement at any time, for any reason or no reason, upon at least sixty (60) days written notice to Company.

 

8.4 Effect of Termination. Upon the expiration or termination of this Agreement for any reason: (i) Consultant will promptly deliver to Company all Consultant Work Product, including all work in progress on any Consultant Work Product not previously delivered to Company, if any; (ii) Consultant will promptly deliver to Company all Confidential Information in Consultant’s possession or control; and (iii) Company will provide Consultant any accrued but unpaid consideration due and payable to Consultant pursuant to Section 2 and the Statement of Work, including early Termination Benefits, if any.

 

8.5 Survival. The rights and obligations of the parties under Sections 2, 3.2, 3.3, 4, 5, 6.3, 6.5, 7, 8.4, will survive the expiration or termination of this Agreement.

 

5

 

 

5000 Executive Parkway,
Ste 520, San Ramon,
CA 94583, United States

 

Tel: 650.523.5000

www.griddynamics.com

 

9. GENERAL

 

9.1 Assignment. Consultant may not assign or transfer this Agreement, in whole or in part, without Company’s express prior written consent. Any attempt to assign this Agreement, without such consent, will be void. Subject to the foregoing, this Agreement will bind and benefit the parties and their respective successors and assigns.

 

9.2 No Election of Remedies. Except as expressly set forth in this Agreement, the exercise by Company of any of its remedies under this Agreement will not be deemed an election of remedies and will be without prejudice to its other remedies under this Agreement or available at law or in equity or otherwise.

 

9.3 Equitable Remedies. Because the Services are personal and unique and because Consultant will have access to Confidential Information of Company, Company will have the right to enforce this Agreement and any of its provisions by injunction, specific performance or other equitable relief, without having to post a bond or other consideration, in addition to all other remedies that Company may have for a breach of this Agreement at law or otherwise.

 

9.4 Attorneys’ Fees. If any action is necessary to enforce the terms of this Agreement, the substantially prevailing party will be entitled to reasonable attorneys’ fees, costs and expenses in addition to any other relief to which such prevailing party may be entitled.

 

9.5 Governing Law. This Agreement will be governed by and construed in accordance with the laws of the State of California, excluding its body of law controlling conflict of laws. Any legal action or proceeding arising under this Agreement will be brought exclusively in the federal or state courts located in the Northern District of California and the parties irrevocably consent to the personal jurisdiction and venue therein.

 

6

 

 

5000 Executive Parkway,
Ste 520, San Ramon,
CA 94583, United States

 

Tel: 650.523.5000

www.griddynamics.com

 

9.6 Severability. If any provision of this Agreement is held invalid or unenforceable by a court of competent jurisdiction, the remaining provisions of this Agreement will remain in full force and effect, and the provision affected will be construed so as to be enforceable to the maximum extent permissible by law.

 

9.7 Waiver. The failure by either party to enforce any provision of this Agreement will not constitute a waiver of future enforcement of that or any other provision.

 

9.8 Notices. All notices required or permitted under this Agreement will be in writing, will reference this Agreement, and will be deemed given: (i) when delivered personally; (ii) one (1) business day after deposit with a nationally-recognized express courier, with written confirmation of receipt; or (iii) three (3) business days after having been sent by registered or certified mail, return receipt requested, postage prepaid. All such notices will be sent to the addresses set forth above or to such other address as may be specified by either party to the other party in accordance with this Section.

 

9.9 Entire Agreement. This Agreement, together with all Statements of Work, constitutes the complete and exclusive understanding and agreement of the parties with respect to its subject matter and supersedes all prior understandings and agreements, whether written or oral, with respect to its subject matter. No term of any Statement of Work will be deemed to amend the terms of this Agreement unless the Statement of work references a specific provision in this Agreement and provides that the Statement of work is amending only that specific provision of this Agreement and only with respect to Services performed pursuant for such Statement of Work. Any waiver, modification or amendment of any provision of this Agreement will be effective only if in writing and signed by the parties hereto.

 

9.10 Counterparts. This Agreement may be executed in counterparts, each of which will be deemed an original, but all of which together will constitute one and the same instrument.

 

IN WITNESS WHEREOF, the parties have executed this Agreement as of the Effective Date.

 

COMPANY:   CONSULTANT:
         
By: /s/ Yury Gryzlov   By: /s/ Victoria Livschitz
Name:   Yury Gryzlov   Name:   Livschitz Family Enterprises, LLC
Title: Chief Operating Officer   Title: Montana Limited Liability Company
Date: 6/15/2021   Date: 6/15/2021

 

7

 

 

5000 Executive Parkway,
Ste 520, San Ramon,
CA 94583, United States

 

Tel: 650.523.5000

www.griddynamics.com

 

EXHIBIT A

 

STATEMENT OF WORK

 

This Statement of Work is issued under and subject to all of the terms and conditions of the Consulting Agreement dated as of June 15, 2021, between Grid Dynamics Holdings, Inc. (“Company”) and Livschitz Family Enterprises, LLC, a Montana Limited Liability Company (“Consultant”).

 

1.Contact: Consultant’s principal Company contact shall be:

 

Name: Yury Gryzlov

 

Title: Chief Operating Officer

 

Email: _______________________________________________

 

Phone: ______________________________________________

 

2.Description of Services

 

oConsultant will continue as the main contact for certain strategic accounts mutually agreed by the Company and Consultant from time to time (the “Accounts”). Consultant will perform such service in maintenance of such clients as reasonably requested by the Contact or such other employee of the Company (or its subsidiaries) as is designated by the Contact to oversee Consultant’s performance of Services. After six months following the Effective Date, the parties agree to revisit the Accounts and make such adjustments to the customers that make up the Accounts as will be mutually agreed between the parties.

 

3.Acceptance Criteria

 

The acceptance of all deliverables will reside with the Contact.

 

4.Compensation Terms

 

  Monthly Retainer: US$20,000 per month and prorated for any partial calendar months during the term of the Agreement.  Consultant will no longer receive a Monthly Retainer once this Agreement is terminated.  Any termination of this Agreement prior to June 30, 2022 may result in Consultant becoming entitled to Termination Benefits, as described below.

 

8

 

 

5000 Executive Parkway,
Ste 520, San Ramon,
CA 94583, United States

 

Tel: 650.523.5000

www.griddynamics.com

 

  Incentive Payment: Each fiscal quarter of the Company beginning with the Company’s third fiscal quarter of 2021 through the Company’s second fiscal quarter of 2022, Consultant will be eligible to receive an incentive payment equal to 1% of the Growth of each company included in the Accounts.  For this purpose, “Growth” means all Company GAAP-based revenue derived from each company included in the Accounts during a fiscal quarter during the term of the Agreement as compared to Company GAAP-based revenue derived from each company included in the Accounts for the same fiscal quarter twelve months prior.  To the extent Growth for any fiscal quarter for a company is negative, the incentive payment for that fiscal quarter will be US$0.00, but any negative incentive payment amount will offset any incentive payments relating to such company in future fiscal quarters until the negative balance is fully offset.  To be eligible to receive an Incentive Payment for an applicable fiscal quarter, Consultant must continue providing Services under this Agreement through the completion of that fiscal quarter.  Any termination of this Agreement prior to June 30, 2022 may result in Consultant becoming entitled to Termination Benefits, as described below.

 

  Existing Equity Awards: Consultant, and Service Provider in her individual capacity, agree that all unvested equity awards granted to Service Provider by the Company prior to the Effective Date will cease vesting and terminate and be cancelled as of the Effective Date.
     
  New Equity Awards: Consultant agrees and acknowledges that the Company is not able under its 2020 Equity Incentive Plan (the “Plan”) to grant Consultant an equity award.  Consultant agrees, acknowledges and consents to the Company granting equity awards for Services directly to Service Provider and agrees and acknowledges that the Company will have no obligations to Consultant as a result of any equity awards granted to Service Provider with respect to Services to be provided hereunder.
     
  Performance Award: Subject to the approval of the Company’s Board of Directors (the “Board”) or its Compensation Committee (the “Committee”), the Company will grant to Service Provider an award of performance shares under the Plan (“PSUs”) with a target number of shares of Company common stock equal to 24,282, which will vest based on achievement of performance goals relating to Company revenue and contribution margins on the same terms and conditions as granted to Company executives earlier in fiscal 2021, except as noted below with respect to Termination Benefits.  In all other respects the PSUs will be subject to the terms and conditions of the Plan and PSU award agreement approved by the Board or Committee, as applicable.

 

9

 

 

5000 Executive Parkway,
Ste 520, San Ramon,
CA 94583, United States

 

Tel: 650.523.5000

www.griddynamics.com

 

  COBRA Reimbursements If Service Provider elects continuation coverage pursuant to the Consolidated Omnibus Budget Reconciliation Act of 1985, as amended (“COBRA”) within the time period prescribed pursuant to COBRA for Service Provider and Service Provider’s eligible dependents, the Company will reimburse Service Provider for the premiums necessary to continue group health insurance benefits for Service Provider and Service Provider’s eligible dependents until the earlier of (A) June 30, 2022, (B) the expiration of the Term, (C) the date upon which Service Provider and/or Service Provider’s eligible dependents becomes covered under similar plans or (d) the date upon which Service Provider ceases to be eligible for coverage under COBRA (such reimbursements, the “COBRA Premiums”).  However, if the Company determines in its sole discretion that it cannot pay the COBRA Premiums without potentially violating applicable law (including, without limitation, Section 2716 of the Public Health Service Act), the Company will in lieu thereof provide to Service Provider a taxable monthly payment payable on the last day of a given month (except as provided by the following sentence), in an amount equal to the monthly COBRA premium that Service Provider would be required to pay to continue Service Provider’s group health coverage in effect on the date of Service Provider’s termination of employment (which amount will be based on the premium for the first month of COBRA coverage), which payments will be made regardless of whether Service Provider elects COBRA continuation coverage and will commence on the month following Service Provider’s termination of employment and will end on the earlier of (x) the date upon which Service Provider obtains other employment or (y) the date the Company has paid an amount equal to the COBRA Premiums that would have otherwise been provided to Service Provider for period set forth above.  For the avoidance of doubt, the taxable payments in lieu of COBRA Premiums may be used for any purpose, including, but not limited to continuation coverage under COBRA, and will be subject to all applicable tax withholdings.  Notwithstanding anything to the contrary under this Agreement, if at any time the Company determines in its sole discretion that it cannot provide the payments contemplated by the preceding sentence without violating applicable law (including, without limitation, Section 2716 of the Public Health Service Act), Service Provider will not receive such payment or any further reimbursements for COBRA premiums.
     
    Consultant agrees, acknowledges and consents to the Company providing Service Provider COBRA Premiums and agrees and acknowledges that the Company will have no obligations to Consultant as a result of providing COBRA Premiums to Service Provider with respect to Services to be provided hereunder.

 

10

 

 

5000 Executive Parkway,
Ste 520, San Ramon,
CA 94583, United States

 

Tel: 650.523.5000

www.griddynamics.com

 

  Termination Benefits: If the Company terminates the Agreement for any reason other than as a result of Consultant’s continued failure to perform Services after Consultant, or Service Provider, has received a written demand of performance from the Company and Consultant has failed to cure such non-performance to the Company’s satisfaction within 10 business days after receiving such notice, then subject to Consultant, and Service Provider in her personal capacity, signing and not revoking signing and not revoking a separation agreement and release of claims in a form reasonably satisfactory to the Company (the “Release”) and provided that such Release becomes effective and irrevocable no later than sixty (60) days following the termination date (such deadline, the “Release Deadline”), then Consultant will become entitled to the following termination benefits:
     
    (i) if the termination occurs on or prior to September 30, 2021, then Consultant will receive the Monthly Retainer and Incentive Payment (based on actual performance) and Service Provider will receive COBRA Premiums that would have otherwise been paid to Consultant or Service Provider from the date of such termination through December31, 2021.
     
    (ii) if the termination occurs on or after October 1, 2021 and on or prior to March 31, 2022, then Consultant will receive the Monthly Retainer and Incentive Payment (based on actual performance) and Service Provider will receive COBRA Premiums that would have otherwise been paid to Consultant or Service Provider from the date of such termination through the three-month anniversary of such termination.
     
    (iii) if the termination occurs on or after April 1, 2022 and on or prior to June 30, 2022, then Consultant will receive the Monthly Retainer and Incentive Payment (based on actual performance) and Service Provider will receive COBRA Premiums that would have otherwise been paid to Consultant from the date of such termination through June 30, 2022.

 

11

 

 

5000 Executive Parkway,
Ste 520, San Ramon,
CA 94583, United States

 

Tel: 650.523.5000

www.griddynamics.com

 

    (iv) if the termination occurs on or before December 31, 2021, the award of PSUs will remain outstanding through the end of the performance period and through the date the Board or its Compensation Committee determine actual performance and you will be entitled to a prorated amount of the payout, if any, with respect the award based on the amount of time Service Provider was providing services to the Company as an employee of the Company and under this Agreement during the performance period and any shares will be delivered to Service Provider on the date awards of PSUs for other Company executives are settled.
     
    If the Release does not become effective and irrevocable by the Release Deadline, Consultant and Service Provider will forfeit any rights to Termination Benefits under this Agreement. In no event will Termination Benefits be paid or provided until the Release becomes effective and irrevocable.
     
  Start Date: June 16, 2021
     
  End Date: June 30, 2022

 

AGREED AS OF JUNE 15, 2021

 

COMPANY:   CONSULTANT:
         
By: /s/ Yury Gryzlov   By: /s/ Victoria Livschitz
Name:   Yury Gryzlov   Name:   Livschitz Family Enterprises, LLC
Title: Chief Operating Officer   Title: Montana Limited Liability Company
Date: 6/15/2021   Date: 6/15/2021

 

  SERVICE PROVIDER:
   
  Name:   Victoria Livschitz
  Date: 6/15/2021

 

 

12

 

EX-31.1 3 f10q0621ex31-1_griddynamics.htm CERTIFICATION

Exhibit 31.1

 

CERTIFICATION OF PRINCIPAL EXECUTIVE OFFICER

PURSUANT TO

SECTION 302 OF THE SARBANES-OXLEY ACT OF 2002

 

I, Leonard Livschitz, certify that:

 

1.I have reviewed this quarterly report on Form 10-Q of Grid Dynamics Holdings, Inc.;

 

2.Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report;

 

3.Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report;

 

4.The registrant’s other certifying officer and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have:

 

(a)designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is being prepared;

 

(b)designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles;

 

(c)evaluated the effectiveness of the registrant’s disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation; and

 

(d)disclosed in this report any change in the registrant’s internal control over financial reporting that occurred during the registrant’s most recent fiscal quarter (the registrant’s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant’s internal control over financial reporting; and

 

5.The registrant’s other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant’s auditors and the audit committee of the registrant’s board of directors (or persons performing the equivalent functions):

 

(a)all significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant’s ability to record, process, summarize and report financial information; and

 

(b)any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant’s internal control over financial reporting.

 

Date: August 5, 2021 By: /s/ Leonard Livschitz
  Name:  Leonard Livschitz
  Title: Chief Executive Officer and Director
    (Principal Executive Officer)

 

EX-31.2 4 f10q0621ex31-2_griddynamics.htm CERTIFICATION

Exhibit 31.2

 

CERTIFICATION OF PRINCIPAL FINANCIAL OFFICER

PURSUANT TO

SECTION 302 OF THE SARBANES-OXLEY ACT OF 2002

 

I, Anil Doradla, certify that:

 

1.I have reviewed this quarterly report on Form 10-Q of Grid Dynamics Holdings, Inc.;

 

2.Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report;

 

3.Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report;

 

4.The registrant’s other certifying officer and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have:

 

(a)designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is being prepared;

 

(b)designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles;

 

(c)evaluated the effectiveness of the registrant’s disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation; and

 

(d)disclosed in this report any change in the registrant’s internal control over financial reporting that occurred during the registrant’s most recent fiscal quarter (the registrant’s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant’s internal control over financial reporting; and

 

5.The registrant’s other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant’s auditors and the audit committee of the registrant’s board of directors (or persons performing the equivalent functions):

 

(a)all significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant’s ability to record, process, summarize and report financial information; and

 

(b)any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant’s internal control over financial reporting.

 

Date: August 5, 2021 By: /s/ Anil Doradla
  Name:  Anil Doradla
  Title: Chief Financial Officer
    (Principal Financial and Accounting Officer)

 

EX-32.1 5 f10q0621ex32-1_griddynamics.htm CERTIFICATION

Exhibit 32.1

 

CERTIFICATION PURSUANT TO

18 U.S.C. SECTION 1350,

AS ADOPTED PURSUANT TO

SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002

 

I, Leonard Livschitz, Chief Executive Officer of Grid Dynamics Holdings, Inc. (the “Company”), certify, pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, that to my knowledge:

 

(1)The quarterly report on Form 10-Q for the Company for the quarter ended June 30, 2021 (the “Report”) fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934; and

 

(2)The information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the Company.

 

Date: August 5, 2021 By: /s/ Leonard Livschitz
  Name:  Leonard Livschitz
  Title: Chief Executive Officer and Director
    (Principal Executive Officer)

 

EX-32.2 6 f10q0621ex32-2_griddynamics.htm CERTIFICATION

Exhibit 32.2

 

CERTIFICATION PURSUANT TO

18 U.S.C. SECTION 1350,

AS ADOPTED PURSUANT TO

SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002

 

I, Anil Doradla, Chief Financial Officer of Grid Dynamics Holdings, Inc. (the “Company”), certify, pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, that to my knowledge:

 

(1)The quarterly report on Form 10-Q for the Company for the quarter ended June 30, 2021 (the “Report”) fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934; and

 

(2)The information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the Company.

 

Date: August 5, 2021 By: /s/ Anil Doradla
  Name:  Anil Doradla
  Title: Chief Financial Officer
    (Principal Financial and Accounting Officer)

 

EX-101.SCH 7 gdyn-20210630.xsd XBRL SCHEMA FILE 001 - Statement - Unaudited Condensed Consolidated Balance Sheets link:presentationLink link:definitionLink link:calculationLink 002 - Statement - Unaudited Condensed Consolidated Balance Sheets (Parentheticals) link:presentationLink link:definitionLink link:calculationLink 003 - Statement - Unaudited Condensed Consolidated Statements of Loss and Comprehensive Loss link:presentationLink link:definitionLink link:calculationLink 004 - Statement - Unaudited Consolidated Statement of Convertible Preferred Stock and Stockholders' Equity link:presentationLink link:definitionLink link:calculationLink 005 - Statement - Unaudited Consolidated Statement of Convertible Preferred Stock and Stockholders' Equity (Parentheticals) link:presentationLink link:definitionLink link:calculationLink 006 - Statement - Unaudited Condensed Consolidated Statement of Cash Flows link:presentationLink link:definitionLink link:calculationLink 007 - Disclosure - Background and nature of operations link:presentationLink link:definitionLink link:calculationLink 008 - Disclosure - Basis of presentation and summary of significant accounting policies link:presentationLink link:definitionLink link:calculationLink 009 - Disclosure - Business combination link:presentationLink link:definitionLink link:calculationLink 010 - Disclosure - Acquisition of Tacit Knowledge Inc. link:presentationLink link:definitionLink link:calculationLink 011 - Disclosure - Property and Equipment, net link:presentationLink link:definitionLink link:calculationLink 012 - Disclosure - Intangible assets, net link:presentationLink link:definitionLink link:calculationLink 013 - Disclosure - Other current liabilities link:presentationLink link:definitionLink link:calculationLink 014 - Disclosure - Income taxes link:presentationLink link:definitionLink link:calculationLink 015 - Disclosure - Stockholders' equity link:presentationLink link:definitionLink link:calculationLink 016 - Disclosure - Stock-based compensation link:presentationLink link:definitionLink link:calculationLink 017 - Disclosure - Earnings per share link:presentationLink link:definitionLink link:calculationLink 018 - Disclosure - Commitments and contingencies link:presentationLink link:definitionLink link:calculationLink 019 - Disclosure - Subsequent events link:presentationLink link:definitionLink link:calculationLink 020 - Disclosure - Accounting Policies, by Policy (Policies) link:presentationLink link:definitionLink link:calculationLink 021 - Disclosure - Basis of presentation and summary of significant accounting policies (Tables) link:presentationLink link:definitionLink link:calculationLink 022 - Disclosure - Business combination (Tables) link:presentationLink link:definitionLink link:calculationLink 023 - Disclosure - Acquisition of Tacit Knowledge Inc. (Tables) link:presentationLink link:definitionLink link:calculationLink 024 - Disclosure - Property and Equipment, net (Tables) link:presentationLink link:definitionLink link:calculationLink 025 - Disclosure - Intangible assets, net (Tables) link:presentationLink link:definitionLink link:calculationLink 026 - Disclosure - Other current liabilities (Tables) link:presentationLink link:definitionLink link:calculationLink 027 - Disclosure - Stock-based compensation (Tables) link:presentationLink link:definitionLink link:calculationLink 028 - Disclosure - Earnings per share (Tables) link:presentationLink link:definitionLink link:calculationLink 029 - Disclosure - Background and nature of operations (Details) link:presentationLink link:definitionLink link:calculationLink 030 - Disclosure - Basis of presentation and summary of significant accounting policies (Details) link:presentationLink link:definitionLink link:calculationLink 031 - Disclosure - Basis of presentation and summary of significant accounting policies (Details) - Schedule of accounts receivable and allowance for doubtful accounts link:presentationLink link:definitionLink link:calculationLink 032 - Disclosure - Business combination (Details) link:presentationLink link:definitionLink link:calculationLink 033 - Disclosure - Business combination (Details) - Schedule of consideration for business combination link:presentationLink link:definitionLink link:calculationLink 034 - Disclosure - Acquisition of Tacit Knowledge Inc. (Details) link:presentationLink link:definitionLink link:calculationLink 035 - Disclosure - Acquisition of Tacit Knowledge Inc. (Details) - Schedule of estimated fair values of the assets acquired and liabilities link:presentationLink link:definitionLink link:calculationLink 036 - Disclosure - Acquisition of Tacit Knowledge Inc. (Details) - Schedule of fair value of identifiable intangible assets link:presentationLink link:definitionLink link:calculationLink 037 - Disclosure - Acquisition of Tacit Knowledge Inc. (Details) - Schedule of business acquisition pro forma information link:presentationLink link:definitionLink link:calculationLink 038 - Disclosure - Property and Equipment, net (Details) - Schedule of property and equipment link:presentationLink link:definitionLink link:calculationLink 039 - Disclosure - Intangible assets, net (Details) - Schedule of Intangible assets link:presentationLink link:definitionLink link:calculationLink 040 - Disclosure - Other current liabilities (Details) - Schedule of other current liabilities link:presentationLink link:definitionLink link:calculationLink 041 - Disclosure - Income taxes (Details) link:presentationLink link:definitionLink link:calculationLink 042 - Disclosure - Stockholders' equity (Details) link:presentationLink link:definitionLink link:calculationLink 043 - Disclosure - Stock-based compensation (Details) link:presentationLink link:definitionLink link:calculationLink 044 - Disclosure - Stock-based compensation (Details) - Schedule of conversion of the vested and unvested options link:presentationLink link:definitionLink link:calculationLink 045 - Disclosure - Stock-based compensation (Details) - Schedule of board of directors approved an equity incentive plan link:presentationLink link:definitionLink link:calculationLink 046 - Disclosure - Stock-based compensation (Details) - Schedule of estimated grant using the black-scholes link:presentationLink link:definitionLink link:calculationLink 047 - Disclosure - Stock-based compensation (Details) - Schedule of dividend yield assumption for all black-scholes stock option-pricing link:presentationLink link:definitionLink link:calculationLink 048 - Disclosure - Stock-based compensation (Details) - Schedule of employees’ tax obligations link:presentationLink link:definitionLink link:calculationLink 049 - Disclosure - Stock-based compensation (Details) - Schedule of employee stock-based compensation recognized link:presentationLink link:definitionLink link:calculationLink 050 - Disclosure - Earnings per share (Details) - Schedule of computation of basic and diluted earnings per share link:presentationLink link:definitionLink link:calculationLink 051 - Disclosure - Earnings per share (Details) - Schedule of diluted net income/(loss) per share attributable to common stockholders link:presentationLink link:definitionLink link:calculationLink 052 - Disclosure - Subsequent events (Details) link:presentationLink link:definitionLink link:calculationLink 000 - Document - Document And Entity Information link:presentationLink link:definitionLink link:calculationLink EX-101.CAL 8 gdyn-20210630_cal.xml XBRL CALCULATION FILE EX-101.DEF 9 gdyn-20210630_def.xml XBRL DEFINITION FILE EX-101.LAB 10 gdyn-20210630_lab.xml XBRL LABEL FILE EX-101.PRE 11 gdyn-20210630_pre.xml XBRL PRESENTATION FILE GRAPHIC 12 ex10-4_001.jpg GRAPHIC begin 644 ex10-4_001.jpg M_]C_X 02D9)1@ ! 0$ 8 !@ #_VP!# $! 0$! 0$! 0$! 0$! 0$! 0$! M 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0'_ MVP!# 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0$! M 0$! 0$! 0$! 0$! 0$! 0$! 0$! 0'_P 1" [ ,8# 2( A$! Q$!_\0 M'P 04! 0$! 0$ $" P0%!@<("0H+_\0 M1 @$# P($ P4% M! 0 %] 0(# 01!1(A,4$&$U%A!R)Q%#*!D:$((T*QP152T? D,V)R@@D* M%A<8&1HE)B7J#A(6&AXB)BI*3E)66EYB9FJ*CI*6FIZBIJK*SM+6VM[BYNL+#Q,7& MQ\C)RM+3U-76U]C9VN'BX^3EYN?HZ>KQ\O/T]?;W^/GZ_\0 'P$ P$! 0$! M 0$! 0 $" P0%!@<("0H+_\0 M1$ @$"! 0#! <%! 0 0)W $" M Q$$!2$Q!A)!40=A<1,B,H$(%$*1H;'!"2,S4O 58G+1"A8D-.$E\1<8&1HF M)R@I*C4V-S@Y.D-$149'2$E*4U155E=865IC9&5F9VAI:G-T=79W>'EZ@H.$ MA8:'B(F*DI.4E9:7F)F:HJ.DI::GJ*FJLK.TM;:WN+FZPL/$Q<;'R,G*TM/4 MU=;7V-G:XN/DY>;GZ.GJ\O/T]?;W^/GZ_]H # ,! (1 Q$ /P#^_"BBBN: M=HT$4MC;W.H/9))"+RZ>ZU33[6UAGE6!!+-/*DWE+&TOBG5/VK?A!#)XG6X\ M+?M'>#[*-9O$?AS2O#/:( M6=B<KPSDF7\0X[+\SQ669A6QL/:93@IYIB<%AC.HS(98?B+/,RX=P..P&'S/+:.!E*&9XJ&6X7% M8O,54GA^,_@#XX^ M%(O%O@'5_M]K'(MGJVF7<8L]=\/:F%_>Z7KVE,QEL+R,JQ7.^WN$!DM)YHLD M>K@Y]1]?\_RK/+LRR_-\#A-P=:&(PV)H5+\E2E5IMQD MM'&2?+.%2%2G4ITJM.I2I]6.P.-RS&8G+LRPF(P./P5:>'Q>#Q5*=#$8>M3= MITZM*HE*,E=-?%&490G3J5:O\ ^OWX M_.EK\]O^"CG[05_\%_@JGAGPQ?OI_C?XL7%YX8TN]MY/+O-'\.V]NLOBS6K9 MU8/#<\39K*2P63X*KBIP@XJ MKB*JM3PN$H\VCKXO%5,/AJ2M)*55RE%PISMU4X.I.-..\FEZ+JWY))M^A\"? MMV?M%>%_C%\4M/T#X?W-S=Z=\'CJVDR^*K&[5;?5_$E]=V)_B3IWCO7=-T[6M&^(C_ &XV?CG49[O5)=;F?7;6 M]9;C3;[2WB.CSW.GF*__ &8Y/ 7[&?PM^,O]GN?$/BWQ9)KOBB;8_FZ;X-\3 M63:?X'LW4D^79P_V?;7LK[1_I_B0B0G$>W\P_P!O_5OVA?BC^S7X#^$OA74Y M]>^%/PQ\7:QXZU?P'I]O/-X@U&\N[=X]+U"$I)))K.E^%'O-;GLO#UK;"ZAN M-=N-1B%ZUK;0VO[]]'?+,WXZX)\'.,^()Y;EV?X?%YQ_;M"TOJM+A3/\WQ.= M0R"M0K<]"NJF75,CHUJ>,P\G6>)E6J5X2IM0_E?Q1X@7#&=>)V65,'BL4L_R M++,9D-3#*<<3A\]PN#HX7!9AAZU.=*O1>&JPQ-;VN&G[6G4PGLXQFJ[A+]@O MA!\:?$VH_ 7]F_\ X*7>"=)M=)O_ (H:5!X9_:@\":%#]C\-^(?$6F:WJ/A? M7/$5EIL9\FP?6]=T.]NK1MI%AJE[HTX=S=:FUS^\'ACQ%I'B_P .Z'XJT"[6 M_P!$\1Z58:UI5XN +BPU*VCNK61E'W'\J15EC/S12J\389"!^17[-7P7M?V? M_P#@CSX*^%WQHNK'P5K ^#.L^)M3<&9KF6(ISC7SK+L?PKA\[R^GBZ\H16*S#A[%8?& MY?*;J5<11R[&8;"8APAA\'&'NWQH^-OPG_9V^''B+XN?&WQYX?\ AO\ #GPI M!%/KGBGQ)=-;V5L;B58+2SMH(8Y[[4]4O[ATMM-TC2[6\U34KITMK*TGF=4/ MY,Z/_P '!?\ P3CU'5M,AU;Q)\:O!7@[6+]=/TWXM^-O@7X\T+X4W+O(\2W7 M_"5-97+P6 *J\EY<:?%#!$XFG,4:3-%\^_\ !:[3K'XD?MF?\$A_@+\4Q]H_ M9R^(W[0^MWWC[0K^9[7PUXK\2Z5J/@;3-!T;7IM\4,T@:5X$H#9O:R7%HT,!AEBB4_I MZ2LK[O[D?!.3N[;+_,_2_3-2T_6=-T_6-*O+?4-+U6QM-3TW4+259K2^T^^M MX[JSO+69?DEM[JVECG@E4[9(G5U."*^2[C]N#X*6W[:MA^P3);^//^%YZE\) MYOC';W:^$;AOA\/"L$T\;VLOBP768]7\NWDG"G3#I G-^1'Q^ M_:&_;9^/G_!1?X6_LP?LE?M Q_L]?#O]H/\ 8 \(_&JYU+Q3X-T'QG=?"RUU M+Q+JVK:GXN\(:$!"MY\3KW3#X?\ !=N+S7I/#FF:=>:MJEM =0L[&ZI][^T? M^T=^RK_P41T_X)?$KXX>(_CSX*^ G_!)[QC\:/B%+JWASP?H&H?%SXE_#K_A M(-;U?QE=7%CI$FL:)<^(/[(2WBT2UUZ71;41VT\UKS&E:9J6K:'973QZCK=I)-8G]E\%^*M.\=^ M#O"?C?18KR+2/&7AG0O%>DPZA%';W\6F^(M*M=8L([Z&*:XB@O$M;R);J*.> M>.*<.B32JH=OXWOVFK#]N?\ :/\ ^",?Q@_;]^.'[:6M:EX4^-WA_2O%%_\ MLDZ1\-/!,7PCT;X>WOQJ\/>'_"6B:!XA6TA\9Z-XCT74+'2?$4>N+J5V]S;6 MSZ/K*:C<7EYJ!_KB_9N_Y-Z^ G_9%_A;[_\ ,BZ%W[T.*2\^:S_KSW!2;;[< MMT?E4G_!P'^P#/+K2V5M^TKJEGX=U;4]%UO6-%_9O^(FM:'IE]H]S);:BEYJ M^E6EY96ZVQC,[F65'%JT=R4$4J,WZQUSP[K,$4L/^"G7[/O["/BF^^#&I?$K]BS3_ (K2W'P[_LA=&\&?M):6 M/ OB3PG>2:-?6E]X8E M)Z-M-.Z[;?UH?UAT5_+Q:_\ !3/]H/\ :L_9 _X)[_!/X%^/=1^'O[DZ1HT_B3X7Z/^S[,DW[0GCZYT/4M+U'3])N-8T9-#UN-GTB.V M@CUK5['3XX9K/$'>>"-5_;W_ &O?VU/^"EG[//@?]O3QG^SU\*OV:O'W@$># M7T#X:^!/&7CA)M;\$SG3- L?$>NZ?"-+\&F\TB_UKQ5"T-_X@UG5;NU33]3T MNPCNH)ERO_@:7'SJ_P#PY_2717\U?P!_;6_:$_:-_P""4?@3XP_%+]NGX6_L M8^,_#WQS\5?"/XM_M+>*_ _A;4]:\:>"O"&H7]A&O@+0-5O=.\.Z?\5]:K^UIJW@SX)W_ ,$O%7P<\$0?"_P> M/B!X?UW1O#7Q"\W28[;Q#XE\<:!J.BV_BS7KV[O;'3M=UZ:>SBTZU\.;](N/ MN3X7?%C]L7]EC_@HGX^_8F^+7[6'BC]JWP3XZ_8J\:?M%^%_&GCWP/X+\(>+ M_A[X[\.W6L64<.BKX1L+;3VT6=M(OY?[,N1=VL2SZ6(HX9K"ZEU Y7_5OZU_ MX<'/^M>I^OW[&_[7_P )?VY_@3H'[0_P4M_&EIX#\1:OXAT.TM?'WAIO"WB* M'4/#.IRZ7J(FL%O-2LKBU::,26M]IFIZA931OY+3QWMO>6EM]2U_(K\'O^"@ MO[:?Q _8H_X)?_!#P/\ &*U\/?M&_M[_ !N^.7@GQ+^T7K/@WPG?ZA\/?AO\ M-OB'J>F:C=>&/"=CI.D>#V\2OI^H65OIDC:2"D.E3A5CU+4H]5L_T=_:*\(_ M\%*_V'/V+_VG_&GPT_:G\>_MM>/HM.\"3?"R/Q;\$?!$GQ/^%=I<>(X;'XL> M,;.+P= (/B2FF^%YEU7P]X:N_#SKHZE.FJP1RVDIR^:OV] YM-MK;]GM ML?N;17XI9>"=$N?$_P !OCU\&_"7PL^, MWPD\8MJ<=OJWB5WTC3M$U*?PK,Z:V6?]QZEZ%) MW)UZ#Z#^5%"]!]!_*BMULC%[OU?YL@K\)_\ @KUX4\5R>+_A7XS-G>2>!8_! M^L^&3JL4#R6&C^)I]9-]-%J$Z9CM)-5TY[$V)N/+6Y.F74<+M(A2OW8JI?Z? M8ZI:3Z?J=E::C872>7UN8Y8)4R =LD;+GG&0#7YUXF\# M0\1N#,SX3GF-3*I8ZI@L11QT*/UF-+$8#%+%4%7P_/3=?#5)WA7IQG&IRN,Z M;52G&_91JNC4C44>:W,K7MI*+BVGW72^CU3T9^ FF?\ !6+X8Q?#.S^$7CC] MG+5->T/2_"&E>!]2LX?'.B2Z7K5EI.EVVE^=Y%UH]I\ MTOP?H&F>';6_N;27R7L'U2\U&2.5%.#+M=OZ8KC]G/\ 9_O+@W=W\#_A)%B@(0^'?"^A M:*T8.,[7TZPMW!?:"Q#9) )Y&:\+*LB\<9/]TAQ/\ 1A<,HS/,OHX5N)>) MLKPF&OB,_P".<77R9YG3IT9XJO0P4:$L4L'6QM.IBJ6%JU:OL?:*"3E3C-_S MB^&_@+^W7^WUXZ\.>)/C+-XK\/\ P]M-4M+]]>\;Z=)X0\+Z'IOG))='P#\/ M?*M)]2UBXMHY+>TOFT_:TCH^I:_Y*LK_ -(O@CP=H7P^\)>'O!7AFU-EH/AG M2;/1]+MBWF.MM:1A/,FD(!EN;F0R7-U,0#-'V5\(XC'9G]=S'/N(VAA:5G*&&PD:_P"] M]C3E)3FJ;G+EI4J=/YWQ,\7,X\2HY-ESR7(.$>%.&XXB'#W"'"^#^I93E\L3 MRJOBZTI*-;'X^M"$:<\7B(Q<8<\:<6ZU:K5^-_VX?V'_ (.?MZ_!I_A'\6AK M6C7.D:U:^,/AU\1?"-S#I_CCX9^.]-AEBTSQ1X9U":&:/JV M+M$YM[R&QU"R_,+XC?\ !*#]O_X^_#6Z_9L_:(_X*KZW\0?V9]3DM[7Q'I%I M^SIX+T[XK>,M#TC5-/U?0[#Q)X^NM^NO[09=0MH[JZCU5? M-AE_H%HK[Y2:V/R9Q3_/^ON/S-\+?\$]KCP9^WO\)OVO-$^)5O)X)^$W[&VG M?LFZ9\.=3\/S7'BC44TC4_M.G^+[WQ?;ZE::9DV,<,%WIL7AN,S70DN(KF"- MEMTA\?\ _!.Z/XE_\% ]:_;"\5^.M*OOASXH_9%\3_LJ>)O@\?#EXNJZKIOB MRYU)=7UD^+EUG[)#:7&F:I<6)TP:"TZD^<+[GRQ^G%%%W_7]?AL/E6Q_.1=? M\$1OVEKG]ECXA_L-M_P48U]_V339:N?@W\.&^"GAE=;TG4;CQ"WBOP_IOQ2\ M;#66U[Q9X&\/Z^W]KR^$O#=QX6BU;64MKY+S2[.T327_ * /ACX2F^'WPV^' MO@2>]BU2X\$>!O"?A";4H8'M(=2F\-:!8:+)?16TDD[VL=X]D;A+=YIF@601 M-+*5+MV]%#DW_782BE?S5C^;[X#?\$=O^"@G[,UAXS\'_ ;_ (*A6'PD^'/C M_P"(_B3XC>(]!\,_LWZ!K6H#6/$[6]K>ZA9:EXM\3:O<1:G'I&GZ58(8KBUL MV?3X[E(()G=S^H/["/\ P3Q^&'[#6F?$'6].\7^,_C1\=OC/K:^(_C;^T-\4 MKJ&^\??$'4XIKBXMK7]V9(M#\.65S=WE[;Z/#<7D\U]=SW>J:GJ4B6?V3] * M*;DV"@E_P?ZU/YU?^"6G[+O@GQ?_ ,%"/^"A/[?^@_#G7_!'P\O?BWXN^$O[ M/ECXJT34]$?5M1OWTO4?CM\6/#>EZS8Z9=V.@^-/$EG;KX9N;>S^RS:;K&OV MT%Q(@9(_T<_9D_8?UO\ 9_\ VJ/V[_VC-0^(VE>)]/\ VQ_%'@;Q#I'A.S\- M7FE7O@"/PAH6K:/+::CK$VLW\'B%[]M36X2:UT_2%MA"T;13%PZ_H=DGJ_P#7]=S^='PO_P $-/B%X(_9[_9N\"^$_P!J'PM9_&S]E?\ :;^* M'[1?PY\;:W\&W\4?"W6)?B>=&2]\/^,?A?JOC'?J5WHD>B6SZ3KT>NK-;/-? M):VMHU\;BV]ZTO\ X)2_%V\^(7[8'Q=^)_[65M\4_B9^V+^QKJ?[-?B_6[WX M2:=X0T?PCXLN]UGINO>$_#WAOQ L$7P]T'1(=.TZP\*ZA=7GB:YNH+W4]3\8 MWL^I,MO^VE%'.PY$?B'\3/\ @DAXK\?_ +#7["W[($'QR\/:7JO['OQ)^&7C MW5?'LW@+4KK3_'L'P_\ [<\[2]/\/)XI@N/#LFJC6!Y=U'P$O@3Q7X1_9W^&>C?"WX56W@36;K5KRWTKX::E)JL^LW' MQ'AG31O'>I7?B&VF;28TCTF"VNH8KD?J311S,.5'Y=?LD?L _$?X4?M._$[] MM+]I;XZ>&_C=^T1\1/AMI7P?@F^''PETSX,?#W0/ VFZK9:W<7,V@6VM^(]5 M\1^+]9U+3[+[9X@UC5V:WL;9;&"%X#;+9_J+112;N[L:5B=>@^@_E10O0?0? MRHK9;(Q>[]7^;(**L45GR/N7[3R_'_@%>BK%%'(^X>T\OQ_X!7HJQ11R/N'M M/+\?^ 5Z*L44BK%%'(^X>T\OQ_X!7HJQ11R/N'M/+\?^ 5Z M*L44BK%%'(^X>T\OQ_X!7HJQ11R/N'M/+\?^ 5Z*L44BK%%'(^X>T\OQ_X!7HJQ11R/N'M/+\?^ (O0?0?RHI:*T6BL9G_ !V0$! end XML 13 f10q0621_griddynamics_htm.xml IDEA: XBRL DOCUMENT 0001743725 2021-01-01 2021-06-30 0001743725 2021-08-02 0001743725 2021-06-30 0001743725 2020-12-31 0001743725 2021-04-01 2021-06-30 0001743725 2020-04-01 2020-06-30 0001743725 2020-01-01 2020-06-30 0001743725 us-gaap:PreferredStockMember 2020-12-31 0001743725 us-gaap:CommonStockMember 2020-12-31 0001743725 us-gaap:AdditionalPaidInCapitalMember 2020-12-31 0001743725 us-gaap:RetainedEarningsMember 2020-12-31 0001743725 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2020-12-31 0001743725 us-gaap:PreferredStockMember 2021-01-01 2021-03-31 0001743725 us-gaap:CommonStockMember 2021-01-01 2021-03-31 0001743725 us-gaap:AdditionalPaidInCapitalMember 2021-01-01 2021-03-31 0001743725 us-gaap:RetainedEarningsMember 2021-01-01 2021-03-31 0001743725 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-01-01 2021-03-31 0001743725 2021-01-01 2021-03-31 0001743725 us-gaap:PreferredStockMember 2021-03-31 0001743725 us-gaap:CommonStockMember 2021-03-31 0001743725 us-gaap:AdditionalPaidInCapitalMember 2021-03-31 0001743725 us-gaap:RetainedEarningsMember 2021-03-31 0001743725 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-03-31 0001743725 2021-03-31 0001743725 us-gaap:PreferredStockMember 2021-04-01 2021-06-30 0001743725 us-gaap:CommonStockMember 2021-04-01 2021-06-30 0001743725 us-gaap:AdditionalPaidInCapitalMember 2021-04-01 2021-06-30 0001743725 us-gaap:RetainedEarningsMember 2021-04-01 2021-06-30 0001743725 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-04-01 2021-06-30 0001743725 us-gaap:PreferredStockMember 2021-06-30 0001743725 us-gaap:CommonStockMember 2021-06-30 0001743725 us-gaap:AdditionalPaidInCapitalMember 2021-06-30 0001743725 us-gaap:RetainedEarningsMember 2021-06-30 0001743725 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-06-30 0001743725 us-gaap:PreferredStockMember 2019-12-31 0001743725 us-gaap:CommonStockMember 2019-12-31 0001743725 us-gaap:AdditionalPaidInCapitalMember 2019-12-31 0001743725 us-gaap:RetainedEarningsMember 2019-12-31 0001743725 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2019-12-31 0001743725 2019-12-31 0001743725 us-gaap:PreferredStockMember 2020-01-01 2020-03-31 0001743725 us-gaap:CommonStockMember 2020-01-01 2020-03-31 0001743725 us-gaap:AdditionalPaidInCapitalMember 2020-01-01 2020-03-31 0001743725 us-gaap:RetainedEarningsMember 2020-01-01 2020-03-31 0001743725 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2020-01-01 2020-03-31 0001743725 2020-01-01 2020-03-31 0001743725 us-gaap:PreferredStockMember 2021-01-01 2021-06-30 0001743725 us-gaap:CommonStockMember 2021-01-01 2021-06-30 0001743725 us-gaap:AdditionalPaidInCapitalMember 2021-01-01 2021-06-30 0001743725 us-gaap:RetainedEarningsMember 2021-01-01 2021-06-30 0001743725 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-01-01 2021-06-30 0001743725 us-gaap:PreferredStockMember 2020-03-31 0001743725 us-gaap:CommonStockMember 2020-03-31 0001743725 us-gaap:AdditionalPaidInCapitalMember 2020-03-31 0001743725 us-gaap:RetainedEarningsMember 2020-03-31 0001743725 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2020-03-31 0001743725 2020-03-31 0001743725 us-gaap:PreferredStockMember 2020-04-01 2020-06-30 0001743725 us-gaap:CommonStockMember 2020-04-01 2020-06-30 0001743725 us-gaap:AdditionalPaidInCapitalMember 2020-04-01 2020-06-30 0001743725 us-gaap:RetainedEarningsMember 2020-04-01 2020-06-30 0001743725 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2020-04-01 2020-06-30 0001743725 us-gaap:PreferredStockMember 2020-06-30 0001743725 us-gaap:CommonStockMember 2020-06-30 0001743725 us-gaap:AdditionalPaidInCapitalMember 2020-06-30 0001743725 us-gaap:RetainedEarningsMember 2020-06-30 0001743725 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2020-06-30 0001743725 2020-06-30 0001743725 gdyn:MergerAgreementMember 2020-03-01 2020-03-05 0001743725 us-gaap:AccountsReceivableMember 2021-01-01 2021-06-30 0001743725 us-gaap:AccountsReceivableMember 2020-01-01 2020-12-31 0001743725 gdyn:UnbilledReceivablesMember 2021-01-01 2021-06-30 0001743725 gdyn:UnbilledReceivablesMember 2021-06-30 0001743725 gdyn:UnbilledReceivablesMember 2020-01-01 2020-12-31 0001743725 gdyn:UnbilledReceivablesMember 2020-12-31 0001743725 gdyn:SalesCustomerMember 2021-01-01 2021-06-30 0001743725 gdyn:SalesCustomerMember 2020-01-01 2020-06-30 0001743725 2020-01-01 2020-12-31 0001743725 srt:MinimumMember 2021-01-01 2021-06-30 0001743725 srt:MaximumMember 2021-01-01 2021-06-30 0001743725 2020-03-01 2020-03-05 0001743725 2006-09-30 0001743725 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember 2021-06-30 0001743725 gdyn:ReductionOfProceedsMember 2021-01-01 2021-06-30 0001743725 us-gaap:GeneralAndAdministrativeExpenseMember 2021-01-01 2021-06-30 0001743725 2021-05-29 0001743725 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember us-gaap:CustomerRelationshipsMember 2021-01-01 2021-06-30 0001743725 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember gdyn:TacitTradeNameMember 2021-01-01 2021-06-30 0001743725 us-gaap:SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember 2021-01-01 2021-06-30 0001743725 gdyn:TacitKnowledgeIncMember 2021-01-01 2021-06-30 0001743725 gdyn:TacitKnowledgeIncMember 2020-01-01 2020-06-30 0001743725 srt:MinimumMember gdyn:ComputersAndEquipmentMember 2021-01-01 2021-06-30 0001743725 srt:MaximumMember gdyn:ComputersAndEquipmentMember 2021-01-01 2021-06-30 0001743725 gdyn:ComputersAndEquipmentMember 2021-06-30 0001743725 gdyn:ComputersAndEquipmentMember 2020-12-31 0001743725 gdyn:MachineryAndAutomobilesMember 2021-01-01 2021-06-30 0001743725 gdyn:MachineryAndAutomobilesMember 2021-06-30 0001743725 gdyn:MachineryAndAutomobilesMember 2020-12-31 0001743725 srt:MinimumMember us-gaap:FurnitureAndFixturesMember 2021-01-01 2021-06-30 0001743725 srt:MaximumMember us-gaap:FurnitureAndFixturesMember 2021-01-01 2021-06-30 0001743725 us-gaap:FurnitureAndFixturesMember 2021-06-30 0001743725 us-gaap:FurnitureAndFixturesMember 2020-12-31 0001743725 gdyn:SoftwareMember 2021-01-01 2021-06-30 0001743725 gdyn:SoftwareMember 2021-06-30 0001743725 gdyn:SoftwareMember 2020-12-31 0001743725 srt:MinimumMember us-gaap:LeaseholdImprovementsMember 2021-01-01 2021-06-30 0001743725 srt:MaximumMember us-gaap:LeaseholdImprovementsMember 2021-01-01 2021-06-30 0001743725 us-gaap:LeaseholdImprovementsMember 2021-06-30 0001743725 us-gaap:LeaseholdImprovementsMember 2020-12-31 0001743725 srt:MinimumMember gdyn:CapitalizedSoftwareDevelopmentCostsMember 2021-01-01 2021-06-30 0001743725 srt:MaximumMember gdyn:CapitalizedSoftwareDevelopmentCostsMember 2021-01-01 2021-06-30 0001743725 gdyn:CapitalizedSoftwareDevelopmentCostsMember 2021-06-30 0001743725 gdyn:CapitalizedSoftwareDevelopmentCostsMember 2020-12-31 0001743725 srt:MinimumMember us-gaap:CustomerRelationshipsMember 2021-01-01 2021-06-30 0001743725 srt:MaximumMember us-gaap:CustomerRelationshipsMember 2021-01-01 2021-06-30 0001743725 us-gaap:CustomerRelationshipsMember 2021-06-30 0001743725 us-gaap:CustomerRelationshipsMember 2020-12-31 0001743725 srt:MinimumMember us-gaap:TrademarksAndTradeNamesMember 2021-01-01 2021-06-30 0001743725 srt:MaximumMember us-gaap:TrademarksAndTradeNamesMember 2021-01-01 2021-06-30 0001743725 us-gaap:TrademarksAndTradeNamesMember 2021-06-30 0001743725 us-gaap:TrademarksAndTradeNamesMember 2020-12-31 0001743725 us-gaap:NoncompeteAgreementsMember 2021-01-01 2021-06-30 0001743725 us-gaap:NoncompeteAgreementsMember 2021-06-30 0001743725 us-gaap:NoncompeteAgreementsMember 2020-12-31 0001743725 2023-03-25 2023-04-01 0001743725 2020-03-01 2020-03-27 0001743725 us-gaap:CommonStockMember 2020-03-05 0001743725 gdyn:GDIMember 2021-06-30 0001743725 2021-01-01 2021-01-20 0001743725 2021-02-23 2021-03-02 0001743725 2021-03-03 2021-03-29 0001743725 us-gaap:IPOMember 2021-06-30 0001743725 srt:AffiliatedEntityMember 2021-02-17 0001743725 srt:AffiliatedEntityMember us-gaap:CommonStockMember 2021-02-17 0001743725 gdyn:TwoThousandEighteenStockPlanMember 2021-06-30 0001743725 gdyn:TwoThousandEighteenStockPlanMember 2021-01-01 2021-06-30 0001743725 srt:MinimumMember gdyn:TwoThousandEighteenStockPlanMember 2021-06-30 0001743725 srt:MaximumMember gdyn:TwoThousandEighteenStockPlanMember 2021-06-30 0001743725 gdyn:TwoThousandTwentyPlanMember 2020-03-01 2020-03-05 0001743725 gdyn:NSOMember gdyn:EquityIncentivePlanMember 2021-04-01 2021-06-30 0001743725 us-gaap:RestrictedStockUnitsRSUMember gdyn:EquityIncentivePlanMember 2021-04-01 2021-06-30 0001743725 gdyn:EquityIncentivePlanMember 2021-04-01 2021-06-30 0001743725 gdyn:NSOMember 2021-01-01 2021-06-30 0001743725 gdyn:TwoThousandTwentyPlanMember 2021-01-01 2021-06-30 0001743725 gdyn:TwoThousandTwentyPlanMember 2021-06-30 0001743725 us-gaap:RestrictedStockUnitsRSUMember 2021-01-01 2021-06-30 0001743725 us-gaap:RestrictedStockUnitsRSUMember gdyn:TwoThousandTwentyPlanMember 2021-01-01 2021-06-30 0001743725 gdyn:TwoThousandTwentyPlanMember 2021-02-23 2021-03-02 0001743725 2021-03-02 0001743725 2021-07-01 2021-07-16 0001743725 us-gaap:PhantomShareUnitsPSUsMember 2021-01-01 2021-06-30 0001743725 2020-04-01 2020-12-31 0001743725 us-gaap:SubsequentEventMember 2021-06-01 2021-07-06 0001743725 us-gaap:CommonStockMember us-gaap:SubsequentEventMember 2021-06-01 2021-07-06 0001743725 us-gaap:SubsequentEventMember 2021-07-06 0001743725 us-gaap:SubsequentEventMember us-gaap:WarrantMember 2021-07-28 0001743725 us-gaap:SubsequentEventMember 2021-08-30 0001743725 us-gaap:SubsequentEventMember us-gaap:WarrantMember 2021-08-30 shares iso4217:USD iso4217:USD shares pure 10-Q true 2021-06-30 2021 false 001-38685 Grid Dynamics Holdings, Inc. DE 83-0632724 5000 Executive Parkway Suite 520 San Ramon CA 94583 (650) 523-5000 Common Stock, par value $0.0001 per share GDYN NASDAQ Yes Yes false Accelerated Filer true false false 62111831 67974000 112745000 205000 418000 29051000 16890000 3997000 1799000 1050000 821000 5395000 2361000 107467000 134616000 5160000 4095000 20342000 8125000 4865000 5609000 35299000 14690000 173133000 167135000 2489000 757000 1490000 628000 11099000 7479000 1830000 1248000 8251000 3206000 25159000 13318000 4962000 2093000 30121000 15411000 0.0001 0.0001 110000000 110000000 54728586 54728586 50878780 50878780 5000 5000 123749000 128930000 19248000 22793000 10000 -4000 143012000 151724000 173133000 167135000 47676000 22368000 86810000 54825000 27879000 13982000 51676000 36621000 19797000 8386000 35134000 18204000 1772000 2577000 3555000 5117000 2837000 1637000 5869000 5206000 13804000 7359000 26104000 18102000 18413000 11573000 35528000 28425000 1384000 -3187000 -394000 -10221000 -79000 208000 -1129000 -36000 1305000 -2979000 -1523000 -10257000 2788000 -813000 2022000 -3495000 -1483000 -2166000 -3545000 -6762000 -35000 14000 -1518000 -2166000 -3531000 -6762000 -0.03 -0.04 -0.07 -0.17 -0.03 -0.04 -0.07 -0.17 54431 49626 53044 39731 54431 49626 53044 39731 50879 5000 128930000 22793000 -4000 151724000 2062000 2062000 5671000 5671000 2221 41 162000 162000 1030 15297000 15297000 49000 49000 54171 5000 119466000 20731000 45000 140247000 1483000 1483000 6675000 6675000 271 918000 918000 138 254000 254000 149 3564000 3564000 -35000 -35000 54729 5000 123749000 19248000 10000 143012000 622 9187000 12847 8117000 10535000 35392000 54044000 426 8797 -8115000 8115000 1048 9187000 21644 2000 18650000 35392000 54044000 4596000 4596000 4804000 4804000 -1048 -9187000 1048 1000 9187000 9188000 -123865000 -123865000 4142000 28088 2000 204323000 204325000 53 530000 530000 50833 5000 113629000 30796000 144430000 2166000 2166000 3654000 3654000 6 59000 59000 50839 5000 117342000 28630000 145977000 -3545000 -6762000 2100000 1234000 -65000 781000 -1115000 4274000 12346000 8458000 839000 8779000 1111000 371000 -4058000 229000 611000 1666000 1961000 1393000 51000 358000 -519000 1410000 -99000 376000 -34000 1368000 -132000 6650000 -921000 1940000 1110000 30585000 -32525000 -1110000 208997000 123865000 -465000 -2264000 18861000 416000 59000 -18910000 82927000 14000 -44771000 80896000 112745000 42189000 67974000 123085000 1150000 1144000 9187000 918000 3400000 <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note 1 — Background and nature of operations</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Grid Dynamics Holdings, Inc. (the “Company” or “GDH”) provides enterprise-level digital transformation in the areas of search, analytics, and release automation to Fortune 1000 companies. The Company’s headquarters and principal place of business is in San Ramon, California.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company was originally incorporated in Delaware on May 21, 2018 as a special purpose acquisition company under the name ChaSerg Technology Acquisition Corp. (“ChaSerg”) for the purpose of effecting a merger, capital stock exchange, asset acquisition, stock purchase, reorganization or similar business combination involving ChaSerg and one or more businesses. On March 5, 2020 (the “Closing”), the Company consummated its business combination with Grid Dynamics International, Inc. (“GDI”) pursuant to the Agreement and Plan of Merger (the “Merger Agreement”), dated November 13, 2019 (the “Business Combination”). In connection with the Closing, the Company changed its name from ChaSerg Technology Acquisition Corp. to Grid Dynamics Holdings, Inc. The Company’s common stock is now listed on the NASDAQ under the symbol “GDYN” and warrants to purchase the common stock at an exercise price of $11.50 per share are listed on the NASDAQ under the symbol “GDYNW.”</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Unless the context otherwise requires, the “Company” refers to the combined company and its subsidiaries following the Business Combination, “ChaSerg” refers to the Company prior to the Closing, and “GDI” refers to GDI prior to the Closing. Refer to Note 3 for further discussion of the Business Combination.</span></p> On March 5, 2020 (the “Closing”), the Company consummated its business combination with Grid Dynamics International, Inc. (“GDI”) pursuant to the Agreement and Plan of Merger (the “Merger Agreement”), dated November 13, 2019 (the “Business Combination”). In connection with the Closing, the Company changed its name from ChaSerg Technology Acquisition Corp. to Grid Dynamics Holdings, Inc. The Company’s common stock is now listed on the NASDAQ under the symbol “GDYN” and warrants to purchase the common stock at an exercise price of $11.50 per share are listed on the NASDAQ under the symbol “GDYNW.” <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note 2 — Basis of presentation and summary of significant accounting policies</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The following is a summary of the significant accounting policies consistently applied in the preparation of the accompanying consolidated financial statements.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Unaudited Interim Financial Statements</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The accompanying unaudited condensed consolidated financial statements have been prepared in accordance with generally accepted accounting principles in the United States (“U.S. GAAP”) for interim financial information and in accordance with the rules and regulations of the Securities and Exchange Commission (“SEC”). Accordingly, they do not include all of the information and footnotes required by U.S. GAAP for complete financial statements. The unaudited condensed consolidated financial statements reflect all normal and recurring adjustments that are, in the opinion of the Company’s management, necessary for the fair presentation of the results of operations for the interim periods. Operating results for the three and six months ended June 30, 2021 are not necessarily indicative of the results that may be expected for the year ending December 31, 2021. These interim financial statements should be read in conjunction with GDH’s audited financial statements for the year ended December 31, 2020 included in the Company’s annual report on Form 10-K that the Company filed with the SEC on March 5, 2021.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Basis of presentation</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Business Combination was accounted for as a reverse recapitalization in accordance with U.S. GAAP. Although ChaSerg was the legal acquirer, for accounting purposes, GDI was deemed to be the accounting acquirer. GDI was determined to be the accounting acquirer based on evaluation of the following facts and circumstances:</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">  </span></p><table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt" width="100%"><tr style="vertical-align: top"> <td style="width: 0.25in"/><td style="width: 0.25in">●</td><td style="text-align: justify">GDI holds executive management roles for the Company and those individuals are responsible for the day-to-day operations;</td></tr></table><p style="margin-top: 0; margin-bottom: 0"> </p><table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt" width="100%"><tr style="vertical-align: top"> <td style="width: 0.25in"/><td style="width: 0.25in">●</td><td style="text-align: justify">GDI’s former owners have the largest minority voting rights in the Company;</td></tr></table><p style="margin-top: 0; margin-bottom: 0"> </p><table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt" width="100%"><tr style="vertical-align: top"> <td style="width: 0.25in"/><td style="width: 0.25in">●</td><td style="text-align: justify">From a revenue and business operation standpoint, GDI was the larger entity in terms of relative size;</td></tr></table><p style="margin-top: 0; margin-bottom: 0"> </p><table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt" width="100%"><tr style="vertical-align: top"> <td style="width: 0.25in"/><td style="width: 0.25in">●</td><td style="text-align: justify">GDI’s San Ramon, CA headquarters are the headquarters of the Company; and</td></tr></table><p style="margin-top: 0; margin-bottom: 0"> </p><table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt" width="100%"><tr style="vertical-align: top"> <td style="width: 0.25in"/><td style="width: 0.25in">●</td><td style="text-align: justify">The intended strategy of the Company will continue GDI’s strategy of driving enterprise-level digital transformation in the Fortune 1000 companies.</td></tr></table><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In conjunction with the Business Combination, outstanding shares of GDI were converted into common stock of the Company, par value $0.0001 per share, shown as a recapitalization, and the net assets of ChaSerg were acquired at historical cost, with no goodwill or other intangible assets recorded. GDI was deemed to be the predecessor of the Company, and the consolidated assets and liabilities and results of operations prior to the Closing (for the years ended December 31, 2019 and 2018 and the period from January 1, 2020 to March 5, 2020) are those of GDI. ChaSerg’s assets and liabilities, which include net cash from the trust of $85.1 million, and results of operations were consolidated with GDI beginning on the Closing.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In accordance with guidance applicable to these circumstances, the equity structure has been restated in all comparative periods up to the Closing Date, to reflect the number of shares of the Company’s common stock, $0.0001 par value per share, issued to GDI shareholders in connection with the recapitalization transaction. As such, the shares and corresponding capital amounts and earnings per share related to GDI preferred and common stock prior to the Business Combination have been retroactively restated as shares reflecting the exchange ratio established in the Business Combination.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Principles of consolidation</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The accompanying condensed financial statements include the accounts of the Company and all of its subsidiaries that are directly or indirectly owned or controlled. Intercompany transactions and balances have been eliminated upon consolidation.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Use of estimates</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The preparation of the consolidated condensed financial statements in accordance with U.S. GAAP requires the Company to make estimates and assumptions that affect the amounts reported in the condensed consolidated financial statements and accompanying notes. Actual results could differ from these estimates and such differences could be material. Significant estimates include allowances for receivables, calculation of accrued liabilities, capitalization of internally developed software, stock-based compensation, contingent consideration payable, determination of fair value, useful lives and recoverability of intangible assets and goodwill, determination of provision for income taxes and uncertain tax positions.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Certain significant risks and uncertainties</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The Company is subject to risks, including but not limited to customer concentration, concentrations of credit and foreign currency risks. Refer to the section below for additional information. Additionally, the Company has been impacted by the recent coronavirus (“COVID-19”) pandemic. The global pandemic of COVID-19 has negatively affected the U.S. and global economy, disrupted global supply chains, resulted in significant travel and transport restrictions, including mandated closures and orders to “shelter-in-place,” and created significant disruption of the financial market. In 2020 the COVID-19 pandemic impacted the Company’s revenues, and the Company’s business continues to be exposed to risks and uncertainties related to the pandemic. The impact of the COVID-19 pandemic had been more pronounced with the Company’s retail customers, which depended on keeping their stores open. Additionally, in situations where the Company’s customers encountered financial difficulties, there was a risk associated with the Company’s inability to collect money from customers. In 2020 the Company took several actions to deal with the COVID-19 pandemic. These included enabling its employees to work from home, company-wide salary and compensation cuts, hiring freezes, and suspending all non-essential travel. Some of these actions such as working from home as well as suspending all non-essential travel continues to be currently in place. As the Company's business recovered in 2021, the Company discontinued some of the cost saving measures such as compensation cuts and hiring freezes. The Company now is facing the opposite challenges including employee retention and shortage of talent on the job market. The ultimate impact and the extent to which the COVID-19 pandemic will continue to affect the business, results of operation and financial condition is difficult to predict and depends on numerous evolving factors outside of the Company’s control including: the duration and scope of the pandemic, including from renewed waves and new variants; government, social, business and other actions that have been and will be taken in response to the pandemic; and the effect of the pandemic on short and long-term general economic conditions.</p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Concentrations of credit risk and significant customers</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company records its accounts receivable and unbilled receivables at their face amounts less allowances. Accounts receivable and unbilled receivables are generally dispersed across the Company’s customers in proportion to their revenue. Three customers individually exceeded 10% of the Company’s accounts receivable balance as of June 30, 2021 and December 31, 2020. One customer individually exceeded 10% of the unbilled receivables as of June 30, 2021 and three customers individually exceeded 10% of the unbilled receivables as of December 31, 2020. Two and three customers individually accounted for greater than 10% of the sales for the three months ended June 30, 2021 and 2020, respectively. Two and three customers individually accounted for greater than 10% of the sales for the six months ended June 30, 2021 and 2020, respectively.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Cash and cash equivalents</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company considers cash equivalents to be highly liquid investments with original maturities of three months or less from the date of purchase. Cash equivalents are stated at cost, which approximates fair value. At times, cash deposits with banks may exceed federally insured limits.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Accounts receivable and allowance for doubtful accounts</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Accounts receivable, less allowance for doubtful accounts, reflect the net realizable value of receivables and approximate fair value. The Company maintains an allowance against accounts receivable for the estimated probable losses on uncollectible accounts. The allowance is based upon historical loss experience, current economic conditions within the industries the Company serves as well as determination of the specific risk related to certain customers. Accounts receivable are charged off against the reserve when, in management’s estimation, further collection efforts would not result in a reasonable likelihood of receipt. The allowance for doubtful accounts balance decreased to $0.2 million as of June 30, 2021 compared to $0.4 million as of December 31, 2020.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"> <tr style="vertical-align: bottom"> <td> </td><td style="font-weight: bold; padding-bottom: 1.5pt"> </td> <td colspan="6" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid">As of</td><td style="padding-bottom: 1.5pt; font-weight: bold"> </td></tr> <tr style="vertical-align: bottom"> <td> </td><td style="font-weight: bold; padding-bottom: 1.5pt"> </td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid">June 30,<br/> 2021</td><td style="padding-bottom: 1.5pt; font-weight: bold"> </td><td style="font-weight: bold; padding-bottom: 1.5pt"> </td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid">December 31,<br/> 2020</td><td style="padding-bottom: 1.5pt; font-weight: bold"> </td></tr> <tr style="vertical-align: bottom"> <td> </td><td style="font-weight: bold"> </td> <td colspan="6" style="font-weight: bold; text-align: center">(in thousands)</td><td style="font-weight: bold"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 76%; text-align: left">Trade accounts receivable</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 9%; text-align: right">29,256</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 9%; text-align: right">17,308</td><td style="width: 1%; text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left; padding-bottom: 1.5pt">Allowance for doubtful accounts</td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">(205</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">(418</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left; padding-bottom: 4pt">Total trade accounts receivable, net</td><td style="padding-bottom: 4pt"> </td> <td style="border-bottom: Black 4pt double; text-align: left">$</td><td style="border-bottom: Black 4pt double; text-align: right">29,051</td><td style="padding-bottom: 4pt; text-align: left"> </td><td style="padding-bottom: 4pt"> </td> <td style="border-bottom: Black 4pt double; text-align: left">$</td><td style="border-bottom: Black 4pt double; text-align: right">16,890</td><td style="padding-bottom: 4pt; text-align: left"> </td></tr> </table><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"> </p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Unbilled receivables</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Generally, the Company will not bill customers until the services have been completed. From time-to-time, a service period may overlap with a period-end and the unbilled receivables represent amounts for services performed through period-end, but not yet billed. The unbilled receivable represents the amount expected to be billed and collected for services performed through period-end in accordance with contract terms. The unbilled receivables balances were $4.0 million and $1.8 million as of June 30, 2021 and December 31, 2020, respectively.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Goodwill</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Goodwill represents the excess of purchase price over the fair value of the net assets of businesses acquired. On an annual basis, the Company makes a qualitative assessment to determine if it is more likely than not that the fair value of the reporting unit is less than its carrying amount, including goodwill. If the Company determines that the fair value of the reporting unit is less than its carrying amount, it will perform a quantitative analysis; otherwise, no further evaluation is necessary. For the quantitative impairment assessment, the Company compares the fair value of the reporting unit to its carrying value, including goodwill. The Company uses the discounted cash flow method of the income approach and market approach to determine the fair value of the reporting unit. If the fair value of the reporting unit exceeds the carrying value of the net assets assigned to that unit, goodwill is not impaired, and no further testing is performed. If the carrying value of the net assets assigned to the reporting unit exceeds the fair value of the reporting unit, then the Company will recognize a loss equal to the excess, limited to the total amount of goodwill allocated to that reporting unit. Impairments, if any, are charged directly to earnings. As of June 30, 2021, the Company has a single reporting unit and determined there were no indicators of impairment.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Intangible assets</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Finite-lived intangible assets are stated at cost less accumulated amortization. Amortization is computed on the straight-line basis over the asset’s useful lives ranging between 2 and 12 years. Intangible assets are evaluated for impairment whenever events or changes in circumstances indicate that the carrying value of the assets may not be fully recoverable. If facts and circumstances indicate that the carrying value might not be recoverable, projected undiscounted net cash flows associated with the related asset or group of assets over their estimated remaining useful lives is compared against their respective carrying amounts. If an asset is found to be impaired, the impairment charge will be measured as the amount by which the carrying amount of an entity exceeds its fair value. As of June 30, 2021, the Company determined there were no indicators of impairment.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Revenue recognition</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company accounts for a contract with a customer when 1) the parties to the contract have approved the contract and are committed to performing their respective obligations, 2) the contract identifies each party’s rights regarding the goods or services to be transferred, 3) the contract identifies the payment terms for the goods or services to be transferred, 4) the contract has commercial substance, and 5) collection of substantially all consideration pursuant to the contract is probable.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company derives its revenue from offering a suite of digital engineering and information technology (“IT”) consulting services, including digital transformation strategy, emerging technology, lean labs and legacy system replatforming. For most contracts, the Company uses master agreements to govern the overall relevant terms and conditions of the business arrangement between the Company and its customers. When the Company and a customer enter into a Master Services Agreement (“MSA”), purchases are generally made by the customer via a statement of work (“SOW”) which explicitly references the MSA and specifies the services to be delivered. Fees for these contracts may be in the form of time-and-materials or fixed-fee arrangements. The majority of the Company’s revenues are generated under time-and-material contracts which are billed using hourly rates to determine the amounts to be charged directly to the customer. Fees are billed and collected as stipulated in the contract, and revenue is recognized as services are performed. If there is an uncertainty about the receipt of payment for the services, revenue is recognized to the extent that a significant reversal of revenue would not be probable.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Consulting services revenue is a single performance obligation earned through a series of distinct daily services and may include services such as those described above. The Company recognizes revenue for services over time as the customer simultaneously receives and consumes the benefits as the Company performs IT consulting services. For revenue contracts, the customer derives value from the Company providing daily consulting services, and the value derived corresponds to the labor hours expended. Therefore, the Company measures the progress and recognizes revenue using an effort-based input method. For fixed fee contracts, the Company recognizes revenue as the work is performed, the monthly calculation of which is based upon actual labor hours incurred and level of effort expended throughout the duration of the contract.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">For time-and-material contracts, the Company applies the variable consideration allocation exception. Therefore, instead of allocating the variable consideration to the entire performance obligation, the Company determined the variable consideration should be allocated to each distinct service to which the variable consideration relates, which is providing the customer daily consulting services. The Company also offers volume discounts or early settlement discounts. Volume discounts apply once the customer reaches certain contractual spend thresholds. Early settlement discounts are issued contingent upon the timing of the payment from the customer. If the consideration promised in a contract includes a variable amount, the Company only includes estimated amounts of consideration in the transaction price to the extent it is probable that a significant reversal of cumulative revenue recognized will not occur when the uncertainty associated with the variable consideration is resolved. These estimates may require management to make subjective judgments and to make estimates about the effects of matters inherently uncertain. The determination of whether to constrain consideration in the transaction price are based on information (historical, current and forecasted) that is reasonably available to the Company, taking into consideration the type of customer, the type of transaction and the specific facts and circumstances of each arrangement. Although the Company believes that its approach in developing estimates and its reliance on certain judgments and underlying inputs is reasonable, actual results may differ from management’s estimates, judgments and assumptions. These estimates have historically not been material to the consolidated financial statements.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Remaining performance obligation</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">ASC 606 requires that the Company disclose the aggregate amount of transaction price that is allocated to performance obligations that have not yet been satisfied as of June 30, 2021. This disclosure is not required for:</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt" width="100%"><tr style="vertical-align: top"> <td style="width: 0.25in"/><td style="width: 0.25in"><span style="font-style: normal; font-weight: normal">1)</span></td><td style="text-align: justify">contracts with an original duration of one year or less, including contracts that can be terminated for convenience without a substantive penalty,</td></tr><tr style="vertical-align: top"> <td> </td><td> </td><td style="text-align: justify"> </td></tr> </table><table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt" width="100%"><tr style="vertical-align: top"> <td style="width: 0.25in"/><td style="width: 0.25in"><span style="font-style: normal; font-weight: normal">2)</span></td><td style="text-align: justify">contracts for which the Company recognizes revenues based on the right to invoice for services performed,</td></tr><tr style="vertical-align: top"> <td> </td><td> </td><td style="text-align: justify"> </td></tr> </table><table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt" width="100%"><tr style="vertical-align: top"> <td style="width: 0.25in"/><td style="width: 0.25in"><span style="font-style: normal; font-weight: normal">3)</span></td><td style="text-align: justify">variable consideration allocated entirely to a wholly unsatisfied performance obligation or to a wholly unsatisfied promise to transfer a distinct good or service that forms part of a single performance obligation in accordance with ASC 606-10-25-14(b), for which the criteria in ASC 606-10-32-40 have been met, or</td></tr><tr style="vertical-align: top"> <td> </td><td> </td><td style="text-align: justify"> </td></tr> </table><table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt" width="100%"><tr style="vertical-align: top"> <td style="width: 0.25in"/><td style="width: 0.25in"><span style="font-style: normal; font-weight: normal">4)</span></td><td style="text-align: justify">variable consideration in the form of a sales-based or usage-based royalty promised in exchange for a license of intellectual property.</td></tr></table><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">All of the Company’s contracts met one or more of these exemptions as of June 30, 2021.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Stock-based compensation expense</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Stock-based compensation expense is measured based on the grant-date fair value of the share-based awards. Forfeitures are recognized as incurred. The Company estimates stock options grant-date fair value using the Black-Scholes-Merton option pricing model. The model requires management to make a number of key assumptions including expected volatility, expected term, risk-free interest rate, and expected dividends. The Company evaluates the assumptions used to value its share-based awards on each grant date. The fair market value of Grid Dynamics stock is determined based on the closing price on NASDAQ on the measurement date. The Company amortizes the grant-date fair value of all share-based compensation awards over the employee’s requisite service period for the entire award on a straight-line basis, which is generally the vesting period. For an award with graded vesting that is subject only to a service condition (e.g., time-based vesting), the Company uses the straight-line attribution method under ASC 718 under which they recognize compensation cost on a straight-line basis over the total requisite service period for the entire award (i.e., over the requisite service period of the last separately-vesting tranche of the award). Additionally, the Company applies the “floor” concept so that the amount of compensation cost that is recognized as of any date is at least equal to the grant-date fair value of the vested portion of the award on that date. That is, if the straight-line expense recognized to date is less than the grant date fair value of the award that is legally vested at that date, the company will increase its recognized expense to at least equal the fair value of the vested amount. Refer to Note 10 — Stock-based compensation for additional information.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Income taxes</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company follows the asset and liability method of accounting for income taxes. Under this method, deferred income taxes are recognized for the tax consequences of temporary differences between the financial statement carrying amounts and the tax basis of the assets and liabilities. The determination of the provision for income taxes requires significant judgment, the use of estimates and the interpretation and application of complex tax laws. The provision for income taxes reflects a combination of income earned and taxed in the various U.S. federal and state, international and other jurisdictions. Jurisdictional tax law changes, increases or decreases in permanent differences between book and tax items, accruals or adjustments of accruals for tax contingencies or valuation allowances, and the change in the mix of earnings from these taxing jurisdictions all affect the overall effective tax rate.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In assessing the realizability of deferred tax assets, management considers whether it is more likely than not that some portion, or all, of the deferred tax assets will not be realized. Management considers all available evidence, both positive and negative, in determining whether a valuation allowance is required. Such evidence includes prior earnings history, the scheduled reversal of deferred tax liabilities, projected future taxable income, carryback and carryforward periods of tax attributes, and tax planning strategies that could potentially enhance the likelihood of realization of a deferred tax asset in making this assessment. The weight given to the positive and negative evidence is commensurate with the extent to which the evidence may be objectively verified.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company evaluates for uncertain tax positions at each balance sheet date. When it is more likely than not that a position will be sustained upon examination by a tax authority that has full knowledge of all relevant information, the Company measures the amount of tax benefit from the position and records the largest amount of tax benefit that is greater than 50% likely of being realized after settlement with a tax authority. The Company’s policy for interest and/or penalties related to underpayments of income taxes is to include interest and penalties in income tax expense.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Recently adopted accounting pronouncements</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Changes to U.S. GAAP are established by the Financial Accounting Standards Board (the “FASB”), in the form of Accounting Standards Updates (“ASUs”), to the FASB’s ASC. The Company has elected not to opt out of the extended transition period and thus when a standard is issued or revised and it has different application dates for public or private companies, the Company, as an emerging growth company, can adopt the new or revised standard at the time private companies adopt the new or revised standard.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In December 2019, the FASB issued Accounting Standard Update No. 2019-12, <i>Income Taxes</i> <i>(Topic 740):</i> <i>Simplifying the Accounting for Income Taxes</i> (ASU 2019-12), which simplifies the accounting for income taxes by removing certain exceptions to the general principles and also simplification of areas such as franchise taxes, step-up in tax basis goodwill, separate entity financial statements and interim recognition of enactment of tax laws or rate changes. The update is effective for fiscal years and interim periods within those fiscal years beginning after December 15, 2020, and early adoption is permitted. The Company adopted the standard as of January 1, 2021 and has determined that the adoption of this guidance did not have a material effect on the consolidated financial statements.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Recently issued accounting pronouncements</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company considered the applicability and impact of all ASUs. ASUs not listed below were assessed and determined to be either not applicable or are expected to have minimal impact on the consolidated financial statements.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In February 2016, the FASB issued ASU No. 2016-2, <i>Leases</i>. ASU 2016-2 requires lessees to put most leases on their balance sheet while recognizing expense in a manner similar to existing accounting. ASU 2016-2 states that a lessee would recognize a lease liability for the obligation to make lease payments and a right-to-use asset for the right to use the underlying asset for the lease term. The standard allows for two methods of adoption to recognize and measure leases: retrospectively to each prior period presented in the financial statements with the cumulative effect of initially applying the guidance recognized at the beginning of the earliest comparative period presented or retrospectively at the beginning of the period of adoption with the cumulative effect of initially applying the guidance recognized at the beginning of the period in which the guidance is first applied. Both adoption methods include a number of optional practical expedients that entities may elect to apply. The Company will adopt the standard retrospectively at the beginning of the period of adoption with the cumulative effect of initially applying the guidance recognized at the beginning of the period in which the guidance is first applied. The new accounting guidance is effective for the Company for fiscal periods beginning after December 15, 2021. The Company expects the impact to be material but has not yet determined the impact that the adoption of this guidance will have on the consolidated financial statements.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In June 2016, the FASB issued ASU 2016-13, <i>Financial Instruments-Credit Losses (Topic 326) — Measurement of Credit Losses on Financial Instruments</i>. Topic 326 was subsequently amended by ASU 2019-4, <i>Codification Improvements to Topic 326, Financial Instruments — Credit Losses,</i> ASU 2019-5, <i>Financial Instruments — Credit Losses (Topic 326): Targeted Transition Relief,</i> and clarified the guidance with the release of ASU 2020-2 <i>Financial Instruments—Credit Losses (Topic 326)</i> and <i>Leases (Topic 842).</i> These ASUs replace the current incurred loss impairment methodology with a methodology that reflects expected credit losses measured at amortized cost and certain other instruments, including loans, held-to-maturity debt securities, net investments in leases, and off-balance sheet credit exposures. The update is effective for fiscal years beginning after December 15, 2022, and interim periods with fiscal years after December 15, 2022. The Company has not yet determined the impact that the adoption of this guidance will have on the consolidated financial statements.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In March 2020, FASB issued ASU No. 2020-3, <i>Codification to Financial Instruments.</i> This ASU improves and clarifies various financial instruments topics, including the current expected credit losses standard issued in 2016. The ASU includes seven different issues that describe the areas of improvement and the related amendments to U.S. GAAP, intended to make the standards easier to understand and apply by eliminating inconsistencies and providing clarifications. The amendments related to Issue 1, Issue 2, Issue 3, Issue 4, and Issue 5 were effective upon issuance of this update. The new guidance did not have a material impact on the consolidated financial statements. The amendments related to Issue 6 and Issue 7 are effective for the Company the earlier of January 1, 2023 or when the Company adopts ASU 2016-13, if early adopted. The Company is currently evaluating the impact these topics will have on the consolidated financial statements.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Unaudited Interim Financial Statements</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The accompanying unaudited condensed consolidated financial statements have been prepared in accordance with generally accepted accounting principles in the United States (“U.S. GAAP”) for interim financial information and in accordance with the rules and regulations of the Securities and Exchange Commission (“SEC”). Accordingly, they do not include all of the information and footnotes required by U.S. GAAP for complete financial statements. The unaudited condensed consolidated financial statements reflect all normal and recurring adjustments that are, in the opinion of the Company’s management, necessary for the fair presentation of the results of operations for the interim periods. Operating results for the three and six months ended June 30, 2021 are not necessarily indicative of the results that may be expected for the year ending December 31, 2021. These interim financial statements should be read in conjunction with GDH’s audited financial statements for the year ended December 31, 2020 included in the Company’s annual report on Form 10-K that the Company filed with the SEC on March 5, 2021.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Basis of presentation</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Business Combination was accounted for as a reverse recapitalization in accordance with U.S. GAAP. Although ChaSerg was the legal acquirer, for accounting purposes, GDI was deemed to be the accounting acquirer. GDI was determined to be the accounting acquirer based on evaluation of the following facts and circumstances:</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">  </span></p><table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt" width="100%"><tr style="vertical-align: top"> <td style="width: 0.25in"/><td style="width: 0.25in">●</td><td style="text-align: justify">GDI holds executive management roles for the Company and those individuals are responsible for the day-to-day operations;</td></tr></table><p style="margin-top: 0; margin-bottom: 0"> </p><table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt" width="100%"><tr style="vertical-align: top"> <td style="width: 0.25in"/><td style="width: 0.25in">●</td><td style="text-align: justify">GDI’s former owners have the largest minority voting rights in the Company;</td></tr></table><p style="margin-top: 0; margin-bottom: 0"> </p><table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt" width="100%"><tr style="vertical-align: top"> <td style="width: 0.25in"/><td style="width: 0.25in">●</td><td style="text-align: justify">From a revenue and business operation standpoint, GDI was the larger entity in terms of relative size;</td></tr></table><p style="margin-top: 0; margin-bottom: 0"> </p><table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt" width="100%"><tr style="vertical-align: top"> <td style="width: 0.25in"/><td style="width: 0.25in">●</td><td style="text-align: justify">GDI’s San Ramon, CA headquarters are the headquarters of the Company; and</td></tr></table><p style="margin-top: 0; margin-bottom: 0"> </p><table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt" width="100%"><tr style="vertical-align: top"> <td style="width: 0.25in"/><td style="width: 0.25in">●</td><td style="text-align: justify">The intended strategy of the Company will continue GDI’s strategy of driving enterprise-level digital transformation in the Fortune 1000 companies.</td></tr></table><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In conjunction with the Business Combination, outstanding shares of GDI were converted into common stock of the Company, par value $0.0001 per share, shown as a recapitalization, and the net assets of ChaSerg were acquired at historical cost, with no goodwill or other intangible assets recorded. GDI was deemed to be the predecessor of the Company, and the consolidated assets and liabilities and results of operations prior to the Closing (for the years ended December 31, 2019 and 2018 and the period from January 1, 2020 to March 5, 2020) are those of GDI. ChaSerg’s assets and liabilities, which include net cash from the trust of $85.1 million, and results of operations were consolidated with GDI beginning on the Closing.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In accordance with guidance applicable to these circumstances, the equity structure has been restated in all comparative periods up to the Closing Date, to reflect the number of shares of the Company’s common stock, $0.0001 par value per share, issued to GDI shareholders in connection with the recapitalization transaction. As such, the shares and corresponding capital amounts and earnings per share related to GDI preferred and common stock prior to the Business Combination have been retroactively restated as shares reflecting the exchange ratio established in the Business Combination.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> 0.0001 85100000 0.0001 <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Principles of consolidation</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The accompanying condensed financial statements include the accounts of the Company and all of its subsidiaries that are directly or indirectly owned or controlled. Intercompany transactions and balances have been eliminated upon consolidation.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Use of estimates</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The preparation of the consolidated condensed financial statements in accordance with U.S. GAAP requires the Company to make estimates and assumptions that affect the amounts reported in the condensed consolidated financial statements and accompanying notes. Actual results could differ from these estimates and such differences could be material. Significant estimates include allowances for receivables, calculation of accrued liabilities, capitalization of internally developed software, stock-based compensation, contingent consideration payable, determination of fair value, useful lives and recoverability of intangible assets and goodwill, determination of provision for income taxes and uncertain tax positions.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Certain significant risks and uncertainties</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The Company is subject to risks, including but not limited to customer concentration, concentrations of credit and foreign currency risks. Refer to the section below for additional information. Additionally, the Company has been impacted by the recent coronavirus (“COVID-19”) pandemic. The global pandemic of COVID-19 has negatively affected the U.S. and global economy, disrupted global supply chains, resulted in significant travel and transport restrictions, including mandated closures and orders to “shelter-in-place,” and created significant disruption of the financial market. In 2020 the COVID-19 pandemic impacted the Company’s revenues, and the Company’s business continues to be exposed to risks and uncertainties related to the pandemic. The impact of the COVID-19 pandemic had been more pronounced with the Company’s retail customers, which depended on keeping their stores open. Additionally, in situations where the Company’s customers encountered financial difficulties, there was a risk associated with the Company’s inability to collect money from customers. In 2020 the Company took several actions to deal with the COVID-19 pandemic. These included enabling its employees to work from home, company-wide salary and compensation cuts, hiring freezes, and suspending all non-essential travel. Some of these actions such as working from home as well as suspending all non-essential travel continues to be currently in place. As the Company's business recovered in 2021, the Company discontinued some of the cost saving measures such as compensation cuts and hiring freezes. The Company now is facing the opposite challenges including employee retention and shortage of talent on the job market. The ultimate impact and the extent to which the COVID-19 pandemic will continue to affect the business, results of operation and financial condition is difficult to predict and depends on numerous evolving factors outside of the Company’s control including: the duration and scope of the pandemic, including from renewed waves and new variants; government, social, business and other actions that have been and will be taken in response to the pandemic; and the effect of the pandemic on short and long-term general economic conditions.</p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Concentrations of credit risk and significant customers</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company records its accounts receivable and unbilled receivables at their face amounts less allowances. Accounts receivable and unbilled receivables are generally dispersed across the Company’s customers in proportion to their revenue. Three customers individually exceeded 10% of the Company’s accounts receivable balance as of June 30, 2021 and December 31, 2020. One customer individually exceeded 10% of the unbilled receivables as of June 30, 2021 and three customers individually exceeded 10% of the unbilled receivables as of December 31, 2020. Two and three customers individually accounted for greater than 10% of the sales for the three months ended June 30, 2021 and 2020, respectively. Two and three customers individually accounted for greater than 10% of the sales for the six months ended June 30, 2021 and 2020, respectively.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> 3 3 0.10 0.10 1 0.10 3 0.10 2 3 0.10 2 3 0.10 0.10 <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Cash and cash equivalents</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company considers cash equivalents to be highly liquid investments with original maturities of three months or less from the date of purchase. Cash equivalents are stated at cost, which approximates fair value. At times, cash deposits with banks may exceed federally insured limits.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Accounts receivable and allowance for doubtful accounts</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Accounts receivable, less allowance for doubtful accounts, reflect the net realizable value of receivables and approximate fair value. The Company maintains an allowance against accounts receivable for the estimated probable losses on uncollectible accounts. The allowance is based upon historical loss experience, current economic conditions within the industries the Company serves as well as determination of the specific risk related to certain customers. Accounts receivable are charged off against the reserve when, in management’s estimation, further collection efforts would not result in a reasonable likelihood of receipt. The allowance for doubtful accounts balance decreased to $0.2 million as of June 30, 2021 compared to $0.4 million as of December 31, 2020.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"> <tr style="vertical-align: bottom"> <td> </td><td style="font-weight: bold; padding-bottom: 1.5pt"> </td> <td colspan="6" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid">As of</td><td style="padding-bottom: 1.5pt; font-weight: bold"> </td></tr> <tr style="vertical-align: bottom"> <td> </td><td style="font-weight: bold; padding-bottom: 1.5pt"> </td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid">June 30,<br/> 2021</td><td style="padding-bottom: 1.5pt; font-weight: bold"> </td><td style="font-weight: bold; padding-bottom: 1.5pt"> </td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid">December 31,<br/> 2020</td><td style="padding-bottom: 1.5pt; font-weight: bold"> </td></tr> <tr style="vertical-align: bottom"> <td> </td><td style="font-weight: bold"> </td> <td colspan="6" style="font-weight: bold; text-align: center">(in thousands)</td><td style="font-weight: bold"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 76%; text-align: left">Trade accounts receivable</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 9%; text-align: right">29,256</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 9%; text-align: right">17,308</td><td style="width: 1%; text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left; padding-bottom: 1.5pt">Allowance for doubtful accounts</td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">(205</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">(418</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left; padding-bottom: 4pt">Total trade accounts receivable, net</td><td style="padding-bottom: 4pt"> </td> <td style="border-bottom: Black 4pt double; text-align: left">$</td><td style="border-bottom: Black 4pt double; text-align: right">29,051</td><td style="padding-bottom: 4pt; text-align: left"> </td><td style="padding-bottom: 4pt"> </td> <td style="border-bottom: Black 4pt double; text-align: left">$</td><td style="border-bottom: Black 4pt double; text-align: right">16,890</td><td style="padding-bottom: 4pt; text-align: left"> </td></tr> </table><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"> </p> 200000 400000 <table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"> <tr style="vertical-align: bottom"> <td> </td><td style="font-weight: bold; padding-bottom: 1.5pt"> </td> <td colspan="6" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid">As of</td><td style="padding-bottom: 1.5pt; font-weight: bold"> </td></tr> <tr style="vertical-align: bottom"> <td> </td><td style="font-weight: bold; padding-bottom: 1.5pt"> </td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid">June 30,<br/> 2021</td><td style="padding-bottom: 1.5pt; font-weight: bold"> </td><td style="font-weight: bold; padding-bottom: 1.5pt"> </td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid">December 31,<br/> 2020</td><td style="padding-bottom: 1.5pt; font-weight: bold"> </td></tr> <tr style="vertical-align: bottom"> <td> </td><td style="font-weight: bold"> </td> <td colspan="6" style="font-weight: bold; text-align: center">(in thousands)</td><td style="font-weight: bold"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 76%; text-align: left">Trade accounts receivable</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 9%; text-align: right">29,256</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 9%; text-align: right">17,308</td><td style="width: 1%; text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left; padding-bottom: 1.5pt">Allowance for doubtful accounts</td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">(205</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">(418</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left; padding-bottom: 4pt">Total trade accounts receivable, net</td><td style="padding-bottom: 4pt"> </td> <td style="border-bottom: Black 4pt double; text-align: left">$</td><td style="border-bottom: Black 4pt double; text-align: right">29,051</td><td style="padding-bottom: 4pt; text-align: left"> </td><td style="padding-bottom: 4pt"> </td> <td style="border-bottom: Black 4pt double; text-align: left">$</td><td style="border-bottom: Black 4pt double; text-align: right">16,890</td><td style="padding-bottom: 4pt; text-align: left"> </td></tr> </table><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"> </p> 29256000 17308000 205000 418000 29051000 16890000 <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Unbilled receivables</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Generally, the Company will not bill customers until the services have been completed. From time-to-time, a service period may overlap with a period-end and the unbilled receivables represent amounts for services performed through period-end, but not yet billed. The unbilled receivable represents the amount expected to be billed and collected for services performed through period-end in accordance with contract terms. The unbilled receivables balances were $4.0 million and $1.8 million as of June 30, 2021 and December 31, 2020, respectively.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> 4000000.0 1800000 <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Goodwill</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Goodwill represents the excess of purchase price over the fair value of the net assets of businesses acquired. On an annual basis, the Company makes a qualitative assessment to determine if it is more likely than not that the fair value of the reporting unit is less than its carrying amount, including goodwill. If the Company determines that the fair value of the reporting unit is less than its carrying amount, it will perform a quantitative analysis; otherwise, no further evaluation is necessary. For the quantitative impairment assessment, the Company compares the fair value of the reporting unit to its carrying value, including goodwill. The Company uses the discounted cash flow method of the income approach and market approach to determine the fair value of the reporting unit. If the fair value of the reporting unit exceeds the carrying value of the net assets assigned to that unit, goodwill is not impaired, and no further testing is performed. If the carrying value of the net assets assigned to the reporting unit exceeds the fair value of the reporting unit, then the Company will recognize a loss equal to the excess, limited to the total amount of goodwill allocated to that reporting unit. Impairments, if any, are charged directly to earnings. As of June 30, 2021, the Company has a single reporting unit and determined there were no indicators of impairment.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Intangible assets</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Finite-lived intangible assets are stated at cost less accumulated amortization. Amortization is computed on the straight-line basis over the asset’s useful lives ranging between 2 and 12 years. Intangible assets are evaluated for impairment whenever events or changes in circumstances indicate that the carrying value of the assets may not be fully recoverable. If facts and circumstances indicate that the carrying value might not be recoverable, projected undiscounted net cash flows associated with the related asset or group of assets over their estimated remaining useful lives is compared against their respective carrying amounts. If an asset is found to be impaired, the impairment charge will be measured as the amount by which the carrying amount of an entity exceeds its fair value. As of June 30, 2021, the Company determined there were no indicators of impairment.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> P2Y P12Y <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Revenue recognition</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company accounts for a contract with a customer when 1) the parties to the contract have approved the contract and are committed to performing their respective obligations, 2) the contract identifies each party’s rights regarding the goods or services to be transferred, 3) the contract identifies the payment terms for the goods or services to be transferred, 4) the contract has commercial substance, and 5) collection of substantially all consideration pursuant to the contract is probable.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company derives its revenue from offering a suite of digital engineering and information technology (“IT”) consulting services, including digital transformation strategy, emerging technology, lean labs and legacy system replatforming. For most contracts, the Company uses master agreements to govern the overall relevant terms and conditions of the business arrangement between the Company and its customers. When the Company and a customer enter into a Master Services Agreement (“MSA”), purchases are generally made by the customer via a statement of work (“SOW”) which explicitly references the MSA and specifies the services to be delivered. Fees for these contracts may be in the form of time-and-materials or fixed-fee arrangements. The majority of the Company’s revenues are generated under time-and-material contracts which are billed using hourly rates to determine the amounts to be charged directly to the customer. Fees are billed and collected as stipulated in the contract, and revenue is recognized as services are performed. If there is an uncertainty about the receipt of payment for the services, revenue is recognized to the extent that a significant reversal of revenue would not be probable.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Consulting services revenue is a single performance obligation earned through a series of distinct daily services and may include services such as those described above. The Company recognizes revenue for services over time as the customer simultaneously receives and consumes the benefits as the Company performs IT consulting services. For revenue contracts, the customer derives value from the Company providing daily consulting services, and the value derived corresponds to the labor hours expended. Therefore, the Company measures the progress and recognizes revenue using an effort-based input method. For fixed fee contracts, the Company recognizes revenue as the work is performed, the monthly calculation of which is based upon actual labor hours incurred and level of effort expended throughout the duration of the contract.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">For time-and-material contracts, the Company applies the variable consideration allocation exception. Therefore, instead of allocating the variable consideration to the entire performance obligation, the Company determined the variable consideration should be allocated to each distinct service to which the variable consideration relates, which is providing the customer daily consulting services. The Company also offers volume discounts or early settlement discounts. Volume discounts apply once the customer reaches certain contractual spend thresholds. Early settlement discounts are issued contingent upon the timing of the payment from the customer. If the consideration promised in a contract includes a variable amount, the Company only includes estimated amounts of consideration in the transaction price to the extent it is probable that a significant reversal of cumulative revenue recognized will not occur when the uncertainty associated with the variable consideration is resolved. These estimates may require management to make subjective judgments and to make estimates about the effects of matters inherently uncertain. The determination of whether to constrain consideration in the transaction price are based on information (historical, current and forecasted) that is reasonably available to the Company, taking into consideration the type of customer, the type of transaction and the specific facts and circumstances of each arrangement. Although the Company believes that its approach in developing estimates and its reliance on certain judgments and underlying inputs is reasonable, actual results may differ from management’s estimates, judgments and assumptions. These estimates have historically not been material to the consolidated financial statements.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Remaining performance obligation</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">ASC 606 requires that the Company disclose the aggregate amount of transaction price that is allocated to performance obligations that have not yet been satisfied as of June 30, 2021. This disclosure is not required for:</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt" width="100%"><tr style="vertical-align: top"> <td style="width: 0.25in"/><td style="width: 0.25in"><span style="font-style: normal; font-weight: normal">1)</span></td><td style="text-align: justify">contracts with an original duration of one year or less, including contracts that can be terminated for convenience without a substantive penalty,</td></tr><tr style="vertical-align: top"> <td> </td><td> </td><td style="text-align: justify"> </td></tr> </table><table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt" width="100%"><tr style="vertical-align: top"> <td style="width: 0.25in"/><td style="width: 0.25in"><span style="font-style: normal; font-weight: normal">2)</span></td><td style="text-align: justify">contracts for which the Company recognizes revenues based on the right to invoice for services performed,</td></tr><tr style="vertical-align: top"> <td> </td><td> </td><td style="text-align: justify"> </td></tr> </table><table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt" width="100%"><tr style="vertical-align: top"> <td style="width: 0.25in"/><td style="width: 0.25in"><span style="font-style: normal; font-weight: normal">3)</span></td><td style="text-align: justify">variable consideration allocated entirely to a wholly unsatisfied performance obligation or to a wholly unsatisfied promise to transfer a distinct good or service that forms part of a single performance obligation in accordance with ASC 606-10-25-14(b), for which the criteria in ASC 606-10-32-40 have been met, or</td></tr><tr style="vertical-align: top"> <td> </td><td> </td><td style="text-align: justify"> </td></tr> </table><table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt" width="100%"><tr style="vertical-align: top"> <td style="width: 0.25in"/><td style="width: 0.25in"><span style="font-style: normal; font-weight: normal">4)</span></td><td style="text-align: justify">variable consideration in the form of a sales-based or usage-based royalty promised in exchange for a license of intellectual property.</td></tr></table><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">All of the Company’s contracts met one or more of these exemptions as of June 30, 2021.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Stock-based compensation expense</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Stock-based compensation expense is measured based on the grant-date fair value of the share-based awards. Forfeitures are recognized as incurred. The Company estimates stock options grant-date fair value using the Black-Scholes-Merton option pricing model. The model requires management to make a number of key assumptions including expected volatility, expected term, risk-free interest rate, and expected dividends. The Company evaluates the assumptions used to value its share-based awards on each grant date. The fair market value of Grid Dynamics stock is determined based on the closing price on NASDAQ on the measurement date. The Company amortizes the grant-date fair value of all share-based compensation awards over the employee’s requisite service period for the entire award on a straight-line basis, which is generally the vesting period. For an award with graded vesting that is subject only to a service condition (e.g., time-based vesting), the Company uses the straight-line attribution method under ASC 718 under which they recognize compensation cost on a straight-line basis over the total requisite service period for the entire award (i.e., over the requisite service period of the last separately-vesting tranche of the award). Additionally, the Company applies the “floor” concept so that the amount of compensation cost that is recognized as of any date is at least equal to the grant-date fair value of the vested portion of the award on that date. That is, if the straight-line expense recognized to date is less than the grant date fair value of the award that is legally vested at that date, the company will increase its recognized expense to at least equal the fair value of the vested amount. Refer to Note 10 — Stock-based compensation for additional information.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Income taxes</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company follows the asset and liability method of accounting for income taxes. Under this method, deferred income taxes are recognized for the tax consequences of temporary differences between the financial statement carrying amounts and the tax basis of the assets and liabilities. The determination of the provision for income taxes requires significant judgment, the use of estimates and the interpretation and application of complex tax laws. The provision for income taxes reflects a combination of income earned and taxed in the various U.S. federal and state, international and other jurisdictions. Jurisdictional tax law changes, increases or decreases in permanent differences between book and tax items, accruals or adjustments of accruals for tax contingencies or valuation allowances, and the change in the mix of earnings from these taxing jurisdictions all affect the overall effective tax rate.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In assessing the realizability of deferred tax assets, management considers whether it is more likely than not that some portion, or all, of the deferred tax assets will not be realized. Management considers all available evidence, both positive and negative, in determining whether a valuation allowance is required. Such evidence includes prior earnings history, the scheduled reversal of deferred tax liabilities, projected future taxable income, carryback and carryforward periods of tax attributes, and tax planning strategies that could potentially enhance the likelihood of realization of a deferred tax asset in making this assessment. The weight given to the positive and negative evidence is commensurate with the extent to which the evidence may be objectively verified.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company evaluates for uncertain tax positions at each balance sheet date. When it is more likely than not that a position will be sustained upon examination by a tax authority that has full knowledge of all relevant information, the Company measures the amount of tax benefit from the position and records the largest amount of tax benefit that is greater than 50% likely of being realized after settlement with a tax authority. The Company’s policy for interest and/or penalties related to underpayments of income taxes is to include interest and penalties in income tax expense.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> 0.50 <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Recently adopted accounting pronouncements</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Changes to U.S. GAAP are established by the Financial Accounting Standards Board (the “FASB”), in the form of Accounting Standards Updates (“ASUs”), to the FASB’s ASC. The Company has elected not to opt out of the extended transition period and thus when a standard is issued or revised and it has different application dates for public or private companies, the Company, as an emerging growth company, can adopt the new or revised standard at the time private companies adopt the new or revised standard.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In December 2019, the FASB issued Accounting Standard Update No. 2019-12, <i>Income Taxes</i> <i>(Topic 740):</i> <i>Simplifying the Accounting for Income Taxes</i> (ASU 2019-12), which simplifies the accounting for income taxes by removing certain exceptions to the general principles and also simplification of areas such as franchise taxes, step-up in tax basis goodwill, separate entity financial statements and interim recognition of enactment of tax laws or rate changes. The update is effective for fiscal years and interim periods within those fiscal years beginning after December 15, 2020, and early adoption is permitted. The Company adopted the standard as of January 1, 2021 and has determined that the adoption of this guidance did not have a material effect on the consolidated financial statements.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Recently issued accounting pronouncements</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company considered the applicability and impact of all ASUs. ASUs not listed below were assessed and determined to be either not applicable or are expected to have minimal impact on the consolidated financial statements.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In February 2016, the FASB issued ASU No. 2016-2, <i>Leases</i>. ASU 2016-2 requires lessees to put most leases on their balance sheet while recognizing expense in a manner similar to existing accounting. ASU 2016-2 states that a lessee would recognize a lease liability for the obligation to make lease payments and a right-to-use asset for the right to use the underlying asset for the lease term. The standard allows for two methods of adoption to recognize and measure leases: retrospectively to each prior period presented in the financial statements with the cumulative effect of initially applying the guidance recognized at the beginning of the earliest comparative period presented or retrospectively at the beginning of the period of adoption with the cumulative effect of initially applying the guidance recognized at the beginning of the period in which the guidance is first applied. Both adoption methods include a number of optional practical expedients that entities may elect to apply. The Company will adopt the standard retrospectively at the beginning of the period of adoption with the cumulative effect of initially applying the guidance recognized at the beginning of the period in which the guidance is first applied. The new accounting guidance is effective for the Company for fiscal periods beginning after December 15, 2021. The Company expects the impact to be material but has not yet determined the impact that the adoption of this guidance will have on the consolidated financial statements.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In June 2016, the FASB issued ASU 2016-13, <i>Financial Instruments-Credit Losses (Topic 326) — Measurement of Credit Losses on Financial Instruments</i>. Topic 326 was subsequently amended by ASU 2019-4, <i>Codification Improvements to Topic 326, Financial Instruments — Credit Losses,</i> ASU 2019-5, <i>Financial Instruments — Credit Losses (Topic 326): Targeted Transition Relief,</i> and clarified the guidance with the release of ASU 2020-2 <i>Financial Instruments—Credit Losses (Topic 326)</i> and <i>Leases (Topic 842).</i> These ASUs replace the current incurred loss impairment methodology with a methodology that reflects expected credit losses measured at amortized cost and certain other instruments, including loans, held-to-maturity debt securities, net investments in leases, and off-balance sheet credit exposures. The update is effective for fiscal years beginning after December 15, 2022, and interim periods with fiscal years after December 15, 2022. The Company has not yet determined the impact that the adoption of this guidance will have on the consolidated financial statements.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In March 2020, FASB issued ASU No. 2020-3, <i>Codification to Financial Instruments.</i> This ASU improves and clarifies various financial instruments topics, including the current expected credit losses standard issued in 2016. The ASU includes seven different issues that describe the areas of improvement and the related amendments to U.S. GAAP, intended to make the standards easier to understand and apply by eliminating inconsistencies and providing clarifications. The amendments related to Issue 1, Issue 2, Issue 3, Issue 4, and Issue 5 were effective upon issuance of this update. The new guidance did not have a material impact on the consolidated financial statements. The amendments related to Issue 6 and Issue 7 are effective for the Company the earlier of January 1, 2023 or when the Company adopts ASU 2016-13, if early adopted. The Company is currently evaluating the impact these topics will have on the consolidated financial statements.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><b>Note 3 – Business combination</b></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On March 5, 2020, ChaSerg consummated its business combination with GDI pursuant to the Merger Agreement. Immediately following the Business Combination, there were 50.8 million shares of common stock with a par value of $0.0001, and 11.3 million warrants outstanding.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">GDI began operations in September 2006 to provide next-generation e-commerce platform solutions in the areas of search, analytics, and release automation to Fortune 1000 companies. Under ASC 805, <i>Business Combinations,</i> GDI was deemed the accounting acquirer, and the Business Combination was accounted for as a reverse recapitalization, with no goodwill or other intangible assets recorded in accordance with U.S. GAAP. ChaSerg was treated as the “acquired” company for financial reporting purposes. Accordingly, for accounting purposes, the Business Combination was treated as the equivalent of GDI issuing stock for the net assets of ChaSerg, accompanied by a recapitalization. The net assets of ChaSerg were stated at historical cost, with no goodwill or other intangible assets recorded. Reported shares and earnings per share available to holders of the Company’s common stock, prior to the Business Combination, have been retroactively restated as shares reflecting the exchange ratio established in the Business Combination (approximately 1.685 GDH shares to 1.0 GDI share).</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The aggregate consideration for the Business Combination was $396.5 million, consisting of $130.0 million in cash and 27.0 million shares of ChaSerg’s common stock valued at $10.19 per share, less a post-Closing share adjustment amount of 0.9 million shares which were placed in escrow post-Closing. The shares transferred at Closing included 4.3 million options to purchase the Company’s shares that were vested, outstanding and unexercised, which were determined using 1.7 million vested options at Closing converted at an exchange ratio of approximately 2.48. Additionally, 0.4 million options to purchase the Company’s common stock that were unvested, outstanding and unexercised were assumed by the Company, which were determined using 0.1 million unvested options at Closing converted at an exchange ratio of approximately 2.48. The following represents the aggregate consideration for the Business Combination (in thousands except for per share amount):</p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 88%; text-align: left; padding-left: 6.75pt">Shares transferred at Closing</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left"> </td><td style="width: 9%; text-align: right">27,006</td><td style="width: 1%; text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 6.75pt">Less: Post-Closing share adjustment</td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">(857</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Total shares transferred at Closing</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">26,149</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td style="padding-bottom: 1.5pt; padding-left: 6.75pt">Value per share</td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">10.19</td><td style="padding-bottom: 1.5pt; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td>Total share consideration</td><td> </td> <td style="text-align: left">$</td><td style="text-align: right">266,459</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 6.75pt">Plus: Cash transferred to GDI stockholders</td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">130,000</td><td style="padding-bottom: 1.5pt; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left; padding-bottom: 1.5pt">Closing merger consideration</td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">396,459</td><td style="padding-bottom: 1.5pt; text-align: left"> </td></tr> </table><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font: 10pt Times New Roman, Times, Serif">In connection with the Closing, 0.1 million shares of common stock were redeemed at a price per share of approximately $10.21.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In connection with the Business Combination, the Company incurred direct and incremental costs of approximately $4.7 million, consisting of legal and professional fees, of which $4.1 million were related to equity issuance costs and recorded to additional paid-in capital as a reduction of proceeds and $0.6 million were recorded to general and administrative expenses.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">In connection with the Business Combination, all outstanding retention bonus obligations from a 2017 acquisition totaling $3.4 million were accelerated and paid in full to Grid Dynamics’ personnel immediately prior to the Closing and were recorded in cost of revenue and operating expenses in the consolidated financial statements.</span></p> ChaSerg consummated its business combination with GDI pursuant to the Merger Agreement. Immediately following the Business Combination, there were 50.8 million shares of common stock with a par value of $0.0001, and 11.3 million warrants outstanding. 1000 Reported shares and earnings per share available to holders of the Company’s common stock, prior to the Business Combination, have been retroactively restated as shares reflecting the exchange ratio established in the Business Combination (approximately 1.685 GDH shares to 1.0 GDI share). The aggregate consideration for the Business Combination was $396.5 million, consisting of $130.0 million in cash and 27.0 million shares of ChaSerg’s common stock valued at $10.19 per share, less a post-Closing share adjustment amount of 0.9 million shares which were placed in escrow post-Closing. The shares transferred at Closing included 4.3 million options to purchase the Company’s shares that were vested, outstanding and unexercised, which were determined using 1.7 million vested options at Closing converted at an exchange ratio of approximately 2.48. Additionally, 0.4 million options to purchase the Company’s common stock that were unvested, outstanding and unexercised were assumed by the Company, which were determined using 0.1 million unvested options at Closing converted at an exchange ratio of approximately 2.48. <table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 88%; text-align: left; padding-left: 6.75pt">Shares transferred at Closing</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left"> </td><td style="width: 9%; text-align: right">27,006</td><td style="width: 1%; text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 6.75pt">Less: Post-Closing share adjustment</td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">(857</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Total shares transferred at Closing</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">26,149</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td style="padding-bottom: 1.5pt; padding-left: 6.75pt">Value per share</td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">10.19</td><td style="padding-bottom: 1.5pt; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td>Total share consideration</td><td> </td> <td style="text-align: left">$</td><td style="text-align: right">266,459</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left; padding-bottom: 1.5pt; padding-left: 6.75pt">Plus: Cash transferred to GDI stockholders</td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">130,000</td><td style="padding-bottom: 1.5pt; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left; padding-bottom: 1.5pt">Closing merger consideration</td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">396,459</td><td style="padding-bottom: 1.5pt; text-align: left"> </td></tr> </table><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> 27006 857 26149 10.19 266459000 130000000 396459000 100000 10.21 4700000 4100000 600000 In connection with the Business Combination, all outstanding retention bonus obligations from a 2017 acquisition totaling $3.4 million were accelerated and paid in full to Grid Dynamics’ personnel immediately prior to the Closing and were recorded in cost of revenue and operating expenses in the consolidated financial statements. <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note 4 — Acquisition of Tacit Knowledge Inc.</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">On May 29, 2021, the Company acquired 100% of the equity interest of the global consultancy company Tacit Knowledge Inc. (“Tacit”). Founded in 2002, Tacit is a global provider of digital commerce solutions, serving customers across the UK, North America, Continental Europe, and Asia. The acquisition of Tacit added approximately 180 employees to the Company's headcount. The acquisition will augment the Company's service offerings and will strengthen its competitive position within the market. Additionally, the acquisition will also enable the Company to leverage near-shore capabilities with Tacit’s presence in Mexico.</p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The total purchase consideration is $37.0 million and included cash consideration of $33.6 million paid at closing and fair value of the contingent consideration at the date of the acquisition of $3.4 million. The maximum amount of potential contingent cash consideration is $5.0 million. The contingent consideration is payable based on revenue and EBITDA metrics to be achieved by Tacit within 12 months. The Company recorded a liability for the contingent consideration amount based on the Company’s best estimate of the fair value of the expected payout.</p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The primary areas of the preliminary purchase price allocations that have not been finalized relate to the finalization of working capital, the valuation and useful lives of intangible assets, the valuation of the earn-out, and the deferred tax liabilities. Upon completion of the fair value assessment, the Company anticipates that the ultimate intangible assets may differ from the preliminary assessment outlined above. Any change in the finalization of working capital will reduce or increase the cash consideration. Any changes to the preliminary estimates of the fair value of the and intangible assets or earn-out will be adjusted to goodwill during the measurement period, with subsequent changes in estimates recorded in the Company’s Consolidated Statements of Loss and Comprehensive Loss.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font: 10pt Times New Roman, Times, Serif"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The purchase price of Tacit has been preliminarily allocated to the assets acquired and liabilities assumed based on their estimated respective fair values as of May 29, 2021 with the excess purchase price allocated to goodwill. The Company’s preliminary allocation of the purchase price to the net tangible and intangible assets acquired and liabilities assumed is as follows (in thousands):</p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"> <tr style="vertical-align: bottom"> <td style="font-weight: bold">Fair market values</td><td> </td> <td colspan="2"> </td><td> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 88%; text-align: left">Current assets</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 9%; text-align: right">9,145</td><td style="width: 1%; text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left">Property, plant and equipment</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">466</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Customer relationships</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">11,737</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td>Tradename</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">1,176</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td>Goodwill</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">20,603</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left">Total assets acquired</td><td style="font-weight: bold"> </td> <td style="font-weight: bold; text-align: left">$</td><td style="font-weight: bold; text-align: right">43,127</td><td style="font-weight: bold; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left">Accounts payable and accrued expenses</td><td> </td> <td style="text-align: left">$</td><td style="text-align: right">(3,675</td><td style="text-align: left">)</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Deferred taxes</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(2,500</td><td style="text-align: left">)</td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left">Total liabilities assumed</td><td style="font-weight: bold"> </td> <td style="font-weight: bold; text-align: left">$</td><td style="font-weight: bold; text-align: right">(6,175</td><td style="font-weight: bold; text-align: left">)</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-weight: bold">Purchase price allocation</td><td style="font-weight: bold"> </td> <td style="font-weight: bold; text-align: left">$</td><td style="font-weight: bold; text-align: right">36,952</td><td style="font-weight: bold; text-align: left"> </td></tr> </table><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The preliminary fair value of identifiable intangible assets as of the date of acquisition is as follows:</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"> <tr style="vertical-align: bottom"> <td style="border-bottom: Black 1.5pt solid; font-weight: bold">(In thousands)</td><td style="padding-bottom: 1.5pt; font-weight: bold"> </td> <td colspan="2" style="text-align: center; border-bottom: Black 1.5pt solid; font-weight: bold">Fair Value</td><td style="text-align: center; padding-bottom: 1.5pt; font-weight: bold"> </td><td style="text-align: center; padding-bottom: 1.5pt; font-weight: bold"> </td> <td style="text-align: center; border-bottom: Black 1.5pt solid; font-weight: bold">Useful Life</td><td style="text-align: center; padding-bottom: 1.5pt; font-weight: bold"> </td> <td style="text-align: center; border-bottom: Black 1.5pt solid; font-weight: bold">Amortization <br/> method</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 64%; text-align: left">Customer relationships</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 9%; text-align: right">11,737</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="text-align: center; width: 11%">12 years</td><td style="width: 1%"> </td> <td style="text-align: center; width: 11%">Straight-line</td></tr> <tr style="vertical-align: bottom; "> <td style="padding-bottom: 1.5pt; text-align: left">Tacit tradename</td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">1,176</td><td style="padding-bottom: 1.5pt; text-align: left"> </td><td style="padding-bottom: 1.5pt"> </td> <td style="text-align: center; padding-bottom: 1.5pt">4 years</td><td style="padding-bottom: 1.5pt"> </td> <td style="text-align: center; padding-bottom: 1.5pt">Accelerated</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="padding-bottom: 1.5pt; font-weight: bold; text-align: left">Total identified intangible assets</td><td style="padding-bottom: 1.5pt; font-weight: bold"> </td> <td style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: right">12,913</td><td style="padding-bottom: 1.5pt; font-weight: bold; text-align: left"> </td><td style="padding-bottom: 1.5pt"> </td> <td style="padding-bottom: 1.5pt"> </td><td style="padding-bottom: 1.5pt"> </td> <td style="padding-bottom: 1.5pt"> </td></tr> </table><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"> </p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">As a result of the acquisition, the Company recognized a total of $20.6 million of goodwill. The purchase price was assigned to assets acquired and liabilities assumed based on their estimated fair values as of the date of acquisition, and any excess was allocated to goodwill, as shown in the table above. Goodwill represents the value the Company expects to achieve through the implementation of operational synergies and growth opportunities as the Company expands its global reach. The goodwill is not deductible for income tax purposes. </p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company used various valuation techniques to determine fair value, with the primary techniques being discounted cash flow analysis, relief-from-royalty, and multi-period excess earnings valuation approaches, which use significant unobservable inputs, or Level 3 inputs, as defined by the fair value hierarchy. Under these valuation approaches, the Company is required to make estimates and assumptions about sales, operating margins, growth and attrition rates, royalty rates and discount rates based on budgets, business projections, anticipated future cash flows, and marketplace data.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The acquisition of Tacit was accounted for using the acquisition method of accounting, and consequently, the results of operations for Tacit are reported in the consolidated financial statements from the date of acquisition. Tacit revenue was approximately $2.5 million and net income was approximately $0.5 million from the date of acquisition to June 30, 2021.</p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">The following unaudited pro forma information presents the combined results of operations as if the acquisition of Tacit had occurred at the beginning of 2020. Tacit pre-acquisition results have been added to the Company’s historical results. The pro forma results contained in the table below include adjustment for amortization of acquired intangibles. Any potential cost savings or other operational efficiencies that could result from the acquisition are not included in these pro forma results. </p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The 2021 pro forma results include transaction related expenses incurred by the Company prior to the acquisition of $0.6 million including items such as consultant fees and other deal costs.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">These pro forma results have been prepared for comparative purposes only and are not necessarily indicative of the results of operations as they would have been had the acquisitions occurred on the assumed dates, nor are they necessarily an indication of future operating results.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"> <tr style="vertical-align: bottom"> <td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: center; font-weight: bold"> </td> <td colspan="6" style="border-bottom: Black 1.5pt solid; text-align: center; font-weight: bold">Six Months Ended <br/> June 30,</td><td style="padding-bottom: 1.5pt; text-align: center"> </td></tr> <tr style="vertical-align: bottom"> <td style="border-bottom: Black 1.5pt solid; font-weight: bold">(Unaudited)</td><td style="padding-bottom: 1.5pt; font-weight: bold"> </td> <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center; font-weight: bold">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold"> </td><td style="padding-bottom: 1.5pt; font-weight: bold"> </td> <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center; font-weight: bold">2020</td><td style="padding-bottom: 1.5pt; font-weight: bold"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 76%">Revenue</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 9%; text-align: right">94,842</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 9%; text-align: right">70,422</td><td style="width: 1%; text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left">Net loss</td><td> </td> <td style="text-align: left">$</td><td style="text-align: right">(1,755</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left">$</td><td style="text-align: right">(6,629</td><td style="text-align: left">)</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td>Loss per share</td><td> </td> <td style="text-align: left">$</td><td style="text-align: right">(0.03</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left">$</td><td style="text-align: right">(0.17</td><td style="text-align: left">)</td></tr> </table> The total purchase consideration is $37.0 million and included cash consideration of $33.6 million paid at closing and fair value of the contingent consideration at the date of the acquisition of $3.4 million. The maximum amount of potential contingent cash consideration is $5.0 million. <table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"> <tr style="vertical-align: bottom"> <td style="font-weight: bold">Fair market values</td><td> </td> <td colspan="2"> </td><td> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 88%; text-align: left">Current assets</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 9%; text-align: right">9,145</td><td style="width: 1%; text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left">Property, plant and equipment</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">466</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Customer relationships</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">11,737</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td>Tradename</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">1,176</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td>Goodwill</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">20,603</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left">Total assets acquired</td><td style="font-weight: bold"> </td> <td style="font-weight: bold; text-align: left">$</td><td style="font-weight: bold; text-align: right">43,127</td><td style="font-weight: bold; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left">Accounts payable and accrued expenses</td><td> </td> <td style="text-align: left">$</td><td style="text-align: right">(3,675</td><td style="text-align: left">)</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Deferred taxes</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(2,500</td><td style="text-align: left">)</td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left">Total liabilities assumed</td><td style="font-weight: bold"> </td> <td style="font-weight: bold; text-align: left">$</td><td style="font-weight: bold; text-align: right">(6,175</td><td style="font-weight: bold; text-align: left">)</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-weight: bold">Purchase price allocation</td><td style="font-weight: bold"> </td> <td style="font-weight: bold; text-align: left">$</td><td style="font-weight: bold; text-align: right">36,952</td><td style="font-weight: bold; text-align: left"> </td></tr> </table><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"> </p> 9145000 466000 11737000 1176000 20603000 43127000 3675000 2500000 6175000 36952000 <table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"> <tr style="vertical-align: bottom"> <td style="border-bottom: Black 1.5pt solid; font-weight: bold">(In thousands)</td><td style="padding-bottom: 1.5pt; font-weight: bold"> </td> <td colspan="2" style="text-align: center; border-bottom: Black 1.5pt solid; font-weight: bold">Fair Value</td><td style="text-align: center; padding-bottom: 1.5pt; font-weight: bold"> </td><td style="text-align: center; padding-bottom: 1.5pt; font-weight: bold"> </td> <td style="text-align: center; border-bottom: Black 1.5pt solid; font-weight: bold">Useful Life</td><td style="text-align: center; padding-bottom: 1.5pt; font-weight: bold"> </td> <td style="text-align: center; border-bottom: Black 1.5pt solid; font-weight: bold">Amortization <br/> method</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 64%; text-align: left">Customer relationships</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 9%; text-align: right">11,737</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="text-align: center; width: 11%">12 years</td><td style="width: 1%"> </td> <td style="text-align: center; width: 11%">Straight-line</td></tr> <tr style="vertical-align: bottom; "> <td style="padding-bottom: 1.5pt; text-align: left">Tacit tradename</td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">1,176</td><td style="padding-bottom: 1.5pt; text-align: left"> </td><td style="padding-bottom: 1.5pt"> </td> <td style="text-align: center; padding-bottom: 1.5pt">4 years</td><td style="padding-bottom: 1.5pt"> </td> <td style="text-align: center; padding-bottom: 1.5pt">Accelerated</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="padding-bottom: 1.5pt; font-weight: bold; text-align: left">Total identified intangible assets</td><td style="padding-bottom: 1.5pt; font-weight: bold"> </td> <td style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: right">12,913</td><td style="padding-bottom: 1.5pt; font-weight: bold; text-align: left"> </td><td style="padding-bottom: 1.5pt"> </td> <td style="padding-bottom: 1.5pt"> </td><td style="padding-bottom: 1.5pt"> </td> <td style="padding-bottom: 1.5pt"> </td></tr> </table><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"> </p> 11737000 P12Y Straight-line 1176000 P4Y Accelerated 12913000 20600000 2500000 500000 600000 <table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"> <tr style="vertical-align: bottom"> <td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: center; font-weight: bold"> </td> <td colspan="6" style="border-bottom: Black 1.5pt solid; text-align: center; font-weight: bold">Six Months Ended <br/> June 30,</td><td style="padding-bottom: 1.5pt; text-align: center"> </td></tr> <tr style="vertical-align: bottom"> <td style="border-bottom: Black 1.5pt solid; font-weight: bold">(Unaudited)</td><td style="padding-bottom: 1.5pt; font-weight: bold"> </td> <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center; font-weight: bold">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold"> </td><td style="padding-bottom: 1.5pt; font-weight: bold"> </td> <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center; font-weight: bold">2020</td><td style="padding-bottom: 1.5pt; font-weight: bold"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 76%">Revenue</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 9%; text-align: right">94,842</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 9%; text-align: right">70,422</td><td style="width: 1%; text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left">Net loss</td><td> </td> <td style="text-align: left">$</td><td style="text-align: right">(1,755</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left">$</td><td style="text-align: right">(6,629</td><td style="text-align: left">)</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td>Loss per share</td><td> </td> <td style="text-align: left">$</td><td style="text-align: right">(0.03</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left">$</td><td style="text-align: right">(0.17</td><td style="text-align: left">)</td></tr> </table> 94842 70422 -1755 -6629 -0.03 -0.17 <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note 5 — Property and equipment, net</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Property and equipment consist of the following (in thousands):</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"> <tr style="vertical-align: bottom"> <td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: center"> </td> <td colspan="2" style="padding-bottom: 1.5pt; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; text-align: center; margin-top: 0pt; margin-bottom: 0pt"><b>Estimated</b></p></td><td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: center; font-weight: bold"> </td> <td colspan="6" style="border-bottom: Black 1.5pt solid; text-align: center; font-weight: bold">As of</td><td style="padding-bottom: 1.5pt; text-align: center"> </td></tr> <tr style="vertical-align: bottom"> <td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: center"> </td> <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"><b>Useful Life</b><br/> <b>(In Years)</b></td><td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: center; font-weight: bold"> </td> <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center; font-weight: bold">June 30, <br/> 2021</td><td style="padding-bottom: 1.5pt; text-align: center; font-weight: bold"> </td><td style="padding-bottom: 1.5pt; text-align: center; font-weight: bold"> </td> <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center; font-weight: bold">December 31, <br/> 2020</td><td style="padding-bottom: 1.5pt; text-align: center; font-weight: bold"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 64%; text-align: left">Computers and equipment</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: center"> </td><td style="width: 9%; text-align: center"><span style="font-size: 10pt">2-5</span></td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 9%; text-align: right">8,538</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 9%; text-align: right">6,447</td><td style="width: 1%; text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left">Machinery and automobiles</td><td> </td> <td style="text-align: center"> </td><td style="text-align: center">5</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">601</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">551</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Furniture and fixtures</td><td> </td> <td style="text-align: center"> </td><td style="text-align: center"><span style="font-size: 10pt">3-7</span></td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">1,051</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">643</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td>Software</td><td> </td> <td style="text-align: center"> </td><td style="text-align: center">5</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">513</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">554</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="padding-bottom: 1.5pt; text-align: left">Leasehold improvements</td><td style="padding-bottom: 1.5pt"> </td> <td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: center"><span style="font-size: 10pt">3-12</span></td><td style="padding-bottom: 1.5pt; text-align: left"> </td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">460</td><td style="padding-bottom: 1.5pt; text-align: left"> </td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">236</td><td style="padding-bottom: 1.5pt; text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td> </td><td> </td> <td style="text-align: center"> </td><td style="text-align: center"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">11,163</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">8,430</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="padding-bottom: 1.5pt; text-align: left">Less: Accumulated depreciation and amortization</td><td style="padding-bottom: 1.5pt"> </td> <td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: left"> </td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">(7,405</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">(5,622</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr> <tr style="vertical-align: bottom; "> <td> </td><td> </td> <td style="text-align: center"> </td><td style="text-align: center"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">3,758</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">2,809</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td> </td><td> </td> <td style="text-align: center"> </td><td style="text-align: center"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left">Capitalized software development costs</td><td> </td> <td style="text-align: center"> </td><td style="text-align: center"><span style="font-size: 10pt">2-3</span></td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">4,216</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">3,531</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="padding-bottom: 1.5pt; text-align: left">Less: Accumulated amortization</td><td style="padding-bottom: 1.5pt"> </td> <td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: left"> </td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">(2,814</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">(2,245</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr> <tr style="vertical-align: bottom; "> <td style="padding-bottom: 1.5pt"> </td><td style="padding-bottom: 1.5pt"> </td> <td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: left"> </td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">1,402</td><td style="padding-bottom: 1.5pt; text-align: left"> </td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">1,287</td><td style="padding-bottom: 1.5pt; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="padding-bottom: 1.5pt; text-align: left">Property and equipment, net</td><td style="padding-bottom: 1.5pt"> </td> <td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: left"> </td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">5,160</td><td style="padding-bottom: 1.5pt; text-align: left"> </td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">4,095</td><td style="padding-bottom: 1.5pt; text-align: left"> </td></tr> </table> <table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"> <tr style="vertical-align: bottom"> <td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: center"> </td> <td colspan="2" style="padding-bottom: 1.5pt; text-align: center"><p style="font: 10pt Times New Roman, Times, Serif; text-align: center; margin-top: 0pt; margin-bottom: 0pt"><b>Estimated</b></p></td><td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: center; font-weight: bold"> </td> <td colspan="6" style="border-bottom: Black 1.5pt solid; text-align: center; font-weight: bold">As of</td><td style="padding-bottom: 1.5pt; text-align: center"> </td></tr> <tr style="vertical-align: bottom"> <td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: center"> </td> <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center"><b>Useful Life</b><br/> <b>(In Years)</b></td><td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: center; font-weight: bold"> </td> <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center; font-weight: bold">June 30, <br/> 2021</td><td style="padding-bottom: 1.5pt; text-align: center; font-weight: bold"> </td><td style="padding-bottom: 1.5pt; text-align: center; font-weight: bold"> </td> <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center; font-weight: bold">December 31, <br/> 2020</td><td style="padding-bottom: 1.5pt; text-align: center; font-weight: bold"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 64%; text-align: left">Computers and equipment</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: center"> </td><td style="width: 9%; text-align: center"><span style="font-size: 10pt">2-5</span></td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 9%; text-align: right">8,538</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 9%; text-align: right">6,447</td><td style="width: 1%; text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left">Machinery and automobiles</td><td> </td> <td style="text-align: center"> </td><td style="text-align: center">5</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">601</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">551</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Furniture and fixtures</td><td> </td> <td style="text-align: center"> </td><td style="text-align: center"><span style="font-size: 10pt">3-7</span></td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">1,051</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">643</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td>Software</td><td> </td> <td style="text-align: center"> </td><td style="text-align: center">5</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">513</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">554</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="padding-bottom: 1.5pt; text-align: left">Leasehold improvements</td><td style="padding-bottom: 1.5pt"> </td> <td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: center"><span style="font-size: 10pt">3-12</span></td><td style="padding-bottom: 1.5pt; text-align: left"> </td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">460</td><td style="padding-bottom: 1.5pt; text-align: left"> </td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">236</td><td style="padding-bottom: 1.5pt; text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td> </td><td> </td> <td style="text-align: center"> </td><td style="text-align: center"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">11,163</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">8,430</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="padding-bottom: 1.5pt; text-align: left">Less: Accumulated depreciation and amortization</td><td style="padding-bottom: 1.5pt"> </td> <td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: left"> </td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">(7,405</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">(5,622</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr> <tr style="vertical-align: bottom; "> <td> </td><td> </td> <td style="text-align: center"> </td><td style="text-align: center"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">3,758</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">2,809</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td> </td><td> </td> <td style="text-align: center"> </td><td style="text-align: center"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left">Capitalized software development costs</td><td> </td> <td style="text-align: center"> </td><td style="text-align: center"><span style="font-size: 10pt">2-3</span></td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">4,216</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">3,531</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="padding-bottom: 1.5pt; text-align: left">Less: Accumulated amortization</td><td style="padding-bottom: 1.5pt"> </td> <td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: left"> </td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">(2,814</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">(2,245</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr> <tr style="vertical-align: bottom; "> <td style="padding-bottom: 1.5pt"> </td><td style="padding-bottom: 1.5pt"> </td> <td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: left"> </td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">1,402</td><td style="padding-bottom: 1.5pt; text-align: left"> </td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">1,287</td><td style="padding-bottom: 1.5pt; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="padding-bottom: 1.5pt; text-align: left">Property and equipment, net</td><td style="padding-bottom: 1.5pt"> </td> <td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: left"> </td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">5,160</td><td style="padding-bottom: 1.5pt; text-align: left"> </td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">4,095</td><td style="padding-bottom: 1.5pt; text-align: left"> </td></tr> </table> P2Y P5Y 8538000 6447000 P5Y 601000 551000 P3Y P7Y 1051000 643000 P5Y 513000 554000 P3Y P12Y 460000 236000 11163000 8430000 7405000 5622000 3758000 2809000 P2Y P3Y 4216000 3531000 2814000 2245000 1402000 1287000 5160000 4095000 <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note 6 — Intangible assets, net</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Intangible assets consist of the following (in thousands):</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"> <tr style="vertical-align: bottom"> <td style="text-align: center"> </td><td style="font-weight: bold; padding-bottom: 1.5pt"> </td> <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Estimated</td><td style="padding-bottom: 1.5pt; font-weight: bold"> </td><td style="font-weight: bold; padding-bottom: 1.5pt"> </td> <td colspan="6" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid">As of</td><td style="padding-bottom: 1.5pt; font-weight: bold"> </td></tr> <tr style="vertical-align: bottom"> <td style="text-align: center"> </td><td style="font-weight: bold; padding-bottom: 1.5pt"> </td> <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Useful Life<br/> (In Years)</td><td style="padding-bottom: 1.5pt; font-weight: bold"> </td><td style="font-weight: bold; padding-bottom: 1.5pt"> </td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid">June 30, <br/> 2021</td><td style="padding-bottom: 1.5pt; font-weight: bold"> </td><td style="font-weight: bold; padding-bottom: 1.5pt"> </td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid">December 31, <br/> 2020</td><td style="padding-bottom: 1.5pt; font-weight: bold"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 64%; text-align: left">Customer relationships</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: center"> </td><td style="width: 9%; text-align: center"><span style="font-size: 10pt">8-12</span></td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 9%; text-align: right">15,971</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 9%; text-align: right">4,234</td><td style="width: 1%; text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td>Tradename</td><td> </td> <td style="text-align: center"> </td><td style="text-align: center"><span style="font-size: 10pt">4-10</span></td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">4,676</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">3,500</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left; padding-bottom: 1.5pt">Non-compete agreements</td><td style="padding-bottom: 1.5pt"> </td> <td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: center">2</td><td style="padding-bottom: 1.5pt; text-align: left"> </td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">440</td><td style="padding-bottom: 1.5pt; text-align: left"> </td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">440</td><td style="padding-bottom: 1.5pt; text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td> </td><td> </td> <td style="text-align: center"> </td><td style="text-align: center"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">21,087</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">8,174</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left; padding-bottom: 1.5pt">Less: Accumulated amortization</td><td style="padding-bottom: 1.5pt"> </td> <td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: left"> </td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">(745</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">(49</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left; padding-bottom: 1.5pt">Intangible assets, net</td><td style="padding-bottom: 1.5pt"> </td> <td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: left"> </td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">20,342</td><td style="padding-bottom: 1.5pt; text-align: left"> </td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">8,125</td><td style="padding-bottom: 1.5pt; text-align: left"> </td></tr> </table> <table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"> <tr style="vertical-align: bottom"> <td style="text-align: center"> </td><td style="font-weight: bold; padding-bottom: 1.5pt"> </td> <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Estimated</td><td style="padding-bottom: 1.5pt; font-weight: bold"> </td><td style="font-weight: bold; padding-bottom: 1.5pt"> </td> <td colspan="6" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid">As of</td><td style="padding-bottom: 1.5pt; font-weight: bold"> </td></tr> <tr style="vertical-align: bottom"> <td style="text-align: center"> </td><td style="font-weight: bold; padding-bottom: 1.5pt"> </td> <td colspan="2" style="border-bottom: Black 1.5pt solid; font-weight: bold; text-align: center">Useful Life<br/> (In Years)</td><td style="padding-bottom: 1.5pt; font-weight: bold"> </td><td style="font-weight: bold; padding-bottom: 1.5pt"> </td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid">June 30, <br/> 2021</td><td style="padding-bottom: 1.5pt; font-weight: bold"> </td><td style="font-weight: bold; padding-bottom: 1.5pt"> </td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid">December 31, <br/> 2020</td><td style="padding-bottom: 1.5pt; font-weight: bold"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 64%; text-align: left">Customer relationships</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: center"> </td><td style="width: 9%; text-align: center"><span style="font-size: 10pt">8-12</span></td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 9%; text-align: right">15,971</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 9%; text-align: right">4,234</td><td style="width: 1%; text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td>Tradename</td><td> </td> <td style="text-align: center"> </td><td style="text-align: center"><span style="font-size: 10pt">4-10</span></td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">4,676</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">3,500</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left; padding-bottom: 1.5pt">Non-compete agreements</td><td style="padding-bottom: 1.5pt"> </td> <td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: center">2</td><td style="padding-bottom: 1.5pt; text-align: left"> </td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">440</td><td style="padding-bottom: 1.5pt; text-align: left"> </td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">440</td><td style="padding-bottom: 1.5pt; text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td> </td><td> </td> <td style="text-align: center"> </td><td style="text-align: center"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">21,087</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">8,174</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left; padding-bottom: 1.5pt">Less: Accumulated amortization</td><td style="padding-bottom: 1.5pt"> </td> <td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: left"> </td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">(745</td><td style="padding-bottom: 1.5pt; text-align: left">)</td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">(49</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left; padding-bottom: 1.5pt">Intangible assets, net</td><td style="padding-bottom: 1.5pt"> </td> <td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: left"> </td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">20,342</td><td style="padding-bottom: 1.5pt; text-align: left"> </td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">8,125</td><td style="padding-bottom: 1.5pt; text-align: left"> </td></tr> </table> P8Y P12Y 15971000 4234000 P4Y P10Y 4676000 3500000 P2Y 440000 440000 21087000 8174000 -745000 -49000 20342000 8125000 <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note 7 — Other current liabilities</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The components of other current liabilities were as follows (in thousands):</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"> <tr style="vertical-align: bottom"> <td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: center; font-weight: bold"> </td> <td colspan="6" style="border-bottom: Black 1.5pt solid; text-align: center; font-weight: bold">As of</td><td style="padding-bottom: 1.5pt; text-align: center"> </td></tr> <tr style="vertical-align: bottom"> <td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: center; font-weight: bold"> </td> <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center; font-weight: bold">June 30, <br/> 2021</td><td style="padding-bottom: 1.5pt; text-align: center; font-weight: bold"> </td><td style="padding-bottom: 1.5pt; text-align: center; font-weight: bold"> </td> <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center; font-weight: bold">December 31, <br/> 2020</td><td style="padding-bottom: 1.5pt; text-align: center; font-weight: bold"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 76%; text-align: left">Customer deposits</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 9%; text-align: right">767</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 9%; text-align: right">731</td><td style="width: 1%; text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left">Other liabilities</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">2,137</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">528</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="padding-bottom: 1.5pt; text-align: left">Contingent consideration payable</td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">5,347</td><td style="padding-bottom: 1.5pt; text-align: left"> </td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">1,947</td><td style="padding-bottom: 1.5pt; text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td style="padding-left: 0.125in; padding-bottom: 1.5pt; text-align: left">Total other current liabilities</td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">8,251</td><td style="padding-bottom: 1.5pt; text-align: left"> </td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">3,206</td><td style="padding-bottom: 1.5pt; text-align: left"> </td></tr> </table><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">  </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">In connection with the acquisition of Daxx on December 14, 2020, the Company recorded a contingent consideration payable, which is a post-closing earn-out consideration, estimated based on fair value. In connection with the acquisition of Tacit on May 29, 2021, the Company recorded a contingent consideration payable, which is a post-closing earn-out consideration, estimated based on fair value.</p> <table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"> <tr style="vertical-align: bottom"> <td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: center; font-weight: bold"> </td> <td colspan="6" style="border-bottom: Black 1.5pt solid; text-align: center; font-weight: bold">As of</td><td style="padding-bottom: 1.5pt; text-align: center"> </td></tr> <tr style="vertical-align: bottom"> <td style="padding-bottom: 1.5pt; text-align: center"> </td><td style="padding-bottom: 1.5pt; text-align: center; font-weight: bold"> </td> <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center; font-weight: bold">June 30, <br/> 2021</td><td style="padding-bottom: 1.5pt; text-align: center; font-weight: bold"> </td><td style="padding-bottom: 1.5pt; text-align: center; font-weight: bold"> </td> <td colspan="2" style="border-bottom: Black 1.5pt solid; text-align: center; font-weight: bold">December 31, <br/> 2020</td><td style="padding-bottom: 1.5pt; text-align: center; font-weight: bold"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 76%; text-align: left">Customer deposits</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 9%; text-align: right">767</td><td style="width: 1%; text-align: left"> </td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 9%; text-align: right">731</td><td style="width: 1%; text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left">Other liabilities</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">2,137</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">528</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="padding-bottom: 1.5pt; text-align: left">Contingent consideration payable</td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">5,347</td><td style="padding-bottom: 1.5pt; text-align: left"> </td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">1,947</td><td style="padding-bottom: 1.5pt; text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td style="padding-left: 0.125in; padding-bottom: 1.5pt; text-align: left">Total other current liabilities</td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">8,251</td><td style="padding-bottom: 1.5pt; text-align: left"> </td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left">$</td><td style="border-bottom: Black 1.5pt solid; text-align: right">3,206</td><td style="padding-bottom: 1.5pt; text-align: left"> </td></tr> </table><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">  </span></p> 767000 731000 2137000 528000 5347000 1947000 8251000 3206000 <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note 8 — Income taxes</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify">The Company recorded income tax expense of $2.8 million and income tax benefit of $(0.8) million for the three months ended June 30, 2021 and 2020, respectively. The Company’s effective tax rate was 213.6% and 27.3% for the three months ended June 30, 2021 and 2020, respectively. The increase in effective tax rate for the three months ended June 30, 2021, as compared to the same periods in 2020 was attributable mainly to Section 162 (m) compensation deduction limitations partially offset by stock-based compensation excess tax benefit. Additionally, the United Kingdom’s (“UK”) recently enacted Finance Act 2021 has increased its corporate tax rate to 25% for companies with profits exceeding 250,000 pounds, effective beginning April 1, 2023. As a result of this change in tax law, the Company remeasured its UK deferred taxes which resulted in a $0.5 million discrete tax expense in the three months ended June 30, 2021. The Company recorded income tax expense of $2.0 million and income tax benefit of $(3.5) million for the six months ended June 30, 2021 and 2020, respectively. The Company’s effective tax rate was (132.8)% and 34.1% for the six months ended June 30, 2021 and 2020, respectively. The increase in effective tax rate for the three months ended June 30, 2021, as compared to the same periods in 2020 was attributable mainly to Section 162 (m) compensation deduction limitations partially offset by stock-based compensation excess tax benefit. For the three and six months ended June 30, 2021, the Company used a discrete effective tax rate method to calculate income taxes due to sensitivity of the forecast. The Company determined that small changes in estimated “ordinary” income would result in significant changes in the estimated annual effective tax rate causing material distortion in the year-to-date tax provision. Similarly, for the three and six months ended June 30, 2020, due to uncertainties created by the COVID-19 pandemic, the Company’s estimated annual effective tax rate method would not provide a reliable estimate and therefore was not used.</p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On March 27, 2020, the U.S. President signed into law the CARES Act, an economic stimulus package in response to the COVID-19 global pandemic. The CARES Act contains several corporate income tax provisions, including making remaining alternative minimum tax credits immediately refundable; providing a 5-year carryback of net operating loss carryforwards (“NOLs”) generated in tax years 2018, 2019, and 2020, and removing the 80% taxable income limitation on utilization of those NOLs if carried back to prior tax years or utilized in tax years beginning before 2021; and temporarily liberalizing the interest deductibility rules under Section 163(j) of the Tax Cuts and Jobs Act, by raising the adjusted taxable income limitation from 30% to 50% for tax years 2019 and 2020 and giving taxpayers the election of using 2019 adjusted taxable income for purposes of computing 2020 interest deductibility. The CARES Act did not have a significant impact on the Company’s tax provision for the three and six months ended June 30, 2021 or 2020. As additional guidance is released, the Company will evaluate whether there would need to be a change in the period when such guidance is issued.</span></p> 2800000 -800000 2.136 0.273 0.25 250000 500000 2000000.0 -3500000 -1.328 0.341 The CARES Act contains several corporate income tax provisions, including making remaining alternative minimum tax credits immediately refundable; providing a 5-year carryback of net operating loss carryforwards (“NOLs”) generated in tax years 2018, 2019, and 2020, and removing the 80% taxable income limitation on utilization of those NOLs if carried back to prior tax years or utilized in tax years beginning before 2021; and temporarily liberalizing the interest deductibility rules under Section 163(j) of the Tax Cuts and Jobs Act, by raising the adjusted taxable income limitation from 30% to 50% for tax years 2019 and 2020 and giving taxpayers the election of using 2019 adjusted taxable income for purposes of computing 2020 interest deductibility. <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note 9 — Stockholders’ equity</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The following description summarizes the material terms and provisions of the securities that the Company has authorized.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>Common stock</i></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company is authorized to issue 110.0 million shares of common stock. At Closing, March 5, 2020, the Company had issued 50.8 million shares of common stock. As of June 30, 2021 the Company had 54.7 million shares of common stock that were outstanding.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>Preferred Stock</i></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As of December 31, 2019 GDI had 1.0 million shares of no par value shares of preferred stock outstanding convertible on a 1:1basis with GDI’s common stock. At the Closing, the preferred stock outstanding was converted into common stock of the Company, par value $0.0001 per share.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>Founders and underwriter shares subject to earnout provisions</i></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">At the Closing, the Company had 1.2 million shares of common stock issued and outstanding subject to earnout provisions (the “Earnout Shares”). The Earnout Shares were subject to transfer restrictions and the owners of the Earnout Shares could not sell, transfer, or otherwise dispose of their respective shares until the respective earnout provisions were achieved as described further below. The Earnout Shares have full ownership rights including the right to vote and receive dividends and other distributions thereon. Dividends and other distributions are not subject to forfeiture in accordance with the Amended and Restated Sponsor Share Letter filed with the SEC on January 26, 2020. The Earnout Shares were eligible to vest and were no longer subject to the transfer restrictions as follows:</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">399,999; 400,000; and 400,001 Earnout Shares would vest if the closing price of the Company’s common stock on the principal exchange on which the securities are listed or quoted have been at or about $12.00; $13.50; and $15.00 per share, respectively, for 20 trading days (which need not be consecutive) over a thirty-trading day period at any time.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As of December 31, 2020, none of the Earnout Shares were vested. On January 20, 2021, 399,999 Earnout Shares vested and are no longer subject to transfer restrictions. On March 2, 2021, 400,000 Earnout Shares vested and are no longer subject to transfer restrictions. On March 29, 2021, 400,001 Earnout Shares vested and are no longer subject to transfer restrictions. Accordingly, as of March 29, 2021, all of the Earnout Shares have vested.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>Warrants</i></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On April 12, 2021, the Staff of the SEC issued the “Staff Statement on Accounting and Reporting Considerations for Warrants Issued by Special Purpose Acquisition Companies (“SPACs”)” (the “Staff Statement”). The Staff Statement provided new guidance for all SPAC-related companies regarding the accounting and reporting for their warrants that could result in the warrants issued by SPACs being classified as a liability measured at fair value, with non-cash fair value adjustments reported in earnings at each reporting period. The Company reviewed the accounting for both its public warrants and private warrants following the Staff Statement. The Company determined that the accounting for its public warrants as equity was consistent with the Staff Statement. The Company determined that its private warrants should be accounted for as liabilities but that the related accounting errors during the year ended December 31, 2020 were not material to the required financial statements and disclosures included in its annual report on Form 10-K filed on March 5, 2021. In the three months ended March 31, 2021, the Company began accounting for the private warrants correctly, as disclosed in its quarterly report on Form 10-Q filed on May 6, 2021.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As of June 30, 2021, there were a total of 0.01 million private warrants outstanding and 4.2 million public warrants outstanding. As part of its initial public offering (“IPO”), ChaSerg issued 22.0 million units including one share of common stock and one-half of one redeemable warrant. Simultaneously with its IPO, ChaSerg issued 0.6 million private placement units to its sponsor underwriter, each consisting of one common share and one-half of one redeemable warrant. ChaSerg issued 0.1 million units as a result of the conversion of a working capital sponsor loan consisting of one common share and one-half of one redeemable warrant. </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Each whole warrant entitles the holder to purchase one share of common stock at a price of $11.50. Warrants may only be exercised for a whole number of shares for common stock. No fractional shares will be issued upon exercise of the warrants. Each warrant is currently exercisable and will expire March 5, 2025 (five years after the completion of the Business Combination), or earlier upon redemption or liquidation.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company may call the warrants for redemption at a price of $0.01 per warrant upon a minimum 30 days’ prior written notice of redemption, if and only if, the reported last sale price of the Company’s common stock equals or exceeds $18.00 per share for any 20 trading days within a 30-trading day period ending three business days before the Company sends the notice of redemption to the warrant holders; and if and only if, there is a current registration statement in effect with respect to the shares of common stock underlying such warrants.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify">On February 17, 2021, the Company and Riverview Group LLC, an affiliate of Millennium Management LLC, a holder of 6.4 million of the outstanding publicly traded warrants (the “Public Warrants”) entered into a Warrant Exchange Agreement (the “Exchange Agreement”). Pursuant to the Exchange Agreement, the holder exchanged each of its public warrants for 0.3480 shares of the Company’s common stock, i.e., 2.2 million shares. During the three months ended June 30, 2021, the Company entered into agreements with investors resulting in exchange of 0.8 million of its private warrants for 0.3 million shares of the Company's common stock.</p> 110.0 50.8 54.7 As of December 31, 2019 GDI had 1.0 million shares of no par value shares of preferred stock outstanding convertible on a 1:1basis with GDI’s common stock. At the Closing, the preferred stock outstanding was converted into common stock of the Company, par value $0.0001 per share. Founders and underwriter shares subject to earnout provisions At the Closing, the Company had 1.2 million shares of common stock issued and outstanding subject to earnout provisions (the “Earnout Shares”). The Earnout Shares were subject to transfer restrictions and the owners of the Earnout Shares could not sell, transfer, or otherwise dispose of their respective shares until the respective earnout provisions were achieved as described further below. The Earnout Shares have full ownership rights including the right to vote and receive dividends and other distributions thereon. Dividends and other distributions are not subject to forfeiture in accordance with the Amended and Restated Sponsor Share Letter filed with the SEC on January 26, 2020. The Earnout Shares were eligible to vest and were no longer subject to the transfer restrictions as follows: 399,999; 400,000; and 400,001 Earnout Shares would vest if the closing price of the Company’s common stock on the principal exchange on which the securities are listed or quoted have been at or about $12.00; $13.50; and $15.00 per share, respectively, for 20 trading days (which need not be consecutive) over a thirty-trading day period at any time. As of December 31, 2020, none of the Earnout Shares were vested. On January 20, 2021, 399,999 Earnout Shares vested and are no longer subject to transfer restrictions. On March 2, 2021, 400,000 Earnout Shares vested and are no longer subject to transfer restrictions. On March 29, 2021, 400,001 Earnout Shares vested and are no longer subject to transfer restrictions. Accordingly, as of March 29, 2021, all of the Earnout Shares have vested. Warrants On April 12, 2021, the Staff of the SEC issued the “Staff Statement on Accounting and Reporting Considerations for Warrants Issued by Special Purpose Acquisition Companies (“SPACs”)” (the “Staff Statement”). The Staff Statement provided new guidance for all SPAC-related companies regarding the accounting and reporting for their warrants that could result in the warrants issued by SPACs being classified as a liability measured at fair value, with non-cash fair value adjustments reported in earnings at each reporting period. The Company reviewed the accounting for both its public warrants and private warrants following the Staff Statement. The Company determined that the accounting for its public warrants as equity was consistent with the Staff Statement. The Company determined that its private warrants should be accounted for as liabilities but that the related accounting errors during the year ended December 31, 2020 were not material to the required financial statements and disclosures included in its annual report on Form 10-K filed on March 5, 2021. In the three months ended March 31, 2021, the Company began accounting for the private warrants correctly, as disclosed in its quarterly report on Form 10-Q filed on May 6, 2021. As of June 30, 2021, there were a total of 0.01 million private warrants outstanding and 4.2 million public warrants outstanding. As part of its initial public offering (“IPO”), ChaSerg issued 22.0 million units including one share of common stock and one-half of one redeemable warrant. Simultaneously with its IPO, ChaSerg issued 0.6 million private placement units to its sponsor underwriter, each consisting of one common share and one-half of one redeemable warrant. ChaSerg issued 0.1 million units as a result of the conversion of a working capital sponsor loan consisting of one common share and one-half of one redeemable warrant.  Each whole warrant entitles the holder to purchase one share of common stock at a price of $11.50. Warrants may only be exercised for a whole number of shares for common stock. No fractional shares will be issued upon exercise of the warrants. Each warrant is currently exercisable and will expire March 5, 2025 (five years after the completion of the Business Combination), or earlier upon redemption or liquidation. The Company may call the warrants for redemption at a price of $0.01 per warrant upon a minimum 30 days’ prior written notice of redemption, if and only if, the reported last sale price of the Company’s common stock equals or exceeds $18.00 per share for any 20 trading days within a 30-trading day period ending three business days before the Company sends the notice of redemption to the warrant holders; and if and only if, there is a current registration statement in effect with respect to the shares of common stock underlying such warrants. On February 17, 2021, the Company and Riverview Group LLC, an affiliate of Millennium Management LLC, a holder of 6.4 million of the outstanding publicly traded warrants (the “Public Warrants”) entered into a Warrant Exchange Agreement (the “Exchange Agreement”). Pursuant to the Exchange Agreement, the holder exchanged each of its public warrants for 0.3480 shares of the Company’s common stock, i.e. 1.0 0.0001 At the Closing, the Company had 1.2 million shares of common stock issued and outstanding subject to earnout provisions (the “Earnout Shares”). The Earnout Shares were subject to transfer restrictions and the owners of the Earnout Shares could not sell, transfer, or otherwise dispose of their respective shares until the respective earnout provisions were achieved as described further below. The Earnout Shares have full ownership rights including the right to vote and receive dividends and other distributions thereon. Dividends and other distributions are not subject to forfeiture in accordance with the Amended and Restated Sponsor Share Letter filed with the SEC on January 26, 2020. The Earnout Shares were eligible to vest and were no longer subject to the transfer restrictions as follows: 399,999; 400,000; and 400,001 Earnout Shares would vest if the closing price of the Company’s common stock on the principal exchange on which the securities are listed or quoted have been at or about $12.00; $13.50; and $15.00 per share, respectively, for 20 trading days (which need not be consecutive) over a thirty-trading day period at any time. As of December 31, 2020, none of the Earnout Shares were vested. On January 20, 2021, 399,999 Earnout Shares vested and are no longer subject to transfer restrictions. On March 2, 2021, 400,000 Earnout Shares vested and are no longer subject to transfer restrictions. On March 29, 2021, 400,001 Earnout Shares vested and are no longer subject to transfer restrictions. Accordingly, as of March 29, 2021, all of the Earnout Shares have vested. Warrants On April 12, 2021, the Staff of the SEC issued the “Staff Statement on Accounting and Reporting Considerations for Warrants Issued by Special Purpose Acquisition Companies (“SPACs”)” (the “Staff Statement”). The Staff Statement provided new guidance for all SPAC-related companies regarding the accounting and reporting for their warrants that could result in the warrants issued by SPACs being classified as a liability measured at fair value, with non-cash fair value adjustments reported in earnings at each reporting period. The Company reviewed the accounting for both its public warrants and private warrants following the Staff Statement. The Company determined that the accounting for its public warrants as equity was consistent with the Staff Statement. The Company determined that its private warrants should be accounted for as liabilities but that the related accounting errors during the year ended December 31, 2020 were not material to the required financial statements and disclosures included in its annual report on Form 10-K filed on March 5, 2021. In the three months ended March 31, 2021, the Company began accounting for the private warrants correctly, as disclosed in its quarterly report on Form 10-Q filed on May 6, 2021. As of June 30, 2021, there were a total of 0.01 million private warrants outstanding and 4.2 million public warrants outstanding. As part of its initial public offering (“IPO”), ChaSerg issued 22.0 million units including one share of common stock and one-half of one redeemable warrant. Simultaneously with its IPO, ChaSerg issued 0.6 million private placement units to its sponsor underwriter, each consisting of one common share and one-half of one redeemable warrant. ChaSerg issued 0.1 million units as a result of the conversion of a working capital sponsor loan consisting of one common share and one-half of one redeemable warrant.  Each whole warrant entitles the holder to purchase one share of common stock at a price of $11.50. Warrants may only be exercised for a whole number of shares for common stock. No fractional shares will be issued upon exercise of the warrants. Each warrant is currently exercisable and will expire March 5, 2025 (five years after the completion of the Business Combination), or earlier upon redemption or liquidation. The Company may call the warrants for redemption at a price of $0.01 per warrant upon a minimum 30 days’ prior written notice of redemption, if and only if, the reported last sale price of the Company’s common stock equals or exceeds $18.00 per share for any 20 trading days within a 30-trading day period ending three business days before the Company sends the notice of redemption to the warrant holders; and if and only if, there is a current registration statement in effect with respect to the shares of common stock underlying such warrants. On February 17, 2021, the Company and Riverview Group LLC, an affiliate of Millennium Management LLC, a holder of 6.4 million of the outstanding publicly traded warrants (the “Public Warrants”) entered into a Warrant Exchange Agreement (the “Exchange Agreement”). Pursuant to the Exchange Agreement, the holder exchanged each of its public warrants for 0.3480 shares of the Company’s common stock, i.e. The Earnout Shares were subject to transfer restrictions and the owners of the Earnout Shares could not sell, transfer, or otherwise dispose of their respective shares until the respective earnout provisions were achieved as described further below. 399,999; 400,000; and 400,001 Earnout Shares would vest if the closing price of the Company’s common stock on the principal exchange on which the securities are listed or quoted have been at or about $12.00; $13.50; and $15.00 per share, respectively, for 20 trading days (which need not be consecutive) over a thirty-trading day period at any time.  399999 400000 400001 10000.00 4200000 22000000.0 600000 100000 11.50 Each warrant is currently exercisable and will expire March 5, 2025 (five years after the completion of the Business Combination), or earlier upon redemption or liquidation. 0.01 18.00 6400000 0.3480 2200000 800000 300000 <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note 10 — Stock-based compensation</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>2018 Stock Plan</i></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">GDI had previously adopted a stock plan in 2018 (the “2018 Stock Plan”). Under the terms of the 2018 Stock Plan, certain option grants were accelerated in full or by an additional 12 months as a result of the Business Combination. Therefore, on the date of Closing, the acceleration of vesting for 2.6 million stock options resulted in a stock compensation charge and corresponding increase to additional paid-in capital of $2.5 million. Additionally, at Closing, a percentage of outstanding vested GDI stock options were settled in exchange for cash consideration, pursuant to the terms of the Merger Agreement.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The remaining portion of outstanding vested options totaling 1.7 million and all unvested options totaling 0.1 million were automatically assumed and converted into options to purchase the Company’s common stock as of the Closing. The number of each participant’s assumed options and the exercise price were adjusted as provided in the Merger Agreement. There was no incremental compensation cost attributable to the incremental fair value of the modified options compared to the original options on the modification date. The assumed stock options will continue to be subject to the same terms and conditions, including vesting schedule terms, in accordance with the 2018 Stock Plan. Exercise prices for 2018 Stock Plan options range between $3.51 and $3.54 per share.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The following table sets forth the activity for the 2018 Stock Plan, including the conversion of the vested and unvested options, for the six months ended June 30, 2021:</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"> <tr style="vertical-align: bottom"> <td style="text-align: center"> </td><td style="font-weight: bold; padding-bottom: 1.5pt"> </td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid">Options<br/> Outstanding, <br/> in thousands</td><td style="padding-bottom: 1.5pt; font-weight: bold"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 88%">Balance at December 31, 2019</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left"> </td><td style="width: 9%; text-align: right">2,734</td><td style="width: 1%; text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left">Cashed out</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(829</td><td style="text-align: left">)</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="padding-bottom: 1.5pt">Forfeited</td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">(19</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left">Balance at March 31, 2020 (prior to exchange ratio conversion)</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">1,887</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Converted vested balance</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">4,314</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left; padding-bottom: 1.5pt">Converted unvested balance</td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">364</td><td style="padding-bottom: 1.5pt; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Balance at March 6, 2020 (post to exchange ratio conversion)</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">4,678</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left">Exercised in 2020</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(28</td><td style="text-align: left">)</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left; padding-bottom: 1.5pt">Forfeited/Cancelled in 2020</td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">(50</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr> <tr style="vertical-align: bottom; "> <td>Options Outstanding as of December 31, 2020</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">4,600</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td>Exercised in quarter ended March 31, 2021</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(37</td><td style="text-align: left">)</td></tr> <tr style="vertical-align: bottom; "> <td style="padding-bottom: 1.5pt">Forfeited/Cancelled in quarter ended March 31, 2021</td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">(11</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td>Options Outstanding as of March 31, 2021</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">4,552</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td>Exercised in quarter ended June 30, 2021</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(257</td><td style="text-align: left">)</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="padding-bottom: 1.5pt">Forfeited/Cancelled in quarter ended June 30, 2021</td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">(3</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr> <tr style="vertical-align: bottom; "> <td>Options Outstanding as of June 30, 2021</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">4,291</td><td style="text-align: left"> </td></tr> </table><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"> </p><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">As of June 30, 2021, since the conversion, a total of 0.08 million shares were forfeited, and 0.32 million shares were exercised for the total proceeds of $0.4 million in cash and 0.13 million shares net withheld for exercise price and taxes. The number of shares exercisable as of June 30, 2021 was 4.1 million with the average exercise price $3.54 per share. The intrinsic value of the 4.3 million total outstanding shares of 2018 Plan Options as of June 30, 2021, was $49.3 million with the remaining contractual term of 7.50 years. The unrecognized compensation expenses related to 2018 Plan options as of June 30, 2021 was $0.2 million, net of forfeitures, to be expensed on a straight-line basis over 2.19 years.</p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>2020 Equity Incentive Plan</i></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Effective March 5, 2020, our board of directors approved an equity incentive plan (the “2020 Plan”). The 2020 Plan permits the Company to grant a maximum aggregate amount of 16.3 million Incentive Stock Options, Non-Statutory Stock Options (“NSOs”), Restricted Stock, Restricted Stock Units (“RSUs”), Stock Appreciation Rights, Performance Units (“PSUs”), and Performance Shares (“PSAs”) (collectively, the “Awards”) to employees, directors, and consultants of the Company. Our board of directors or any committee appointed by the board has the authority to grant Awards. During the quarter ended June 30, 2021, our board of directors granted 0.11 million NSOs and 0.02 million target PSUs at a maximum payout at 300%. The following table represent the number of shares available for grants from 2020 Equity Incentive Plan (in thousands):</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"> <tr style="vertical-align: bottom"> <td><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td colspan="2" style="text-align: center; border-bottom: Black 1.5pt solid"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif"><b>Available</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif"><b>for grant</b></span></p></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 88%"><span style="font-family: Times New Roman, Times, Serif">Available for grant, December 31, 2020</span></td><td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="width: 9%; text-align: right"><span style="font-family: Times New Roman, Times, Serif">9,881</span></td><td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">Options granted</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">(231</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">)</span></td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">RSU granted</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">(7</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">)</span></td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">PSU granted (100% target)</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">(566</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">)</span></td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">Options forfeited</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">607</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif">Traded for taxes (returned to the pool)</span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif">1,311</span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td><span style="font-family: Times New Roman, Times, Serif">Available for grant, June 30, 2021</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">10,996</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> </table><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"/><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>Stock Options</i></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The total of 0.11 million NSOs shares granted during the quarter ended June 30, 2021 from 2020 Equity Incentive Plan are subject to the following time-based vesting conditions: one-fourth of the NSOs will vest on one year after the grant date; and thereafter one-sixteenth of the NSOs will vest each subsequent three-month anniversary. The NSOs have a ten-year exercise term, and once the NSOs are vested, the recipients have the right to purchase the Company’s stock at a fixed exercise price.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The grant date fair value of each NSO was estimated on the date of grant using the Black-Scholes-Merton option pricing model. The key assumptions for 2021 grants are provided in the following table.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif"> </span></p><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"> <tr style="vertical-align: bottom"> <td><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="font-weight: bold; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif">2021</span></td><td style="padding-bottom: 1.5pt; font-weight: bold"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 88%; text-align: left"><span style="font-family: Times New Roman, Times, Serif">Dividend yield</span></td><td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="width: 9%; text-align: right"><span style="font-family: Times New Roman, Times, Serif">0</span></td><td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif">%</span></td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">Expected volatility</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">40</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">%</span></td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">Risk-free interest rate</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">0.96</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">%</span></td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">Expected term in years</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">6.11</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">Grant date fair value of common stock</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">$</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">14.98</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> </table><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company used a zero percent dividend yield assumption for all Black-Scholes-Merton stock option-pricing calculations. Since the Company’s shares were not publicly traded prior to the Closing and its shares were rarely traded privately, expected volatility is estimated based on the average historical volatility of similar entities with publicly traded shares. The risk-free rate for the expected term of the options is based on the U.S. Treasury yield curve at the date of grant. Expected term is estimated using the simplified method, which takes into account vesting and contractual term. The simplified method is being used to calculate expected term instead of historical experience due to a lack of relevant historical data resulting from changes in option vesting schedules and changes in the pool of employees receiving option grants. The following table summarizes option activity for the six months ended June 30, 2021 (shares in thousands):</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"> <tr style="vertical-align: bottom"> <td><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="font-weight: bold; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif">Shares</span></td><td style="padding-bottom: 1.5pt; font-weight: bold"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="font-weight: bold; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Price <sup>(1)</sup></b></span></td><td style="padding-bottom: 1.5pt; font-weight: bold"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="font-weight: bold; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Term <sup>(2)</sup></b></span></td><td style="padding-bottom: 1.5pt; font-weight: bold"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 64%"><span style="font-family: Times New Roman, Times, Serif">Options outstanding as of December 31, 2020 (2020 Plan)</span></td><td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="width: 9%; text-align: right"><span style="font-family: Times New Roman, Times, Serif">1,942</span></td><td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif">$</span></td><td style="width: 9%; text-align: right"><span style="font-family: Times New Roman, Times, Serif">8.38</span></td><td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="width: 9%; text-align: right"><span style="font-family: Times New Roman, Times, Serif">9.22</span></td><td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">Options granted</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">231</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">$</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">14.98</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">Options exercised</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">(10</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">)</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">$</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">8.13</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif">Options forfeited</span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif">(284</span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif">)</span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif">$</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif">8.55</span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td><span style="font-family: Times New Roman, Times, Serif">Options outstanding as of June 30, 2021 (2020 Plan)</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">1,879</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">$</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">9.17</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">8.76</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> </table><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif"> </span></p><table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; width: 100%"><tr style="vertical-align: top; text-align: justify"> <td style="width: 0.25in; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>(1)</i></span></td><td style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Represents the weighted average exercise price</span></td> </tr></table><p style="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif; text-align: justify"/><table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; width: 100%"><tr style="vertical-align: top; text-align: justify"> <td style="width: 0.25in; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>(2)</i></span></td><td style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Represents weighted average remaining contractual term</span></td> </tr></table><p style="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">0.48 million shares of 2020 NSO grants were vested and outstanding as of June 30, 2021. The aggregated fair value of 0.23 million NSOs granted during the six months ending June 30, 2021 was $1.4 million or $5.95 per share. The intrinsic value of the 1.9 million total outstanding shares of 2020 Plan Options as of June 30, 2021, was $11.1 million. The total unrecognized compensation expenses related to 2020 Stock Plan options as of June 30, 2021 was $4.9 million to be expensed on a straight-line basis over the remaining 2.99 years.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>Restricted Stock Units</i></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The RSUs granted to employees generally are subject to the following time-based vesting conditions: one-fourth vest on the first anniversary of the grant; and thereafter one-sixteenth of the RSUs will vest each subsequent three-month anniversary. RSUs granted do not participate in earnings, dividends, and do not have voting rights until vested. RSUs granted to the Board in lieu of the quarterly payments vest immediately.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">For the quarter ended June 30, 2021, approximately 0.15 million shares were issued upon vesting of the RSUs to the executives and 0.14 million shares were withheld to cover $2.2 million of employees’ tax obligations. 0.3 million unvested RSUs were forfeited as two members of the executive team resigned in June of 2021. The following table summarizes RSU activity for the six months ended June 30, 2021(in thousands):</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"> <tr style="vertical-align: bottom"> <td><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="font-weight: bold; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif">Shares</span></td><td style="padding-bottom: 1.5pt; font-weight: bold"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 88%"><span style="font-family: Times New Roman, Times, Serif">RSUs outstanding as of December 31, 2020 (2020 Plan)</span></td><td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="width: 9%; text-align: right"><span style="font-family: Times New Roman, Times, Serif">2,996</span></td><td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">RSUs granted</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">7</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">RSUs released</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">(912</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">)</span></td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif">RSU forfeited</span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif">(291</span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif">)</span></td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td><span style="font-family: Times New Roman, Times, Serif">RSUs outstanding as of June 30, 2021</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">1,799</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> </table><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The total unrecognized compensation expenses related to 2020 Stock Plan RSUs as of June 30, 2021 was $14.2 million to be expensed on a straight-line basis over 2.7 years.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>Performance Stock Units</i></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On March 2, 2021, the Company granted 0.5 million Performance Stock target shares under the 2020 Stock Plan with the maximum payout capped at 300%. The performance goals for these grants consist of:</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 0; width: 100%"><tr style="vertical-align: top; text-align: justify"> <td style="width: 0.25in"/><td style="width: 0.25in; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>1)</i></span></td><td style="text-align: justify"><p style="margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif">Year-over-year growth in non-retail revenue for the Performance Period, which is Fiscal Year 2021, expressed as a percentage increase over the fiscal year 2020 non-retail revenue (“Revenue Growth”), and</span></p></td> </tr></table><p style="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><table cellpadding="0" cellspacing="0" style="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 0; width: 100%"><tr style="vertical-align: top; text-align: justify"> <td style="width: 0.25in"/><td style="width: 0.25in; text-align: left"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>2)</i></span></td><td style="text-align: justify"><p style="margin: 0pt 0"><span style="font-family: Times New Roman, Times, Serif">Contribution Margin for the Performance Period as a percentage of Non-Retail revenue for the Performance Period.</span></p></td> </tr></table><p style="margin-top: 0pt; margin-bottom: 0pt; font: 10pt Times New Roman, Times, Serif; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Fifty percent (50)% of the target number of performance shares granted will vest (if at all) based on the extent of achievement of Revenue Growth for the Performance Period and the remaining fifty percent (50)% of the target number of performance shares granted will vest (if at all) based on the extent of achievement of the Contribution Margin.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Additionally, 0.02 million shares of PSU were granted on June 16th, 2021, per a consulting agreement with a former executive with the performance goals being consistent with those described above.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Performance shares will be certified and vested no later than March 1, 2022 with the payout shortly after. As of June 30, 2021, the Company assessed the vesting of the Performance Share Units as probable and the payout is estimated at 225% of the target goal. Stock-based compensation expense related to Performance Stock Units granted in 2021 was $6.0 million for the six months ended June 30, 2021. The unrecognized expense for PSUs as of June 30, 2021, was $12.9 million.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>Stock-Based Compensation Expense</i></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company classifies awards issued under the stock-based compensation plans as equity. Total compensation expense for the three months ended June 30, 2021 and 2020 was $6.7 million and $3.7 million respectively. Employee stock-based compensation recognized was as follows (in thousands):</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"> <tr style="vertical-align: bottom"> <td><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td colspan="6" style="text-align: center; border-bottom: Black 1.5pt solid"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif"><b>Three months ended</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif"><b>June 30,</b></span></p></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td colspan="6" style="text-align: center; border-bottom: Black 1.5pt solid"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif"><b>Six months ended</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif"><b>June 30,</b></span></p></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom"> <td><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="font-weight: bold; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif">2021</span></td><td style="padding-bottom: 1.5pt; font-weight: bold"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="font-weight: bold; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif">2020</span></td><td style="padding-bottom: 1.5pt; font-weight: bold"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="font-weight: bold; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif">2021</span></td><td style="padding-bottom: 1.5pt; font-weight: bold"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="font-weight: bold; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif">2020</span></td><td style="padding-bottom: 1.5pt; font-weight: bold"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 52%"><span style="font-family: Times New Roman, Times, Serif">Cost of revenue</span></td><td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif">$</span></td><td style="width: 9%; text-align: right"><span style="font-family: Times New Roman, Times, Serif">149</span></td><td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif">$</span></td><td style="width: 9%; text-align: right"><span style="font-family: Times New Roman, Times, Serif">60</span></td><td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif">$</span></td><td style="width: 9%; text-align: right"><span style="font-family: Times New Roman, Times, Serif">260</span></td><td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif">$</span></td><td style="width: 9%; text-align: right"><span style="font-family: Times New Roman, Times, Serif">675</span></td><td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">Engineering, research, and development</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">617</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">460</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">1,171</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">1,056</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">Sales and marketing</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">453</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">602</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">1,244</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">1,737</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif">General and administrative</span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif">5,456</span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif">2,532</span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif">9,671</span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif">4,990</span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif">Total stock-based compensation</span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif">$</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif">6,675</span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif">$</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif">3,654</span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif">$</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif">12,346</span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif">$</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif">8,458</span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> </table><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">As of June 30, 2021, there was approximately $32.2 million of unrecognized stock-based compensation expense.</span></p> 2.6 2500000 1700000 100000 3.51 3.54 <table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"> <tr style="vertical-align: bottom"> <td style="text-align: center"> </td><td style="font-weight: bold; padding-bottom: 1.5pt"> </td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid">Options<br/> Outstanding, <br/> in thousands</td><td style="padding-bottom: 1.5pt; font-weight: bold"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 88%">Balance at December 31, 2019</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left"> </td><td style="width: 9%; text-align: right">2,734</td><td style="width: 1%; text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left">Cashed out</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(829</td><td style="text-align: left">)</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="padding-bottom: 1.5pt">Forfeited</td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">(19</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left">Balance at March 31, 2020 (prior to exchange ratio conversion)</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">1,887</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Converted vested balance</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">4,314</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left; padding-bottom: 1.5pt">Converted unvested balance</td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">364</td><td style="padding-bottom: 1.5pt; text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left">Balance at March 6, 2020 (post to exchange ratio conversion)</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">4,678</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left">Exercised in 2020</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(28</td><td style="text-align: left">)</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left; padding-bottom: 1.5pt">Forfeited/Cancelled in 2020</td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">(50</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr> <tr style="vertical-align: bottom; "> <td>Options Outstanding as of December 31, 2020</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">4,600</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td>Exercised in quarter ended March 31, 2021</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(37</td><td style="text-align: left">)</td></tr> <tr style="vertical-align: bottom; "> <td style="padding-bottom: 1.5pt">Forfeited/Cancelled in quarter ended March 31, 2021</td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">(11</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td>Options Outstanding as of March 31, 2021</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">4,552</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td>Exercised in quarter ended June 30, 2021</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">(257</td><td style="text-align: left">)</td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="padding-bottom: 1.5pt">Forfeited/Cancelled in quarter ended June 30, 2021</td><td style="padding-bottom: 1.5pt"> </td> <td style="border-bottom: Black 1.5pt solid; text-align: left"> </td><td style="border-bottom: Black 1.5pt solid; text-align: right">(3</td><td style="padding-bottom: 1.5pt; text-align: left">)</td></tr> <tr style="vertical-align: bottom; "> <td>Options Outstanding as of June 30, 2021</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">4,291</td><td style="text-align: left"> </td></tr> </table><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"> </p> 2734 -829 19 1887 4314 364 4678 28 50 4600 -37 11 4552 -257 3 4291 80000.00 320000 400000 130000 4100000 3.54 4300000 49300000 P7Y6M 200000 P2Y2M8D 16300000 110000 20000.00 3 <table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"> <tr style="vertical-align: bottom"> <td><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td colspan="2" style="text-align: center; border-bottom: Black 1.5pt solid"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif"><b>Available</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif"><b>for grant</b></span></p></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 88%"><span style="font-family: Times New Roman, Times, Serif">Available for grant, December 31, 2020</span></td><td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="width: 9%; text-align: right"><span style="font-family: Times New Roman, Times, Serif">9,881</span></td><td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">Options granted</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">(231</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">)</span></td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">RSU granted</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">(7</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">)</span></td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">PSU granted (100% target)</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">(566</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">)</span></td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">Options forfeited</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">607</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif">Traded for taxes (returned to the pool)</span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif">1,311</span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td><span style="font-family: Times New Roman, Times, Serif">Available for grant, June 30, 2021</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">10,996</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> </table><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"/> 9881 -231 -7 -566 607 1311 10996 110000 <table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"> <tr style="vertical-align: bottom"> <td><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="font-weight: bold; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif">2021</span></td><td style="padding-bottom: 1.5pt; font-weight: bold"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 88%; text-align: left"><span style="font-family: Times New Roman, Times, Serif">Dividend yield</span></td><td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="width: 9%; text-align: right"><span style="font-family: Times New Roman, Times, Serif">0</span></td><td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif">%</span></td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">Expected volatility</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">40</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">%</span></td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">Risk-free interest rate</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">0.96</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">%</span></td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">Expected term in years</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">6.11</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">Grant date fair value of common stock</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">$</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">14.98</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> </table><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif"> </span></p> 0 0.40 0.0096 P6Y1M9D 14.98 <table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"> <tr style="vertical-align: bottom"> <td><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="font-weight: bold; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif">Shares</span></td><td style="padding-bottom: 1.5pt; font-weight: bold"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="font-weight: bold; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Price <sup>(1)</sup></b></span></td><td style="padding-bottom: 1.5pt; font-weight: bold"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="font-weight: bold; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Term <sup>(2)</sup></b></span></td><td style="padding-bottom: 1.5pt; font-weight: bold"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 64%"><span style="font-family: Times New Roman, Times, Serif">Options outstanding as of December 31, 2020 (2020 Plan)</span></td><td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="width: 9%; text-align: right"><span style="font-family: Times New Roman, Times, Serif">1,942</span></td><td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif">$</span></td><td style="width: 9%; text-align: right"><span style="font-family: Times New Roman, Times, Serif">8.38</span></td><td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="width: 9%; text-align: right"><span style="font-family: Times New Roman, Times, Serif">9.22</span></td><td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">Options granted</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">231</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">$</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">14.98</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">Options exercised</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">(10</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">)</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">$</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">8.13</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif">Options forfeited</span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif">(284</span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif">)</span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif">$</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif">8.55</span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td><span style="font-family: Times New Roman, Times, Serif">Options outstanding as of June 30, 2021 (2020 Plan)</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">1,879</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">$</span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">9.17</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">8.76</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> </table><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif"> </span></p> 1942 8.38 P9Y2M19D 231 14.98 10 8.13 284 8.55 1879 9.17 P8Y9M3D 480000 230000 1400000 5.95 1900000 11100000 4900000 P2Y11M26D 150000 140000 2200000 300000 <table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"> <tr style="vertical-align: bottom"> <td><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="font-weight: bold; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif">Shares</span></td><td style="padding-bottom: 1.5pt; font-weight: bold"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 88%"><span style="font-family: Times New Roman, Times, Serif">RSUs outstanding as of December 31, 2020 (2020 Plan)</span></td><td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="width: 9%; text-align: right"><span style="font-family: Times New Roman, Times, Serif">2,996</span></td><td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">RSUs granted</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">7</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">RSUs released</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">(912</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">)</span></td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif">RSU forfeited</span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif">(291</span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif">)</span></td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td><span style="font-family: Times New Roman, Times, Serif">RSUs outstanding as of June 30, 2021</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">1,799</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> </table><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p> 2996 7 -912 -291 1799 14200000 P2Y8M12D 0.5 3 Fifty percent (50)% of the target number of performance shares granted will vest (if at all) based on the extent of achievement of Revenue Growth for the Performance Period and the remaining fifty percent (50)% of the target number of performance shares granted will vest (if at all) based on the extent of achievement of the Contribution Margin.  20000.00 2.25 6000000.0 12900000 The Company classifies awards issued under the stock-based compensation plans as equity. Total compensation expense for the three months ended June 30, 2021 and 2020 was $6.7 million and $3.7 million respectively. <table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"> <tr style="vertical-align: bottom"> <td><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td colspan="6" style="text-align: center; border-bottom: Black 1.5pt solid"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif"><b>Three months ended</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif"><b>June 30,</b></span></p></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td colspan="6" style="text-align: center; border-bottom: Black 1.5pt solid"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif"><b>Six months ended</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif"><b>June 30,</b></span></p></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom"> <td><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="font-weight: bold; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif">2021</span></td><td style="padding-bottom: 1.5pt; font-weight: bold"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="font-weight: bold; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif">2020</span></td><td style="padding-bottom: 1.5pt; font-weight: bold"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="font-weight: bold; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif">2021</span></td><td style="padding-bottom: 1.5pt; font-weight: bold"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="font-weight: bold; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif">2020</span></td><td style="padding-bottom: 1.5pt; font-weight: bold"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 52%"><span style="font-family: Times New Roman, Times, Serif">Cost of revenue</span></td><td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif">$</span></td><td style="width: 9%; text-align: right"><span style="font-family: Times New Roman, Times, Serif">149</span></td><td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif">$</span></td><td style="width: 9%; text-align: right"><span style="font-family: Times New Roman, Times, Serif">60</span></td><td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif">$</span></td><td style="width: 9%; text-align: right"><span style="font-family: Times New Roman, Times, Serif">260</span></td><td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif">$</span></td><td style="width: 9%; text-align: right"><span style="font-family: Times New Roman, Times, Serif">675</span></td><td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">Engineering, research, and development</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">617</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">460</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">1,171</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">1,056</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif">Sales and marketing</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">453</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">602</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">1,244</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">1,737</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif">General and administrative</span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif">5,456</span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif">2,532</span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif">9,671</span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif">4,990</span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: left; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif">Total stock-based compensation</span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif">$</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif">6,675</span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif">$</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif">3,654</span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif">$</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif">12,346</span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif">$</span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif">8,458</span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> </table><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif"> </span></p> 149000 60000 260000 675000 617000 460000 1171000 1056000 453000 602000 1244000 1737000 5456000 2532000 9671000 4990000 6675000 3654000 12346000 8458000 32200000 <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note 11 — Earnings per share</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company computed earnings per share (“EPS”) in conformity with the two-class method required for participating securities. Undistributed earnings allocated to participating securities are subtracted from net income in determining net income attributable to common stockholders. The Company allocated income between its common and preferred shareholders only for the periods the preferred stock was outstanding, which was January 1, 2020 to March 4, 2020. There was no preferred stock outstanding from March 5, 2020 to June 30, 2021. As the Company was in a net loss position for the periods between January 1, 2020 to March 4, 2020 and March 5, 2020 to June 30, 2021, the net loss was allocated entirely to common shareholders.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">All participating securities are excluded from basic weighted-average number of common shares outstanding. Diluted EPS is computed by dividing net income available to common shareholders by the weighted-average number of shares of common stock outstanding during the period increased to include the number of additional shares of common stock that would have been outstanding if the potentially dilutive securities had been issued. Potentially dilutive securities include outstanding stock options, restricted stock units, performance stock units, and convertible preferred securities. The dilutive effect of potentially dilutive securities is reflected in diluted EPS in order of dilution and by application of the treasury stock method and the if-converted method for stock-based compensation and convertible preferred securities, respectively.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The following table sets forth the computation of basic and diluted EPS of common stock as follows (in thousands except per share data):</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"> <tr style="vertical-align: bottom"> <td> </td><td style="padding-bottom: 1.5pt"> </td> <td colspan="6" style="text-align: center; border-bottom: Black 1.5pt solid"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif"><b>Three months ended</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif"><b>June 30,</b></span></p></td><td style="padding-bottom: 1.5pt"> </td><td style="padding-bottom: 1.5pt"> </td> <td colspan="6" style="text-align: center; border-bottom: Black 1.5pt solid"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif"><b>Six months ended</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif"><b>June 30,</b></span></p></td><td style="padding-bottom: 1.5pt"> </td></tr> <tr style="vertical-align: bottom"> <td> </td><td style="font-weight: bold; padding-bottom: 1.5pt"> </td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold"> </td><td style="font-weight: bold; padding-bottom: 1.5pt"> </td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid">2020</td><td style="padding-bottom: 1.5pt; font-weight: bold"> </td><td style="font-weight: bold; padding-bottom: 1.5pt"> </td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold"> </td><td style="font-weight: bold; padding-bottom: 1.5pt"> </td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid">2020</td><td style="padding-bottom: 1.5pt; font-weight: bold"> </td></tr> <tr style="vertical-align: bottom"> <td style="font-weight: bold; text-align: left">Numerator for basic and diluted loss per share</td><td> </td> <td colspan="2" style="text-align: right"> </td><td> </td><td> </td> <td colspan="2" style="text-align: right"> </td><td> </td><td> </td> <td colspan="2" style="text-align: right"> </td><td> </td><td> </td> <td colspan="2" style="text-align: right"> </td><td> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 52%; text-align: left; padding-left: 0.125in">Net loss</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 9%; text-align: right">(1,483</td><td style="width: 1%; text-align: left">)</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 9%; text-align: right">(2,166</td><td style="width: 1%; text-align: left">)</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 9%; text-align: right">(3,545</td><td style="width: 1%; text-align: left">)</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 9%; text-align: right">(6,762</td><td style="width: 1%; text-align: left">)</td></tr> <tr style="vertical-align: bottom; "> <td> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-weight: bold; text-align: left">Denominator for basic and diluted loss per share</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left">Weighted-average shares outstanding – basic and diluted</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">54,431</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">49,626</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">53,044</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">39,731</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td style="font-weight: bold">Net loss per share</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="padding-left: 0.125in">Basic</td><td> </td> <td style="text-align: left">$</td><td style="text-align: right">(0.03</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left">$</td><td style="text-align: right">(0.04</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left">$</td><td style="text-align: right">(0.07</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left">$</td><td style="text-align: right">(0.17</td><td style="text-align: left">)</td></tr> <tr style="vertical-align: bottom; "> <td style="padding-left: 0.125in">Diluted</td><td> </td> <td style="text-align: left">$</td><td style="text-align: right">(0.03</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left">$</td><td style="text-align: right">(0.04</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left">$</td><td style="text-align: right">(0.07</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left">$</td><td style="text-align: right">(0.17</td><td style="text-align: left">)</td></tr> </table><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"/><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The following table represents the number of share equivalents outstanding during the period that were excluded from the calculation of diluted net loss per share attributable to common stockholders because including them would have had an anti-dilutive effect.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"> <tr style="vertical-align: bottom"> <td><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td colspan="6" style="text-align: center; border-bottom: Black 1.5pt solid"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif"><b>Three months ended</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif"><b>June 30,</b></span></p></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td colspan="6" style="text-align: center; border-bottom: Black 1.5pt solid"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif"><b>Six months ended</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif"><b>June 30,</b></span></p></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom"> <td style="font-weight: bold; text-align: justify; border-bottom: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif">Potential common shares (in ‘000s)</span></td><td style="font-weight: bold; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif">2021</span></td><td style="padding-bottom: 1.5pt; font-weight: bold"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="font-weight: bold; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif">2020</span></td><td style="padding-bottom: 1.5pt; font-weight: bold"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="font-weight: bold; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif">2021</span></td><td style="padding-bottom: 1.5pt; font-weight: bold"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="font-weight: bold; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif">2020</span></td><td style="padding-bottom: 1.5pt; font-weight: bold"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 52%; text-align: justify"><span style="font-family: Times New Roman, Times, Serif">Convertible preferred stock</span></td><td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="width: 9%; text-align: right"><div style="-sec-ix-hidden: hidden-fact-114"><span style="font-family: Times New Roman, Times, Serif">—</span></div></td><td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="width: 9%; text-align: right"><div style="-sec-ix-hidden: hidden-fact-115"><span style="font-family: Times New Roman, Times, Serif">—</span></div></td><td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="width: 9%; text-align: right"><div style="-sec-ix-hidden: hidden-fact-116"><span style="font-family: Times New Roman, Times, Serif">—</span></div></td><td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="width: 9%; text-align: right"><span style="font-family: Times New Roman, Times, Serif">1,048</span></td><td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif">Stock options to purchase common stock</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">6,666</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">6,105</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">6,773</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">8,571</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif">Restricted stock units</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">2,381</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">2,934</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">3,002</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">2,934</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif">Performance stock units</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">1,274</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">1,292</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">2,726</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">1,292</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: justify; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif">Warrants to purchase common stock</span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif">4,963</span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif">11,347</span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif">11,347</span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif">11,347</span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; "> <td style="padding-left: 0.125in; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif">Total</span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif">15,284</span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif">21,678</span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif">23,848</span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif">25,192</span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> </table> <table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"> <tr style="vertical-align: bottom"> <td> </td><td style="padding-bottom: 1.5pt"> </td> <td colspan="6" style="text-align: center; border-bottom: Black 1.5pt solid"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif"><b>Three months ended</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif"><b>June 30,</b></span></p></td><td style="padding-bottom: 1.5pt"> </td><td style="padding-bottom: 1.5pt"> </td> <td colspan="6" style="text-align: center; border-bottom: Black 1.5pt solid"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif"><b>Six months ended</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif"><b>June 30,</b></span></p></td><td style="padding-bottom: 1.5pt"> </td></tr> <tr style="vertical-align: bottom"> <td> </td><td style="font-weight: bold; padding-bottom: 1.5pt"> </td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold"> </td><td style="font-weight: bold; padding-bottom: 1.5pt"> </td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid">2020</td><td style="padding-bottom: 1.5pt; font-weight: bold"> </td><td style="font-weight: bold; padding-bottom: 1.5pt"> </td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid">2021</td><td style="padding-bottom: 1.5pt; font-weight: bold"> </td><td style="font-weight: bold; padding-bottom: 1.5pt"> </td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid">2020</td><td style="padding-bottom: 1.5pt; font-weight: bold"> </td></tr> <tr style="vertical-align: bottom"> <td style="font-weight: bold; text-align: left">Numerator for basic and diluted loss per share</td><td> </td> <td colspan="2" style="text-align: right"> </td><td> </td><td> </td> <td colspan="2" style="text-align: right"> </td><td> </td><td> </td> <td colspan="2" style="text-align: right"> </td><td> </td><td> </td> <td colspan="2" style="text-align: right"> </td><td> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 52%; text-align: left; padding-left: 0.125in">Net loss</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 9%; text-align: right">(1,483</td><td style="width: 1%; text-align: left">)</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 9%; text-align: right">(2,166</td><td style="width: 1%; text-align: left">)</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 9%; text-align: right">(3,545</td><td style="width: 1%; text-align: left">)</td><td style="width: 1%"> </td> <td style="width: 1%; text-align: left">$</td><td style="width: 9%; text-align: right">(6,762</td><td style="width: 1%; text-align: left">)</td></tr> <tr style="vertical-align: bottom; "> <td> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="font-weight: bold; text-align: left">Denominator for basic and diluted loss per share</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: left">Weighted-average shares outstanding – basic and diluted</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">54,431</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">49,626</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">53,044</td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right">39,731</td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; "> <td style="font-weight: bold">Net loss per share</td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td><td> </td> <td style="text-align: left"> </td><td style="text-align: right"> </td><td style="text-align: left"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="padding-left: 0.125in">Basic</td><td> </td> <td style="text-align: left">$</td><td style="text-align: right">(0.03</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left">$</td><td style="text-align: right">(0.04</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left">$</td><td style="text-align: right">(0.07</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left">$</td><td style="text-align: right">(0.17</td><td style="text-align: left">)</td></tr> <tr style="vertical-align: bottom; "> <td style="padding-left: 0.125in">Diluted</td><td> </td> <td style="text-align: left">$</td><td style="text-align: right">(0.03</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left">$</td><td style="text-align: right">(0.04</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left">$</td><td style="text-align: right">(0.07</td><td style="text-align: left">)</td><td> </td> <td style="text-align: left">$</td><td style="text-align: right">(0.17</td><td style="text-align: left">)</td></tr> </table><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"/> -1483000 -2166000 -3545000 -6762000 54431 49626 53044 39731 -0.03 -0.04 -0.07 -0.17 -0.03 -0.04 -0.07 -0.17 <table cellpadding="0" cellspacing="0" style="border-collapse: collapse; width: 100%; font: 10pt Times New Roman, Times, Serif"> <tr style="vertical-align: bottom"> <td><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td colspan="6" style="text-align: center; border-bottom: Black 1.5pt solid"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif"><b>Three months ended</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif"><b>June 30,</b></span></p></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td colspan="6" style="text-align: center; border-bottom: Black 1.5pt solid"><p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif"><b>Six months ended</b></span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="font-family: Times New Roman, Times, Serif"><b>June 30,</b></span></p></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom"> <td style="font-weight: bold; text-align: justify; border-bottom: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif">Potential common shares (in ‘000s)</span></td><td style="font-weight: bold; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif">2021</span></td><td style="padding-bottom: 1.5pt; font-weight: bold"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="font-weight: bold; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif">2020</span></td><td style="padding-bottom: 1.5pt; font-weight: bold"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="font-weight: bold; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif">2021</span></td><td style="padding-bottom: 1.5pt; font-weight: bold"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="font-weight: bold; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td colspan="2" style="font-weight: bold; text-align: center; border-bottom: Black 1.5pt solid"><span style="font-family: Times New Roman, Times, Serif">2020</span></td><td style="padding-bottom: 1.5pt; font-weight: bold"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="width: 52%; text-align: justify"><span style="font-family: Times New Roman, Times, Serif">Convertible preferred stock</span></td><td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="width: 9%; text-align: right"><div style="-sec-ix-hidden: hidden-fact-114"><span style="font-family: Times New Roman, Times, Serif">—</span></div></td><td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="width: 9%; text-align: right"><div style="-sec-ix-hidden: hidden-fact-115"><span style="font-family: Times New Roman, Times, Serif">—</span></div></td><td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="width: 9%; text-align: right"><div style="-sec-ix-hidden: hidden-fact-116"><span style="font-family: Times New Roman, Times, Serif">—</span></div></td><td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="width: 1%"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="width: 9%; text-align: right"><span style="font-family: Times New Roman, Times, Serif">1,048</span></td><td style="width: 1%; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif">Stock options to purchase common stock</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">6,666</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">6,105</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">6,773</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">8,571</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif">Restricted stock units</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">2,381</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">2,934</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">3,002</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">2,934</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; "> <td style="text-align: justify"><span style="font-family: Times New Roman, Times, Serif">Performance stock units</span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">1,274</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">1,292</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">2,726</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="text-align: right"><span style="font-family: Times New Roman, Times, Serif">1,292</span></td><td style="text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; background-color: rgb(204,238,255)"> <td style="text-align: justify; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif">Warrants to purchase common stock</span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif">4,963</span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif">11,347</span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif">11,347</span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif">11,347</span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> <tr style="vertical-align: bottom; "> <td style="padding-left: 0.125in; padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif">Total</span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif">15,284</span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif">21,678</span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif">23,848</span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="padding-bottom: 1.5pt"><span style="font-family: Times New Roman, Times, Serif"> </span></td> <td style="border-bottom: Black 1.5pt solid; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td><td style="border-bottom: Black 1.5pt solid; text-align: right"><span style="font-family: Times New Roman, Times, Serif">25,192</span></td><td style="padding-bottom: 1.5pt; text-align: left"><span style="font-family: Times New Roman, Times, Serif"> </span></td></tr> </table> 1048000 6666000 6105000 6773000 8571000 2381000 2934000 3002000 2934000 1274000 1292000 2726000 1292000 4963000 11347000 11347000 11347000 15284000 21678000 23848000 25192000 <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note 12 — Commitments and contingencies</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><i>Legal Matters</i></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company is subject to legal proceedings and claims that arise in the ordinary course of its business. Management evaluates each claim and provides for potential loss when the claim is probable to be paid and reasonably estimable. While adverse decisions in certain of these litigation matters, claims and administrative proceedings could have a material effect on a particular period’s results of operations, subject to the uncertainties inherent in estimating future costs for contingent liabilities, management believes that any future accruals with respect to these currently known contingencies would not have a material effect on the financial condition, liquidity or cash flows of the Company. There were no amounts required to be reflected in these consolidated financial statements related to contingencies.</span></p> <p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"><b>Note 13 — Subsequent events</b></span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">The Company performed its subsequent event procedures through August 5, 2021, the date these condensed consolidated financial statements were issued.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif">On July 6, 2021, the Company closed a follow-on public offering of 11,615,301 shares of its common stock, which included 5,470,039 shares offered by Grid Dynamics and 6,145,262 shares offered by certain selling stockholders, at a price to the public of $15.03 per share. These amounts include shares sold upon exercise in full of the underwriters' option to purchase additional shares. J.P. Morgan Securities, LLC, William Blair &amp; Company, L.L.C. and Cowen and Company, LLC were acting as joint book-running managers for the offering. Needham &amp; Company, LLC and Cantor Fitzgerald &amp; Co. were acting as co-managers for the offering. The Company did not receive any proceeds from the sale of the shares by the selling stockholders. The net proceeds from this offering, after deducting underwriting discounts and commissions and estimated offering expenses were $78.3 million.</span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt"> </span></p><p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">On July 28, 2021, the Company announced the redemption of its 2.8 million then outstanding public warrants. Any public warrants not exercised prior to 5:00 p.m., New York City time, on August 30, 2021 will be redeemed at that time for $0.01 per warrant. The public warrants are exercisable at a price of $11.50 per share, representing a total of approximately $31.9 million in potential proceeds to Grid Dynamics if all 2.8 million outstanding warrants are exercised prior to the redemption date.</span></p> 11615301 5470039 6145262 15.03 78300000 2800000 0.01 11.50 31900000 2800000 false --12-31 Q2 0001743725 Represents the weighted average exercise price Represents weighted average remaining contractual term XML 14 R1.htm IDEA: XBRL DOCUMENT v3.21.2
Document And Entity Information - shares
6 Months Ended
Jun. 30, 2021
Aug. 02, 2021
Document Information Line Items    
Entity Registrant Name Grid Dynamics Holdings, Inc.  
Trading Symbol GDYN  
Document Type 10-Q  
Current Fiscal Year End Date --12-31  
Entity Common Stock, Shares Outstanding   62,111,831
Amendment Flag false  
Entity Central Index Key 0001743725  
Entity Current Reporting Status Yes  
Entity Filer Category Accelerated Filer  
Document Period End Date Jun. 30, 2021  
Document Fiscal Year Focus 2021  
Document Fiscal Period Focus Q2  
Entity Small Business false  
Entity Emerging Growth Company true  
Entity Shell Company false  
Entity Ex Transition Period false  
Document Quarterly Report true  
Document Transition Report false  
Entity File Number 001-38685  
Entity Incorporation, State or Country Code DE  
Entity Tax Identification Number 83-0632724  
Entity Address, Address Line One 5000 Executive Parkway  
Entity Address, Address Line Two Suite 520  
Entity Address, City or Town San Ramon  
Entity Address, State or Province CA  
Entity Address, Postal Zip Code 94583  
City Area Code (650)  
Local Phone Number 523-5000  
Title of 12(b) Security Common Stock, par value $0.0001 per share  
Security Exchange Name NASDAQ  
Entity Interactive Data Current Yes  
XML 15 R2.htm IDEA: XBRL DOCUMENT v3.21.2
Unaudited Condensed Consolidated Balance Sheets - USD ($)
$ in Thousands
Jun. 30, 2021
Dec. 31, 2020
Current assets    
Cash and cash equivalents $ 67,974 $ 112,745
Accounts receivable, net of allowance of $205 and $418 as of June 30, 2021 and December 31, 2020, respectively 29,051 16,890
Unbilled receivables 3,997 1,799
Prepaid income taxes 1,050 821
Prepaid expenses and other current assets 5,395 2,361
Total current assets 107,467 134,616
Property and equipment, net 5,160 4,095
Intangible assets, net 20,342 8,125
Deferred tax assets 4,865 5,609
Goodwill 35,299 14,690
Total assets 173,133 167,135
Current liabilities    
Accounts payable 2,489 757
Accrued liabilities 1,490 628
Accrued compensation and benefits 11,099 7,479
Accrued income taxes 1,830 1,248
Other current liabilities 8,251 3,206
Total current liabilities 25,159 13,318
Deferred tax liabilities 4,962 2,093
Total liabilities 30,121 15,411
Stockholders’ equity (Note 9)    
Common stock, $0.0001 par value; 110,000,000 shares authorized; 54,728,586 and 50,878,780 issued and outstanding as of June 30, 2021 and December 31, 2020, respectively 5 5
Additional paid-in capital 123,749 128,930
Retained earnings 19,248 22,793
Accumulated other comprehensive income/(loss) 10 (4)
Total stockholders’ equity 143,012 151,724
Total liabilities and stockholders’ equity $ 173,133 $ 167,135
XML 16 R3.htm IDEA: XBRL DOCUMENT v3.21.2
Unaudited Condensed Consolidated Balance Sheets (Parentheticals) - USD ($)
$ in Thousands
Jun. 30, 2021
Dec. 31, 2020
Statement of Financial Position [Abstract]    
Accounts receivable, net of allowance (in Dollars) $ 205 $ 418
Common stock, par value (in Dollars per share) $ 0.0001 $ 0.0001
Common stock, shares authorized 110,000,000 110,000,000
Common stock, shares issued 54,728,586 50,878,780
Common stock, shares outstanding 54,728,586 50,878,780
XML 17 R4.htm IDEA: XBRL DOCUMENT v3.21.2
Unaudited Condensed Consolidated Statements of Loss and Comprehensive Loss - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2021
Jun. 30, 2020
Jun. 30, 2021
Jun. 30, 2020
Income Statement [Abstract]        
Revenue $ 47,676 $ 22,368 $ 86,810 $ 54,825
Cost of revenue 27,879 13,982 51,676 36,621
Gross profit 19,797 8,386 35,134 18,204
Operating expenses        
Engineering, research, and development 1,772 2,577 3,555 5,117
Sales and marketing 2,837 1,637 5,869 5,206
General and administrative 13,804 7,359 26,104 18,102
Total operating expenses 18,413 11,573 35,528 28,425
Income/(loss) from operations 1,384 (3,187) (394) (10,221)
Other income/(expenses), net (79) 208 (1,129) (36)
Income/(loss) before income taxes 1,305 (2,979) (1,523) (10,257)
Provision/(benefit) for income taxes 2,788 (813) 2,022 (3,495)
Net loss (1,483) (2,166) (3,545) (6,762)
Foreign currency translation adjustments, net of tax (35) 14
Comprehensive loss $ (1,518) $ (2,166) $ (3,531) $ (6,762)
Loss per share        
Basic (in Dollars per share) $ (0.03) $ (0.04) $ (0.07) $ (0.17)
Diluted (in Dollars per share) $ (0.03) $ (0.04) $ (0.07) $ (0.17)
Weighted average shares outstanding        
Basic (in Shares) 54,431 49,626 53,044 39,731
Diluted (in Shares) 54,431 49,626 53,044 39,731
XML 18 R5.htm IDEA: XBRL DOCUMENT v3.21.2
Unaudited Consolidated Statement of Convertible Preferred Stock and Stockholders' Equity - USD ($)
$ in Thousands
Convertible Preferred Stock
Common Stock
Additional paid-in capital
Retained earnings
Accumulated other comprehensive income/(loss)
Total
Balance at Dec. 31, 2019 $ 9,187 $ 8,117 $ 10,535 $ 35,392 $ 54,044
Balance (in Shares) at Dec. 31, 2019 622 12,847        
Retroactive application of recapitalization (Note 3) $ (8,115) 8,115
Retroactive application of recapitalization (Note 3) (in Shares) 426 8,797        
Adjusted balance beginning of period $ 9,187 $ 2 18,650 35,392 54,044
Adjusted balance beginning of period (in Shares) 1,048 21,644        
Net loss (4,596) (4,596)
Stock-based compensation 4,804 4,804
Conversion of preferred stock $ (9,187) $ 1 9,187 9,188
Conversion of preferred stock (in Shares) (1,048) 1,048        
Consideration paid to Grid shareholders (123,865) (123,865)
Conversion of promissory note to common stock 530 530
Conversion of promissory note to common stock (in Shares) 53        
Balance at Mar. 31, 2020 $ 5 113,629 30,796 144,430
Balance (in Shares) at Mar. 31, 2020 50,833        
Balance at Dec. 31, 2019 $ 9,187 $ 8,117 10,535 35,392 54,044
Balance (in Shares) at Dec. 31, 2019 622 12,847        
Issuance of shares and payments of tax obligations resulted from net share settlement of vested stock awards          
Balance at Jun. 30, 2020 $ 5 117,342 28,630 145,977
Balance (in Shares) at Jun. 30, 2020   50,839        
Balance at Mar. 31, 2020 $ 5 113,629 30,796 144,430
Balance (in Shares) at Mar. 31, 2020 50,833        
Net loss (2,166) (2,166)
Stock-based compensation 3,654 3,654
Conversion of preferred stock 59 59
Conversion of preferred stock (in Shares)   6        
Balance at Jun. 30, 2020 $ 5 117,342 28,630 145,977
Balance (in Shares) at Jun. 30, 2020   50,839        
Balance at Dec. 31, 2020 $ 5 128,930 22,793 (4) 151,724
Balance (in Shares) at Dec. 31, 2020 50,879        
Net loss (2,062) (2,062)
Stock-based compensation 5,671 5,671
Exchange of warrants into common stock
Exchange of warrants into common stock (in Shares) 2,221        
Exercise of stock options 162 162
Exercise of stock options (in Shares) 41        
Issuance of shares and payments of tax obligations resulted from net share settlement of vested stock awards (15,297) (15,297)
Issuance of shares and payments of tax obligations resulted from net share settlement of vested stock awards (in Shares) 1,030        
Foreign currency translation adjustment, net of tax 49 49
Balance at Mar. 31, 2021 $ 5 119,466 20,731 45 140,247
Balance (in Shares) at Mar. 31, 2021 54,171        
Balance at Dec. 31, 2020 $ 5 128,930 22,793 (4) 151,724
Balance (in Shares) at Dec. 31, 2020 50,879        
ChaSerg shares recapitalized, net of transaction costs of $4,142 $ 2 204,323 204,325
ChaSerg shares recapitalized, net of transaction costs of $4,142 (in Shares)   28,088        
Issuance of shares and payments of tax obligations resulted from net share settlement of vested stock awards           (18,861)
Balance at Jun. 30, 2021 $ 5 123,749 19,248 10 143,012
Balance (in Shares) at Jun. 30, 2021   54,729        
Balance at Mar. 31, 2021 $ 5 119,466 20,731 45 140,247
Balance (in Shares) at Mar. 31, 2021 54,171        
Net loss (1,483) (1,483)
Stock-based compensation 6,675 6,675
Exchange of warrants into common stock 918 918
Exchange of warrants into common stock (in Shares)   271        
Exercise of stock options 254 254
Exercise of stock options (in Shares)   138        
Issuance of shares and payments of tax obligations resulted from net share settlement of vested stock awards (3,564) (3,564)
Issuance of shares and payments of tax obligations resulted from net share settlement of vested stock awards (in Shares)   149        
Foreign currency translation adjustment, net of tax (35) (35)
Balance at Jun. 30, 2021 $ 5 $ 123,749 $ 19,248 $ 10 $ 143,012
Balance (in Shares) at Jun. 30, 2021   54,729        
XML 19 R6.htm IDEA: XBRL DOCUMENT v3.21.2
Unaudited Consolidated Statement of Convertible Preferred Stock and Stockholders' Equity (Parentheticals)
$ in Thousands
6 Months Ended
Jun. 30, 2021
USD ($)
Statement of Stockholders' Equity [Abstract]  
Recapitalized, net of transaction costs $ 4,142
XML 20 R7.htm IDEA: XBRL DOCUMENT v3.21.2
Unaudited Condensed Consolidated Statement of Cash Flows - USD ($)
$ in Thousands
6 Months Ended
Jun. 30, 2021
Jun. 30, 2020
Cash flows from operating activities    
Net loss $ (3,545) $ (6,762)
Adjustments to reconcile net loss to net cash provided by/(used in) operating activities:    
Depreciation and amortization 2,100 1,234
Bad debt expense (65) 781
Deferred income taxes 1,115 (4,274)
Stock-based compensation 12,346 8,458
Change in fair value of warrants 839
Changes in assets and liabilities:    
Accounts receivable (8,779) (1,111)
Unbilled receivables (371) 4,058
Prepaid income taxes (229) (611)
Prepaid expenses and other current assets (1,666) (1,961)
Accounts payable 1,393 51
Accrued liabilities 358 (519)
Accrued compensation and benefits 1,410 (99)
Accrued income taxes 376 (34)
Other current liabilities 1,368 (132)
Net cash provided by/(used in) operating activities 6,650 (921)
Cash flows from investing activities    
Purchase of property and equipment (1,940) (1,110)
Acquisition of Companies, net of cash acquired (Note 4) (30,585)
Net cash used in investing activities (32,525) (1,110)
Cash flows from financing activities    
Cash received from ChaSerg 208,997
GDI shares redeemed for cash (123,865)
Equity issuance costs (465) (2,264)
Payments of tax obligations resulted from net share settlement of vested stock awards (18,861)
Proceeds from exercises of stock options 416 59
Net cash (used in)/provided by financing activities (18,910) 82,927
Effect of exchange rate changes on cash and cash equivalents 14
Net (decrease)/increase in cash and cash equivalents (44,771) 80,896
Cash and cash equivalents, beginning of period 112,745 42,189
Cash and cash equivalents, end of period 67,974 123,085
Supplemental disclosure of cash flow information:    
Cash paid for income taxes 1,150 1,144
Supplemental disclosure of non-cash activities    
Conversion of preferred stock to common stock 9,187
Conversion of warrants 918
Fair value of contingent consideration issued for acquisition of business $ 3,400
XML 21 R8.htm IDEA: XBRL DOCUMENT v3.21.2
Background and nature of operations
6 Months Ended
Jun. 30, 2021
Accounting Policies [Abstract]  
Background and nature of operations

Note 1 — Background and nature of operations

 

Grid Dynamics Holdings, Inc. (the “Company” or “GDH”) provides enterprise-level digital transformation in the areas of search, analytics, and release automation to Fortune 1000 companies. The Company’s headquarters and principal place of business is in San Ramon, California.

 

The Company was originally incorporated in Delaware on May 21, 2018 as a special purpose acquisition company under the name ChaSerg Technology Acquisition Corp. (“ChaSerg”) for the purpose of effecting a merger, capital stock exchange, asset acquisition, stock purchase, reorganization or similar business combination involving ChaSerg and one or more businesses. On March 5, 2020 (the “Closing”), the Company consummated its business combination with Grid Dynamics International, Inc. (“GDI”) pursuant to the Agreement and Plan of Merger (the “Merger Agreement”), dated November 13, 2019 (the “Business Combination”). In connection with the Closing, the Company changed its name from ChaSerg Technology Acquisition Corp. to Grid Dynamics Holdings, Inc. The Company’s common stock is now listed on the NASDAQ under the symbol “GDYN” and warrants to purchase the common stock at an exercise price of $11.50 per share are listed on the NASDAQ under the symbol “GDYNW.”

 

Unless the context otherwise requires, the “Company” refers to the combined company and its subsidiaries following the Business Combination, “ChaSerg” refers to the Company prior to the Closing, and “GDI” refers to GDI prior to the Closing. Refer to Note 3 for further discussion of the Business Combination.

XML 22 R9.htm IDEA: XBRL DOCUMENT v3.21.2
Basis of presentation and summary of significant accounting policies
6 Months Ended
Jun. 30, 2021
Accounting Policies [Abstract]  
Basis of presentation and summary of significant accounting policies

Note 2 — Basis of presentation and summary of significant accounting policies

 

The following is a summary of the significant accounting policies consistently applied in the preparation of the accompanying consolidated financial statements.

 

Unaudited Interim Financial Statements

 

The accompanying unaudited condensed consolidated financial statements have been prepared in accordance with generally accepted accounting principles in the United States (“U.S. GAAP”) for interim financial information and in accordance with the rules and regulations of the Securities and Exchange Commission (“SEC”). Accordingly, they do not include all of the information and footnotes required by U.S. GAAP for complete financial statements. The unaudited condensed consolidated financial statements reflect all normal and recurring adjustments that are, in the opinion of the Company’s management, necessary for the fair presentation of the results of operations for the interim periods. Operating results for the three and six months ended June 30, 2021 are not necessarily indicative of the results that may be expected for the year ending December 31, 2021. These interim financial statements should be read in conjunction with GDH’s audited financial statements for the year ended December 31, 2020 included in the Company’s annual report on Form 10-K that the Company filed with the SEC on March 5, 2021.

 

Basis of presentation

 

The Business Combination was accounted for as a reverse recapitalization in accordance with U.S. GAAP. Although ChaSerg was the legal acquirer, for accounting purposes, GDI was deemed to be the accounting acquirer. GDI was determined to be the accounting acquirer based on evaluation of the following facts and circumstances:

  

GDI holds executive management roles for the Company and those individuals are responsible for the day-to-day operations;

 

GDI’s former owners have the largest minority voting rights in the Company;

 

From a revenue and business operation standpoint, GDI was the larger entity in terms of relative size;

 

GDI’s San Ramon, CA headquarters are the headquarters of the Company; and

 

The intended strategy of the Company will continue GDI’s strategy of driving enterprise-level digital transformation in the Fortune 1000 companies.

 

In conjunction with the Business Combination, outstanding shares of GDI were converted into common stock of the Company, par value $0.0001 per share, shown as a recapitalization, and the net assets of ChaSerg were acquired at historical cost, with no goodwill or other intangible assets recorded. GDI was deemed to be the predecessor of the Company, and the consolidated assets and liabilities and results of operations prior to the Closing (for the years ended December 31, 2019 and 2018 and the period from January 1, 2020 to March 5, 2020) are those of GDI. ChaSerg’s assets and liabilities, which include net cash from the trust of $85.1 million, and results of operations were consolidated with GDI beginning on the Closing.

 

In accordance with guidance applicable to these circumstances, the equity structure has been restated in all comparative periods up to the Closing Date, to reflect the number of shares of the Company’s common stock, $0.0001 par value per share, issued to GDI shareholders in connection with the recapitalization transaction. As such, the shares and corresponding capital amounts and earnings per share related to GDI preferred and common stock prior to the Business Combination have been retroactively restated as shares reflecting the exchange ratio established in the Business Combination.

 

Principles of consolidation

 

The accompanying condensed financial statements include the accounts of the Company and all of its subsidiaries that are directly or indirectly owned or controlled. Intercompany transactions and balances have been eliminated upon consolidation.

 

Use of estimates

 

The preparation of the consolidated condensed financial statements in accordance with U.S. GAAP requires the Company to make estimates and assumptions that affect the amounts reported in the condensed consolidated financial statements and accompanying notes. Actual results could differ from these estimates and such differences could be material. Significant estimates include allowances for receivables, calculation of accrued liabilities, capitalization of internally developed software, stock-based compensation, contingent consideration payable, determination of fair value, useful lives and recoverability of intangible assets and goodwill, determination of provision for income taxes and uncertain tax positions.

 

Certain significant risks and uncertainties

 

The Company is subject to risks, including but not limited to customer concentration, concentrations of credit and foreign currency risks. Refer to the section below for additional information. Additionally, the Company has been impacted by the recent coronavirus (“COVID-19”) pandemic. The global pandemic of COVID-19 has negatively affected the U.S. and global economy, disrupted global supply chains, resulted in significant travel and transport restrictions, including mandated closures and orders to “shelter-in-place,” and created significant disruption of the financial market. In 2020 the COVID-19 pandemic impacted the Company’s revenues, and the Company’s business continues to be exposed to risks and uncertainties related to the pandemic. The impact of the COVID-19 pandemic had been more pronounced with the Company’s retail customers, which depended on keeping their stores open. Additionally, in situations where the Company’s customers encountered financial difficulties, there was a risk associated with the Company’s inability to collect money from customers. In 2020 the Company took several actions to deal with the COVID-19 pandemic. These included enabling its employees to work from home, company-wide salary and compensation cuts, hiring freezes, and suspending all non-essential travel. Some of these actions such as working from home as well as suspending all non-essential travel continues to be currently in place. As the Company's business recovered in 2021, the Company discontinued some of the cost saving measures such as compensation cuts and hiring freezes. The Company now is facing the opposite challenges including employee retention and shortage of talent on the job market. The ultimate impact and the extent to which the COVID-19 pandemic will continue to affect the business, results of operation and financial condition is difficult to predict and depends on numerous evolving factors outside of the Company’s control including: the duration and scope of the pandemic, including from renewed waves and new variants; government, social, business and other actions that have been and will be taken in response to the pandemic; and the effect of the pandemic on short and long-term general economic conditions.

 

Concentrations of credit risk and significant customers

 

The Company records its accounts receivable and unbilled receivables at their face amounts less allowances. Accounts receivable and unbilled receivables are generally dispersed across the Company’s customers in proportion to their revenue. Three customers individually exceeded 10% of the Company’s accounts receivable balance as of June 30, 2021 and December 31, 2020. One customer individually exceeded 10% of the unbilled receivables as of June 30, 2021 and three customers individually exceeded 10% of the unbilled receivables as of December 31, 2020. Two and three customers individually accounted for greater than 10% of the sales for the three months ended June 30, 2021 and 2020, respectively. Two and three customers individually accounted for greater than 10% of the sales for the six months ended June 30, 2021 and 2020, respectively.

 

Cash and cash equivalents

 

The Company considers cash equivalents to be highly liquid investments with original maturities of three months or less from the date of purchase. Cash equivalents are stated at cost, which approximates fair value. At times, cash deposits with banks may exceed federally insured limits.

 

Accounts receivable and allowance for doubtful accounts

 

Accounts receivable, less allowance for doubtful accounts, reflect the net realizable value of receivables and approximate fair value. The Company maintains an allowance against accounts receivable for the estimated probable losses on uncollectible accounts. The allowance is based upon historical loss experience, current economic conditions within the industries the Company serves as well as determination of the specific risk related to certain customers. Accounts receivable are charged off against the reserve when, in management’s estimation, further collection efforts would not result in a reasonable likelihood of receipt. The allowance for doubtful accounts balance decreased to $0.2 million as of June 30, 2021 compared to $0.4 million as of December 31, 2020.

 

   As of 
   June 30,
2021
   December 31,
2020
 
   (in thousands) 
Trade accounts receivable  $29,256   $17,308 
Allowance for doubtful accounts   (205)   (418)
Total trade accounts receivable, net  $29,051   $16,890 

 

Unbilled receivables

 

Generally, the Company will not bill customers until the services have been completed. From time-to-time, a service period may overlap with a period-end and the unbilled receivables represent amounts for services performed through period-end, but not yet billed. The unbilled receivable represents the amount expected to be billed and collected for services performed through period-end in accordance with contract terms. The unbilled receivables balances were $4.0 million and $1.8 million as of June 30, 2021 and December 31, 2020, respectively.

 

Goodwill

 

Goodwill represents the excess of purchase price over the fair value of the net assets of businesses acquired. On an annual basis, the Company makes a qualitative assessment to determine if it is more likely than not that the fair value of the reporting unit is less than its carrying amount, including goodwill. If the Company determines that the fair value of the reporting unit is less than its carrying amount, it will perform a quantitative analysis; otherwise, no further evaluation is necessary. For the quantitative impairment assessment, the Company compares the fair value of the reporting unit to its carrying value, including goodwill. The Company uses the discounted cash flow method of the income approach and market approach to determine the fair value of the reporting unit. If the fair value of the reporting unit exceeds the carrying value of the net assets assigned to that unit, goodwill is not impaired, and no further testing is performed. If the carrying value of the net assets assigned to the reporting unit exceeds the fair value of the reporting unit, then the Company will recognize a loss equal to the excess, limited to the total amount of goodwill allocated to that reporting unit. Impairments, if any, are charged directly to earnings. As of June 30, 2021, the Company has a single reporting unit and determined there were no indicators of impairment.

 

Intangible assets

 

Finite-lived intangible assets are stated at cost less accumulated amortization. Amortization is computed on the straight-line basis over the asset’s useful lives ranging between 2 and 12 years. Intangible assets are evaluated for impairment whenever events or changes in circumstances indicate that the carrying value of the assets may not be fully recoverable. If facts and circumstances indicate that the carrying value might not be recoverable, projected undiscounted net cash flows associated with the related asset or group of assets over their estimated remaining useful lives is compared against their respective carrying amounts. If an asset is found to be impaired, the impairment charge will be measured as the amount by which the carrying amount of an entity exceeds its fair value. As of June 30, 2021, the Company determined there were no indicators of impairment.

 

Revenue recognition

 

The Company accounts for a contract with a customer when 1) the parties to the contract have approved the contract and are committed to performing their respective obligations, 2) the contract identifies each party’s rights regarding the goods or services to be transferred, 3) the contract identifies the payment terms for the goods or services to be transferred, 4) the contract has commercial substance, and 5) collection of substantially all consideration pursuant to the contract is probable.

 

The Company derives its revenue from offering a suite of digital engineering and information technology (“IT”) consulting services, including digital transformation strategy, emerging technology, lean labs and legacy system replatforming. For most contracts, the Company uses master agreements to govern the overall relevant terms and conditions of the business arrangement between the Company and its customers. When the Company and a customer enter into a Master Services Agreement (“MSA”), purchases are generally made by the customer via a statement of work (“SOW”) which explicitly references the MSA and specifies the services to be delivered. Fees for these contracts may be in the form of time-and-materials or fixed-fee arrangements. The majority of the Company’s revenues are generated under time-and-material contracts which are billed using hourly rates to determine the amounts to be charged directly to the customer. Fees are billed and collected as stipulated in the contract, and revenue is recognized as services are performed. If there is an uncertainty about the receipt of payment for the services, revenue is recognized to the extent that a significant reversal of revenue would not be probable.

 

Consulting services revenue is a single performance obligation earned through a series of distinct daily services and may include services such as those described above. The Company recognizes revenue for services over time as the customer simultaneously receives and consumes the benefits as the Company performs IT consulting services. For revenue contracts, the customer derives value from the Company providing daily consulting services, and the value derived corresponds to the labor hours expended. Therefore, the Company measures the progress and recognizes revenue using an effort-based input method. For fixed fee contracts, the Company recognizes revenue as the work is performed, the monthly calculation of which is based upon actual labor hours incurred and level of effort expended throughout the duration of the contract.

 

For time-and-material contracts, the Company applies the variable consideration allocation exception. Therefore, instead of allocating the variable consideration to the entire performance obligation, the Company determined the variable consideration should be allocated to each distinct service to which the variable consideration relates, which is providing the customer daily consulting services. The Company also offers volume discounts or early settlement discounts. Volume discounts apply once the customer reaches certain contractual spend thresholds. Early settlement discounts are issued contingent upon the timing of the payment from the customer. If the consideration promised in a contract includes a variable amount, the Company only includes estimated amounts of consideration in the transaction price to the extent it is probable that a significant reversal of cumulative revenue recognized will not occur when the uncertainty associated with the variable consideration is resolved. These estimates may require management to make subjective judgments and to make estimates about the effects of matters inherently uncertain. The determination of whether to constrain consideration in the transaction price are based on information (historical, current and forecasted) that is reasonably available to the Company, taking into consideration the type of customer, the type of transaction and the specific facts and circumstances of each arrangement. Although the Company believes that its approach in developing estimates and its reliance on certain judgments and underlying inputs is reasonable, actual results may differ from management’s estimates, judgments and assumptions. These estimates have historically not been material to the consolidated financial statements.

 

Remaining performance obligation

 

ASC 606 requires that the Company disclose the aggregate amount of transaction price that is allocated to performance obligations that have not yet been satisfied as of June 30, 2021. This disclosure is not required for:

 

1)contracts with an original duration of one year or less, including contracts that can be terminated for convenience without a substantive penalty,
   
2)contracts for which the Company recognizes revenues based on the right to invoice for services performed,
   
3)variable consideration allocated entirely to a wholly unsatisfied performance obligation or to a wholly unsatisfied promise to transfer a distinct good or service that forms part of a single performance obligation in accordance with ASC 606-10-25-14(b), for which the criteria in ASC 606-10-32-40 have been met, or
   
4)variable consideration in the form of a sales-based or usage-based royalty promised in exchange for a license of intellectual property.

 

All of the Company’s contracts met one or more of these exemptions as of June 30, 2021.

 

Stock-based compensation expense

 

Stock-based compensation expense is measured based on the grant-date fair value of the share-based awards. Forfeitures are recognized as incurred. The Company estimates stock options grant-date fair value using the Black-Scholes-Merton option pricing model. The model requires management to make a number of key assumptions including expected volatility, expected term, risk-free interest rate, and expected dividends. The Company evaluates the assumptions used to value its share-based awards on each grant date. The fair market value of Grid Dynamics stock is determined based on the closing price on NASDAQ on the measurement date. The Company amortizes the grant-date fair value of all share-based compensation awards over the employee’s requisite service period for the entire award on a straight-line basis, which is generally the vesting period. For an award with graded vesting that is subject only to a service condition (e.g., time-based vesting), the Company uses the straight-line attribution method under ASC 718 under which they recognize compensation cost on a straight-line basis over the total requisite service period for the entire award (i.e., over the requisite service period of the last separately-vesting tranche of the award). Additionally, the Company applies the “floor” concept so that the amount of compensation cost that is recognized as of any date is at least equal to the grant-date fair value of the vested portion of the award on that date. That is, if the straight-line expense recognized to date is less than the grant date fair value of the award that is legally vested at that date, the company will increase its recognized expense to at least equal the fair value of the vested amount. Refer to Note 10 — Stock-based compensation for additional information.

 

Income taxes

 

The Company follows the asset and liability method of accounting for income taxes. Under this method, deferred income taxes are recognized for the tax consequences of temporary differences between the financial statement carrying amounts and the tax basis of the assets and liabilities. The determination of the provision for income taxes requires significant judgment, the use of estimates and the interpretation and application of complex tax laws. The provision for income taxes reflects a combination of income earned and taxed in the various U.S. federal and state, international and other jurisdictions. Jurisdictional tax law changes, increases or decreases in permanent differences between book and tax items, accruals or adjustments of accruals for tax contingencies or valuation allowances, and the change in the mix of earnings from these taxing jurisdictions all affect the overall effective tax rate.

 

In assessing the realizability of deferred tax assets, management considers whether it is more likely than not that some portion, or all, of the deferred tax assets will not be realized. Management considers all available evidence, both positive and negative, in determining whether a valuation allowance is required. Such evidence includes prior earnings history, the scheduled reversal of deferred tax liabilities, projected future taxable income, carryback and carryforward periods of tax attributes, and tax planning strategies that could potentially enhance the likelihood of realization of a deferred tax asset in making this assessment. The weight given to the positive and negative evidence is commensurate with the extent to which the evidence may be objectively verified.

 

The Company evaluates for uncertain tax positions at each balance sheet date. When it is more likely than not that a position will be sustained upon examination by a tax authority that has full knowledge of all relevant information, the Company measures the amount of tax benefit from the position and records the largest amount of tax benefit that is greater than 50% likely of being realized after settlement with a tax authority. The Company’s policy for interest and/or penalties related to underpayments of income taxes is to include interest and penalties in income tax expense.

 

Recently adopted accounting pronouncements

 

Changes to U.S. GAAP are established by the Financial Accounting Standards Board (the “FASB”), in the form of Accounting Standards Updates (“ASUs”), to the FASB’s ASC. The Company has elected not to opt out of the extended transition period and thus when a standard is issued or revised and it has different application dates for public or private companies, the Company, as an emerging growth company, can adopt the new or revised standard at the time private companies adopt the new or revised standard.

 

In December 2019, the FASB issued Accounting Standard Update No. 2019-12, Income Taxes (Topic 740): Simplifying the Accounting for Income Taxes (ASU 2019-12), which simplifies the accounting for income taxes by removing certain exceptions to the general principles and also simplification of areas such as franchise taxes, step-up in tax basis goodwill, separate entity financial statements and interim recognition of enactment of tax laws or rate changes. The update is effective for fiscal years and interim periods within those fiscal years beginning after December 15, 2020, and early adoption is permitted. The Company adopted the standard as of January 1, 2021 and has determined that the adoption of this guidance did not have a material effect on the consolidated financial statements.

 

Recently issued accounting pronouncements

 

The Company considered the applicability and impact of all ASUs. ASUs not listed below were assessed and determined to be either not applicable or are expected to have minimal impact on the consolidated financial statements.

 

In February 2016, the FASB issued ASU No. 2016-2, Leases. ASU 2016-2 requires lessees to put most leases on their balance sheet while recognizing expense in a manner similar to existing accounting. ASU 2016-2 states that a lessee would recognize a lease liability for the obligation to make lease payments and a right-to-use asset for the right to use the underlying asset for the lease term. The standard allows for two methods of adoption to recognize and measure leases: retrospectively to each prior period presented in the financial statements with the cumulative effect of initially applying the guidance recognized at the beginning of the earliest comparative period presented or retrospectively at the beginning of the period of adoption with the cumulative effect of initially applying the guidance recognized at the beginning of the period in which the guidance is first applied. Both adoption methods include a number of optional practical expedients that entities may elect to apply. The Company will adopt the standard retrospectively at the beginning of the period of adoption with the cumulative effect of initially applying the guidance recognized at the beginning of the period in which the guidance is first applied. The new accounting guidance is effective for the Company for fiscal periods beginning after December 15, 2021. The Company expects the impact to be material but has not yet determined the impact that the adoption of this guidance will have on the consolidated financial statements.

 

In June 2016, the FASB issued ASU 2016-13, Financial Instruments-Credit Losses (Topic 326) — Measurement of Credit Losses on Financial Instruments. Topic 326 was subsequently amended by ASU 2019-4, Codification Improvements to Topic 326, Financial Instruments — Credit Losses, ASU 2019-5, Financial Instruments — Credit Losses (Topic 326): Targeted Transition Relief, and clarified the guidance with the release of ASU 2020-2 Financial Instruments—Credit Losses (Topic 326) and Leases (Topic 842). These ASUs replace the current incurred loss impairment methodology with a methodology that reflects expected credit losses measured at amortized cost and certain other instruments, including loans, held-to-maturity debt securities, net investments in leases, and off-balance sheet credit exposures. The update is effective for fiscal years beginning after December 15, 2022, and interim periods with fiscal years after December 15, 2022. The Company has not yet determined the impact that the adoption of this guidance will have on the consolidated financial statements.

 

In March 2020, FASB issued ASU No. 2020-3, Codification to Financial Instruments. This ASU improves and clarifies various financial instruments topics, including the current expected credit losses standard issued in 2016. The ASU includes seven different issues that describe the areas of improvement and the related amendments to U.S. GAAP, intended to make the standards easier to understand and apply by eliminating inconsistencies and providing clarifications. The amendments related to Issue 1, Issue 2, Issue 3, Issue 4, and Issue 5 were effective upon issuance of this update. The new guidance did not have a material impact on the consolidated financial statements. The amendments related to Issue 6 and Issue 7 are effective for the Company the earlier of January 1, 2023 or when the Company adopts ASU 2016-13, if early adopted. The Company is currently evaluating the impact these topics will have on the consolidated financial statements.

XML 23 R10.htm IDEA: XBRL DOCUMENT v3.21.2
Business combination
6 Months Ended
Jun. 30, 2021
Business Combinations [Abstract]  
Business combination

Note 3 – Business combination

 

On March 5, 2020, ChaSerg consummated its business combination with GDI pursuant to the Merger Agreement. Immediately following the Business Combination, there were 50.8 million shares of common stock with a par value of $0.0001, and 11.3 million warrants outstanding.

 

GDI began operations in September 2006 to provide next-generation e-commerce platform solutions in the areas of search, analytics, and release automation to Fortune 1000 companies. Under ASC 805, Business Combinations, GDI was deemed the accounting acquirer, and the Business Combination was accounted for as a reverse recapitalization, with no goodwill or other intangible assets recorded in accordance with U.S. GAAP. ChaSerg was treated as the “acquired” company for financial reporting purposes. Accordingly, for accounting purposes, the Business Combination was treated as the equivalent of GDI issuing stock for the net assets of ChaSerg, accompanied by a recapitalization. The net assets of ChaSerg were stated at historical cost, with no goodwill or other intangible assets recorded. Reported shares and earnings per share available to holders of the Company’s common stock, prior to the Business Combination, have been retroactively restated as shares reflecting the exchange ratio established in the Business Combination (approximately 1.685 GDH shares to 1.0 GDI share).

 

The aggregate consideration for the Business Combination was $396.5 million, consisting of $130.0 million in cash and 27.0 million shares of ChaSerg’s common stock valued at $10.19 per share, less a post-Closing share adjustment amount of 0.9 million shares which were placed in escrow post-Closing. The shares transferred at Closing included 4.3 million options to purchase the Company’s shares that were vested, outstanding and unexercised, which were determined using 1.7 million vested options at Closing converted at an exchange ratio of approximately 2.48. Additionally, 0.4 million options to purchase the Company’s common stock that were unvested, outstanding and unexercised were assumed by the Company, which were determined using 0.1 million unvested options at Closing converted at an exchange ratio of approximately 2.48. The following represents the aggregate consideration for the Business Combination (in thousands except for per share amount):

 

Shares transferred at Closing   27,006 
Less: Post-Closing share adjustment   (857)
Total shares transferred at Closing   26,149 
Value per share  $10.19 
Total share consideration  $266,459 
Plus: Cash transferred to GDI stockholders   130,000 
Closing merger consideration  $396,459 

 

In connection with the Closing, 0.1 million shares of common stock were redeemed at a price per share of approximately $10.21.

 

In connection with the Business Combination, the Company incurred direct and incremental costs of approximately $4.7 million, consisting of legal and professional fees, of which $4.1 million were related to equity issuance costs and recorded to additional paid-in capital as a reduction of proceeds and $0.6 million were recorded to general and administrative expenses.

 

In connection with the Business Combination, all outstanding retention bonus obligations from a 2017 acquisition totaling $3.4 million were accelerated and paid in full to Grid Dynamics’ personnel immediately prior to the Closing and were recorded in cost of revenue and operating expenses in the consolidated financial statements.

XML 24 R11.htm IDEA: XBRL DOCUMENT v3.21.2
Acquisition of Tacit Knowledge Inc.
6 Months Ended
Jun. 30, 2021
Business Combination Acquisition Disclosure [Abstract]  
Acquisition of Tacit Knowledge Inc.

Note 4 — Acquisition of Tacit Knowledge Inc.

 

On May 29, 2021, the Company acquired 100% of the equity interest of the global consultancy company Tacit Knowledge Inc. (“Tacit”). Founded in 2002, Tacit is a global provider of digital commerce solutions, serving customers across the UK, North America, Continental Europe, and Asia. The acquisition of Tacit added approximately 180 employees to the Company's headcount. The acquisition will augment the Company's service offerings and will strengthen its competitive position within the market. Additionally, the acquisition will also enable the Company to leverage near-shore capabilities with Tacit’s presence in Mexico.

 

The total purchase consideration is $37.0 million and included cash consideration of $33.6 million paid at closing and fair value of the contingent consideration at the date of the acquisition of $3.4 million. The maximum amount of potential contingent cash consideration is $5.0 million. The contingent consideration is payable based on revenue and EBITDA metrics to be achieved by Tacit within 12 months. The Company recorded a liability for the contingent consideration amount based on the Company’s best estimate of the fair value of the expected payout.

 

The primary areas of the preliminary purchase price allocations that have not been finalized relate to the finalization of working capital, the valuation and useful lives of intangible assets, the valuation of the earn-out, and the deferred tax liabilities. Upon completion of the fair value assessment, the Company anticipates that the ultimate intangible assets may differ from the preliminary assessment outlined above. Any change in the finalization of working capital will reduce or increase the cash consideration. Any changes to the preliminary estimates of the fair value of the and intangible assets or earn-out will be adjusted to goodwill during the measurement period, with subsequent changes in estimates recorded in the Company’s Consolidated Statements of Loss and Comprehensive Loss.

 

The purchase price of Tacit has been preliminarily allocated to the assets acquired and liabilities assumed based on their estimated respective fair values as of May 29, 2021 with the excess purchase price allocated to goodwill. The Company’s preliminary allocation of the purchase price to the net tangible and intangible assets acquired and liabilities assumed is as follows (in thousands):

 

Fair market values    
Current assets  $9,145 
Property, plant and equipment   466 
Customer relationships   11,737 
Tradename   1,176 
Goodwill   20,603 
Total assets acquired  $43,127 
      
Accounts payable and accrued expenses  $(3,675)
Deferred taxes   (2,500)
Total liabilities assumed  $(6,175)
Purchase price allocation  $36,952 

 

The preliminary fair value of identifiable intangible assets as of the date of acquisition is as follows:

 

(In thousands)  Fair Value   Useful Life  Amortization
method
Customer relationships  $11,737   12 years  Straight-line
Tacit tradename   1,176   4 years  Accelerated
Total identified intangible assets  $12,913       

 

As a result of the acquisition, the Company recognized a total of $20.6 million of goodwill. The purchase price was assigned to assets acquired and liabilities assumed based on their estimated fair values as of the date of acquisition, and any excess was allocated to goodwill, as shown in the table above. Goodwill represents the value the Company expects to achieve through the implementation of operational synergies and growth opportunities as the Company expands its global reach. The goodwill is not deductible for income tax purposes. 

 

The Company used various valuation techniques to determine fair value, with the primary techniques being discounted cash flow analysis, relief-from-royalty, and multi-period excess earnings valuation approaches, which use significant unobservable inputs, or Level 3 inputs, as defined by the fair value hierarchy. Under these valuation approaches, the Company is required to make estimates and assumptions about sales, operating margins, growth and attrition rates, royalty rates and discount rates based on budgets, business projections, anticipated future cash flows, and marketplace data.

 

The acquisition of Tacit was accounted for using the acquisition method of accounting, and consequently, the results of operations for Tacit are reported in the consolidated financial statements from the date of acquisition. Tacit revenue was approximately $2.5 million and net income was approximately $0.5 million from the date of acquisition to June 30, 2021.

 

The following unaudited pro forma information presents the combined results of operations as if the acquisition of Tacit had occurred at the beginning of 2020. Tacit pre-acquisition results have been added to the Company’s historical results. The pro forma results contained in the table below include adjustment for amortization of acquired intangibles. Any potential cost savings or other operational efficiencies that could result from the acquisition are not included in these pro forma results. 

 

The 2021 pro forma results include transaction related expenses incurred by the Company prior to the acquisition of $0.6 million including items such as consultant fees and other deal costs.

 

These pro forma results have been prepared for comparative purposes only and are not necessarily indicative of the results of operations as they would have been had the acquisitions occurred on the assumed dates, nor are they necessarily an indication of future operating results.

 

   Six Months Ended
June 30,
 
(Unaudited)  2021   2020 
Revenue  $94,842   $70,422 
Net loss  $(1,755)  $(6,629)
Loss per share  $(0.03)  $(0.17)
XML 25 R12.htm IDEA: XBRL DOCUMENT v3.21.2
Property and Equipment, net
6 Months Ended
Jun. 30, 2021
Property, Plant and Equipment [Abstract]  
Property and Equipment, net

Note 5 — Property and equipment, net

 

Property and equipment consist of the following (in thousands):

 

  

Estimated

   As of 
   Useful Life
(In Years)
   June 30,
2021
   December 31,
2020
 
Computers and equipment   2-5   $8,538   $6,447 
Machinery and automobiles   5    601    551 
Furniture and fixtures   3-7    1,051    643 
Software   5    513    554 
Leasehold improvements   3-12    460    236 
         11,163    8,430 
Less: Accumulated depreciation and amortization        (7,405)   (5,622)
         3,758    2,809 
                
Capitalized software development costs   2-3    4,216    3,531 
Less: Accumulated amortization        (2,814)   (2,245)
         1,402    1,287 
Property and equipment, net       $5,160   $4,095 
XML 26 R13.htm IDEA: XBRL DOCUMENT v3.21.2
Intangible assets, net
6 Months Ended
Jun. 30, 2021
Goodwill and Intangible Assets Disclosure [Abstract]  
Intangible assets, net

Note 6 — Intangible assets, net

 

Intangible assets consist of the following (in thousands):

 

   Estimated   As of 
   Useful Life
(In Years)
   June 30,
2021
   December 31,
2020
 
Customer relationships   8-12   $15,971   $4,234 
Tradename   4-10    4,676    3,500 
Non-compete agreements   2    440    440 
         21,087    8,174 
Less: Accumulated amortization        (745)   (49)
Intangible assets, net       $20,342   $8,125 
XML 27 R14.htm IDEA: XBRL DOCUMENT v3.21.2
Other current liabilities
6 Months Ended
Jun. 30, 2021
Other Liabilities, Current [Abstract]  
Other current liabilities

Note 7 — Other current liabilities

 

The components of other current liabilities were as follows (in thousands):

 

   As of 
   June 30,
2021
   December 31,
2020
 
Customer deposits  $767   $731 
Other liabilities   2,137    528 
Contingent consideration payable   5,347    1,947 
Total other current liabilities  $8,251   $3,206 

  

In connection with the acquisition of Daxx on December 14, 2020, the Company recorded a contingent consideration payable, which is a post-closing earn-out consideration, estimated based on fair value. In connection with the acquisition of Tacit on May 29, 2021, the Company recorded a contingent consideration payable, which is a post-closing earn-out consideration, estimated based on fair value.

XML 28 R15.htm IDEA: XBRL DOCUMENT v3.21.2
Income taxes
6 Months Ended
Jun. 30, 2021
Income Tax Disclosure [Abstract]  
Income taxes

Note 8 — Income taxes

 

The Company recorded income tax expense of $2.8 million and income tax benefit of $(0.8) million for the three months ended June 30, 2021 and 2020, respectively. The Company’s effective tax rate was 213.6% and 27.3% for the three months ended June 30, 2021 and 2020, respectively. The increase in effective tax rate for the three months ended June 30, 2021, as compared to the same periods in 2020 was attributable mainly to Section 162 (m) compensation deduction limitations partially offset by stock-based compensation excess tax benefit. Additionally, the United Kingdom’s (“UK”) recently enacted Finance Act 2021 has increased its corporate tax rate to 25% for companies with profits exceeding 250,000 pounds, effective beginning April 1, 2023. As a result of this change in tax law, the Company remeasured its UK deferred taxes which resulted in a $0.5 million discrete tax expense in the three months ended June 30, 2021. The Company recorded income tax expense of $2.0 million and income tax benefit of $(3.5) million for the six months ended June 30, 2021 and 2020, respectively. The Company’s effective tax rate was (132.8)% and 34.1% for the six months ended June 30, 2021 and 2020, respectively. The increase in effective tax rate for the three months ended June 30, 2021, as compared to the same periods in 2020 was attributable mainly to Section 162 (m) compensation deduction limitations partially offset by stock-based compensation excess tax benefit. For the three and six months ended June 30, 2021, the Company used a discrete effective tax rate method to calculate income taxes due to sensitivity of the forecast. The Company determined that small changes in estimated “ordinary” income would result in significant changes in the estimated annual effective tax rate causing material distortion in the year-to-date tax provision. Similarly, for the three and six months ended June 30, 2020, due to uncertainties created by the COVID-19 pandemic, the Company’s estimated annual effective tax rate method would not provide a reliable estimate and therefore was not used.

 

On March 27, 2020, the U.S. President signed into law the CARES Act, an economic stimulus package in response to the COVID-19 global pandemic. The CARES Act contains several corporate income tax provisions, including making remaining alternative minimum tax credits immediately refundable; providing a 5-year carryback of net operating loss carryforwards (“NOLs”) generated in tax years 2018, 2019, and 2020, and removing the 80% taxable income limitation on utilization of those NOLs if carried back to prior tax years or utilized in tax years beginning before 2021; and temporarily liberalizing the interest deductibility rules under Section 163(j) of the Tax Cuts and Jobs Act, by raising the adjusted taxable income limitation from 30% to 50% for tax years 2019 and 2020 and giving taxpayers the election of using 2019 adjusted taxable income for purposes of computing 2020 interest deductibility. The CARES Act did not have a significant impact on the Company’s tax provision for the three and six months ended June 30, 2021 or 2020. As additional guidance is released, the Company will evaluate whether there would need to be a change in the period when such guidance is issued.

XML 29 R16.htm IDEA: XBRL DOCUMENT v3.21.2
Stockholders' equity
6 Months Ended
Jun. 30, 2021
Stockholders' Equity Note [Abstract]  
Stockholders’ equity

Note 9 — Stockholders’ equity

 

The following description summarizes the material terms and provisions of the securities that the Company has authorized.

 

Common stock

 

The Company is authorized to issue 110.0 million shares of common stock. At Closing, March 5, 2020, the Company had issued 50.8 million shares of common stock. As of June 30, 2021 the Company had 54.7 million shares of common stock that were outstanding.

 

Preferred Stock

 

As of December 31, 2019 GDI had 1.0 million shares of no par value shares of preferred stock outstanding convertible on a 1:1basis with GDI’s common stock. At the Closing, the preferred stock outstanding was converted into common stock of the Company, par value $0.0001 per share.

 

Founders and underwriter shares subject to earnout provisions

 

At the Closing, the Company had 1.2 million shares of common stock issued and outstanding subject to earnout provisions (the “Earnout Shares”). The Earnout Shares were subject to transfer restrictions and the owners of the Earnout Shares could not sell, transfer, or otherwise dispose of their respective shares until the respective earnout provisions were achieved as described further below. The Earnout Shares have full ownership rights including the right to vote and receive dividends and other distributions thereon. Dividends and other distributions are not subject to forfeiture in accordance with the Amended and Restated Sponsor Share Letter filed with the SEC on January 26, 2020. The Earnout Shares were eligible to vest and were no longer subject to the transfer restrictions as follows:

 

399,999; 400,000; and 400,001 Earnout Shares would vest if the closing price of the Company’s common stock on the principal exchange on which the securities are listed or quoted have been at or about $12.00; $13.50; and $15.00 per share, respectively, for 20 trading days (which need not be consecutive) over a thirty-trading day period at any time.

 

As of December 31, 2020, none of the Earnout Shares were vested. On January 20, 2021, 399,999 Earnout Shares vested and are no longer subject to transfer restrictions. On March 2, 2021, 400,000 Earnout Shares vested and are no longer subject to transfer restrictions. On March 29, 2021, 400,001 Earnout Shares vested and are no longer subject to transfer restrictions. Accordingly, as of March 29, 2021, all of the Earnout Shares have vested.

 

Warrants

 

On April 12, 2021, the Staff of the SEC issued the “Staff Statement on Accounting and Reporting Considerations for Warrants Issued by Special Purpose Acquisition Companies (“SPACs”)” (the “Staff Statement”). The Staff Statement provided new guidance for all SPAC-related companies regarding the accounting and reporting for their warrants that could result in the warrants issued by SPACs being classified as a liability measured at fair value, with non-cash fair value adjustments reported in earnings at each reporting period. The Company reviewed the accounting for both its public warrants and private warrants following the Staff Statement. The Company determined that the accounting for its public warrants as equity was consistent with the Staff Statement. The Company determined that its private warrants should be accounted for as liabilities but that the related accounting errors during the year ended December 31, 2020 were not material to the required financial statements and disclosures included in its annual report on Form 10-K filed on March 5, 2021. In the three months ended March 31, 2021, the Company began accounting for the private warrants correctly, as disclosed in its quarterly report on Form 10-Q filed on May 6, 2021.

 

As of June 30, 2021, there were a total of 0.01 million private warrants outstanding and 4.2 million public warrants outstanding. As part of its initial public offering (“IPO”), ChaSerg issued 22.0 million units including one share of common stock and one-half of one redeemable warrant. Simultaneously with its IPO, ChaSerg issued 0.6 million private placement units to its sponsor underwriter, each consisting of one common share and one-half of one redeemable warrant. ChaSerg issued 0.1 million units as a result of the conversion of a working capital sponsor loan consisting of one common share and one-half of one redeemable warrant. 

 

Each whole warrant entitles the holder to purchase one share of common stock at a price of $11.50. Warrants may only be exercised for a whole number of shares for common stock. No fractional shares will be issued upon exercise of the warrants. Each warrant is currently exercisable and will expire March 5, 2025 (five years after the completion of the Business Combination), or earlier upon redemption or liquidation.

 

The Company may call the warrants for redemption at a price of $0.01 per warrant upon a minimum 30 days’ prior written notice of redemption, if and only if, the reported last sale price of the Company’s common stock equals or exceeds $18.00 per share for any 20 trading days within a 30-trading day period ending three business days before the Company sends the notice of redemption to the warrant holders; and if and only if, there is a current registration statement in effect with respect to the shares of common stock underlying such warrants.

 

On February 17, 2021, the Company and Riverview Group LLC, an affiliate of Millennium Management LLC, a holder of 6.4 million of the outstanding publicly traded warrants (the “Public Warrants”) entered into a Warrant Exchange Agreement (the “Exchange Agreement”). Pursuant to the Exchange Agreement, the holder exchanged each of its public warrants for 0.3480 shares of the Company’s common stock, i.e., 2.2 million shares. During the three months ended June 30, 2021, the Company entered into agreements with investors resulting in exchange of 0.8 million of its private warrants for 0.3 million shares of the Company's common stock.

XML 30 R17.htm IDEA: XBRL DOCUMENT v3.21.2
Stock-based compensation
6 Months Ended
Jun. 30, 2021
Share-based Payment Arrangement [Abstract]  
Stock-based compensation

Note 10 — Stock-based compensation

 

2018 Stock Plan

 

GDI had previously adopted a stock plan in 2018 (the “2018 Stock Plan”). Under the terms of the 2018 Stock Plan, certain option grants were accelerated in full or by an additional 12 months as a result of the Business Combination. Therefore, on the date of Closing, the acceleration of vesting for 2.6 million stock options resulted in a stock compensation charge and corresponding increase to additional paid-in capital of $2.5 million. Additionally, at Closing, a percentage of outstanding vested GDI stock options were settled in exchange for cash consideration, pursuant to the terms of the Merger Agreement.

 

The remaining portion of outstanding vested options totaling 1.7 million and all unvested options totaling 0.1 million were automatically assumed and converted into options to purchase the Company’s common stock as of the Closing. The number of each participant’s assumed options and the exercise price were adjusted as provided in the Merger Agreement. There was no incremental compensation cost attributable to the incremental fair value of the modified options compared to the original options on the modification date. The assumed stock options will continue to be subject to the same terms and conditions, including vesting schedule terms, in accordance with the 2018 Stock Plan. Exercise prices for 2018 Stock Plan options range between $3.51 and $3.54 per share.

 

The following table sets forth the activity for the 2018 Stock Plan, including the conversion of the vested and unvested options, for the six months ended June 30, 2021:

 

   Options
Outstanding,
in thousands
 
Balance at December 31, 2019   2,734 
Cashed out   (829)
Forfeited   (19)
Balance at March 31, 2020 (prior to exchange ratio conversion)   1,887 
Converted vested balance   4,314 
Converted unvested balance   364 
Balance at March 6, 2020 (post to exchange ratio conversion)   4,678 
Exercised in 2020   (28)
Forfeited/Cancelled in 2020   (50)
Options Outstanding as of December 31, 2020   4,600 
Exercised in quarter ended March 31, 2021   (37)
Forfeited/Cancelled in quarter ended March 31, 2021   (11)
Options Outstanding as of March 31, 2021   4,552 
Exercised in quarter ended June 30, 2021   (257)
Forfeited/Cancelled in quarter ended June 30, 2021   (3)
Options Outstanding as of June 30, 2021   4,291 

 

As of June 30, 2021, since the conversion, a total of 0.08 million shares were forfeited, and 0.32 million shares were exercised for the total proceeds of $0.4 million in cash and 0.13 million shares net withheld for exercise price and taxes. The number of shares exercisable as of June 30, 2021 was 4.1 million with the average exercise price $3.54 per share. The intrinsic value of the 4.3 million total outstanding shares of 2018 Plan Options as of June 30, 2021, was $49.3 million with the remaining contractual term of 7.50 years. The unrecognized compensation expenses related to 2018 Plan options as of June 30, 2021 was $0.2 million, net of forfeitures, to be expensed on a straight-line basis over 2.19 years.

 

2020 Equity Incentive Plan

 

Effective March 5, 2020, our board of directors approved an equity incentive plan (the “2020 Plan”). The 2020 Plan permits the Company to grant a maximum aggregate amount of 16.3 million Incentive Stock Options, Non-Statutory Stock Options (“NSOs”), Restricted Stock, Restricted Stock Units (“RSUs”), Stock Appreciation Rights, Performance Units (“PSUs”), and Performance Shares (“PSAs”) (collectively, the “Awards”) to employees, directors, and consultants of the Company. Our board of directors or any committee appointed by the board has the authority to grant Awards. During the quarter ended June 30, 2021, our board of directors granted 0.11 million NSOs and 0.02 million target PSUs at a maximum payout at 300%. The following table represent the number of shares available for grants from 2020 Equity Incentive Plan (in thousands):

 

  

Available

for grant

 
Available for grant, December 31, 2020   9,881 
Options granted   (231)
RSU granted   (7)
PSU granted (100% target)   (566)
Options forfeited   607 
Traded for taxes (returned to the pool)   1,311 
Available for grant, June 30, 2021   10,996 

Stock Options

 

The total of 0.11 million NSOs shares granted during the quarter ended June 30, 2021 from 2020 Equity Incentive Plan are subject to the following time-based vesting conditions: one-fourth of the NSOs will vest on one year after the grant date; and thereafter one-sixteenth of the NSOs will vest each subsequent three-month anniversary. The NSOs have a ten-year exercise term, and once the NSOs are vested, the recipients have the right to purchase the Company’s stock at a fixed exercise price.

 

The grant date fair value of each NSO was estimated on the date of grant using the Black-Scholes-Merton option pricing model. The key assumptions for 2021 grants are provided in the following table.

 

   2021 
Dividend yield   0%
Expected volatility   40%
Risk-free interest rate   0.96%
Expected term in years   6.11 
Grant date fair value of common stock  $14.98 

 

The Company used a zero percent dividend yield assumption for all Black-Scholes-Merton stock option-pricing calculations. Since the Company’s shares were not publicly traded prior to the Closing and its shares were rarely traded privately, expected volatility is estimated based on the average historical volatility of similar entities with publicly traded shares. The risk-free rate for the expected term of the options is based on the U.S. Treasury yield curve at the date of grant. Expected term is estimated using the simplified method, which takes into account vesting and contractual term. The simplified method is being used to calculate expected term instead of historical experience due to a lack of relevant historical data resulting from changes in option vesting schedules and changes in the pool of employees receiving option grants. The following table summarizes option activity for the six months ended June 30, 2021 (shares in thousands):

 

   Shares   Price (1)   Term (2) 
Options outstanding as of December 31, 2020 (2020 Plan)   1,942   $8.38    9.22 
Options granted   231   $14.98      
Options exercised   (10)  $8.13      
Options forfeited   (284)  $8.55      
Options outstanding as of June 30, 2021 (2020 Plan)   1,879   $9.17    8.76 

 

(1)Represents the weighted average exercise price

(2)Represents weighted average remaining contractual term

 

0.48 million shares of 2020 NSO grants were vested and outstanding as of June 30, 2021. The aggregated fair value of 0.23 million NSOs granted during the six months ending June 30, 2021 was $1.4 million or $5.95 per share. The intrinsic value of the 1.9 million total outstanding shares of 2020 Plan Options as of June 30, 2021, was $11.1 million. The total unrecognized compensation expenses related to 2020 Stock Plan options as of June 30, 2021 was $4.9 million to be expensed on a straight-line basis over the remaining 2.99 years.

 

Restricted Stock Units

 

The RSUs granted to employees generally are subject to the following time-based vesting conditions: one-fourth vest on the first anniversary of the grant; and thereafter one-sixteenth of the RSUs will vest each subsequent three-month anniversary. RSUs granted do not participate in earnings, dividends, and do not have voting rights until vested. RSUs granted to the Board in lieu of the quarterly payments vest immediately.

 

For the quarter ended June 30, 2021, approximately 0.15 million shares were issued upon vesting of the RSUs to the executives and 0.14 million shares were withheld to cover $2.2 million of employees’ tax obligations. 0.3 million unvested RSUs were forfeited as two members of the executive team resigned in June of 2021. The following table summarizes RSU activity for the six months ended June 30, 2021(in thousands):

 

   Shares 
RSUs outstanding as of December 31, 2020 (2020 Plan)   2,996 
RSUs granted   7 
RSUs released   (912)
RSU forfeited   (291)
RSUs outstanding as of June 30, 2021   1,799 

 

The total unrecognized compensation expenses related to 2020 Stock Plan RSUs as of June 30, 2021 was $14.2 million to be expensed on a straight-line basis over 2.7 years.

 

Performance Stock Units

 

On March 2, 2021, the Company granted 0.5 million Performance Stock target shares under the 2020 Stock Plan with the maximum payout capped at 300%. The performance goals for these grants consist of:

 

1)

Year-over-year growth in non-retail revenue for the Performance Period, which is Fiscal Year 2021, expressed as a percentage increase over the fiscal year 2020 non-retail revenue (“Revenue Growth”), and

 

2)

Contribution Margin for the Performance Period as a percentage of Non-Retail revenue for the Performance Period.

 

Fifty percent (50)% of the target number of performance shares granted will vest (if at all) based on the extent of achievement of Revenue Growth for the Performance Period and the remaining fifty percent (50)% of the target number of performance shares granted will vest (if at all) based on the extent of achievement of the Contribution Margin.

 

Additionally, 0.02 million shares of PSU were granted on June 16th, 2021, per a consulting agreement with a former executive with the performance goals being consistent with those described above.

 

Performance shares will be certified and vested no later than March 1, 2022 with the payout shortly after. As of June 30, 2021, the Company assessed the vesting of the Performance Share Units as probable and the payout is estimated at 225% of the target goal. Stock-based compensation expense related to Performance Stock Units granted in 2021 was $6.0 million for the six months ended June 30, 2021. The unrecognized expense for PSUs as of June 30, 2021, was $12.9 million.

 

Stock-Based Compensation Expense

 

The Company classifies awards issued under the stock-based compensation plans as equity. Total compensation expense for the three months ended June 30, 2021 and 2020 was $6.7 million and $3.7 million respectively. Employee stock-based compensation recognized was as follows (in thousands):

 

  

Three months ended

June 30,

  

Six months ended

June 30,

 
   2021   2020   2021   2020 
Cost of revenue  $149   $60   $260   $675 
Engineering, research, and development   617    460    1,171    1,056 
Sales and marketing   453    602    1,244    1,737 
General and administrative   5,456    2,532    9,671    4,990 
Total stock-based compensation  $6,675   $3,654   $12,346   $8,458 

 

As of June 30, 2021, there was approximately $32.2 million of unrecognized stock-based compensation expense.

XML 31 R18.htm IDEA: XBRL DOCUMENT v3.21.2
Earnings per share
6 Months Ended
Jun. 30, 2021
Earnings Per Share [Abstract]  
Earnings per share

Note 11 — Earnings per share

 

The Company computed earnings per share (“EPS”) in conformity with the two-class method required for participating securities. Undistributed earnings allocated to participating securities are subtracted from net income in determining net income attributable to common stockholders. The Company allocated income between its common and preferred shareholders only for the periods the preferred stock was outstanding, which was January 1, 2020 to March 4, 2020. There was no preferred stock outstanding from March 5, 2020 to June 30, 2021. As the Company was in a net loss position for the periods between January 1, 2020 to March 4, 2020 and March 5, 2020 to June 30, 2021, the net loss was allocated entirely to common shareholders.

 

All participating securities are excluded from basic weighted-average number of common shares outstanding. Diluted EPS is computed by dividing net income available to common shareholders by the weighted-average number of shares of common stock outstanding during the period increased to include the number of additional shares of common stock that would have been outstanding if the potentially dilutive securities had been issued. Potentially dilutive securities include outstanding stock options, restricted stock units, performance stock units, and convertible preferred securities. The dilutive effect of potentially dilutive securities is reflected in diluted EPS in order of dilution and by application of the treasury stock method and the if-converted method for stock-based compensation and convertible preferred securities, respectively.

 

The following table sets forth the computation of basic and diluted EPS of common stock as follows (in thousands except per share data):

 

  

Three months ended

June 30,

  

Six months ended

June 30,

 
   2021   2020   2021   2020 
Numerator for basic and diluted loss per share                
Net loss  $(1,483)  $(2,166)  $(3,545)  $(6,762)
                     
Denominator for basic and diluted loss per share                    
Weighted-average shares outstanding – basic and diluted   54,431    49,626    53,044    39,731 
                     
Net loss per share                    
Basic  $(0.03)  $(0.04)  $(0.07)  $(0.17)
Diluted  $(0.03)  $(0.04)  $(0.07)  $(0.17)

The following table represents the number of share equivalents outstanding during the period that were excluded from the calculation of diluted net loss per share attributable to common stockholders because including them would have had an anti-dilutive effect.

 

  

Three months ended

June 30,

  

Six months ended

June 30,

 
Potential common shares (in ‘000s)  2021   2020   2021   2020 
Convertible preferred stock   
    
    
    1,048 
Stock options to purchase common stock   6,666    6,105    6,773    8,571 
Restricted stock units   2,381    2,934    3,002    2,934 
Performance stock units   1,274    1,292    2,726    1,292 
Warrants to purchase common stock   4,963    11,347    11,347    11,347 
Total   15,284    21,678    23,848    25,192 
XML 32 R19.htm IDEA: XBRL DOCUMENT v3.21.2
Commitments and contingencies
6 Months Ended
Jun. 30, 2021
Commitments and Contingencies Disclosure [Abstract]  
Commitments and contingencies

Note 12 — Commitments and contingencies

 

Legal Matters

 

The Company is subject to legal proceedings and claims that arise in the ordinary course of its business. Management evaluates each claim and provides for potential loss when the claim is probable to be paid and reasonably estimable. While adverse decisions in certain of these litigation matters, claims and administrative proceedings could have a material effect on a particular period’s results of operations, subject to the uncertainties inherent in estimating future costs for contingent liabilities, management believes that any future accruals with respect to these currently known contingencies would not have a material effect on the financial condition, liquidity or cash flows of the Company. There were no amounts required to be reflected in these consolidated financial statements related to contingencies.

XML 33 R20.htm IDEA: XBRL DOCUMENT v3.21.2
Subsequent events
6 Months Ended
Jun. 30, 2021
Subsequent Events [Abstract]  
Subsequent events

Note 13 — Subsequent events

 

The Company performed its subsequent event procedures through August 5, 2021, the date these condensed consolidated financial statements were issued.

 

On July 6, 2021, the Company closed a follow-on public offering of 11,615,301 shares of its common stock, which included 5,470,039 shares offered by Grid Dynamics and 6,145,262 shares offered by certain selling stockholders, at a price to the public of $15.03 per share. These amounts include shares sold upon exercise in full of the underwriters' option to purchase additional shares. J.P. Morgan Securities, LLC, William Blair & Company, L.L.C. and Cowen and Company, LLC were acting as joint book-running managers for the offering. Needham & Company, LLC and Cantor Fitzgerald & Co. were acting as co-managers for the offering. The Company did not receive any proceeds from the sale of the shares by the selling stockholders. The net proceeds from this offering, after deducting underwriting discounts and commissions and estimated offering expenses were $78.3 million.

 

On July 28, 2021, the Company announced the redemption of its 2.8 million then outstanding public warrants. Any public warrants not exercised prior to 5:00 p.m., New York City time, on August 30, 2021 will be redeemed at that time for $0.01 per warrant. The public warrants are exercisable at a price of $11.50 per share, representing a total of approximately $31.9 million in potential proceeds to Grid Dynamics if all 2.8 million outstanding warrants are exercised prior to the redemption date.

XML 34 R21.htm IDEA: XBRL DOCUMENT v3.21.2
Accounting Policies, by Policy (Policies)
6 Months Ended
Jun. 30, 2021
Accounting Policies [Abstract]  
Unaudited Interim Financial Statements

Unaudited Interim Financial Statements

 

The accompanying unaudited condensed consolidated financial statements have been prepared in accordance with generally accepted accounting principles in the United States (“U.S. GAAP”) for interim financial information and in accordance with the rules and regulations of the Securities and Exchange Commission (“SEC”). Accordingly, they do not include all of the information and footnotes required by U.S. GAAP for complete financial statements. The unaudited condensed consolidated financial statements reflect all normal and recurring adjustments that are, in the opinion of the Company’s management, necessary for the fair presentation of the results of operations for the interim periods. Operating results for the three and six months ended June 30, 2021 are not necessarily indicative of the results that may be expected for the year ending December 31, 2021. These interim financial statements should be read in conjunction with GDH’s audited financial statements for the year ended December 31, 2020 included in the Company’s annual report on Form 10-K that the Company filed with the SEC on March 5, 2021.

 

Basis of presentation

Basis of presentation

 

The Business Combination was accounted for as a reverse recapitalization in accordance with U.S. GAAP. Although ChaSerg was the legal acquirer, for accounting purposes, GDI was deemed to be the accounting acquirer. GDI was determined to be the accounting acquirer based on evaluation of the following facts and circumstances:

  

GDI holds executive management roles for the Company and those individuals are responsible for the day-to-day operations;

 

GDI’s former owners have the largest minority voting rights in the Company;

 

From a revenue and business operation standpoint, GDI was the larger entity in terms of relative size;

 

GDI’s San Ramon, CA headquarters are the headquarters of the Company; and

 

The intended strategy of the Company will continue GDI’s strategy of driving enterprise-level digital transformation in the Fortune 1000 companies.

 

In conjunction with the Business Combination, outstanding shares of GDI were converted into common stock of the Company, par value $0.0001 per share, shown as a recapitalization, and the net assets of ChaSerg were acquired at historical cost, with no goodwill or other intangible assets recorded. GDI was deemed to be the predecessor of the Company, and the consolidated assets and liabilities and results of operations prior to the Closing (for the years ended December 31, 2019 and 2018 and the period from January 1, 2020 to March 5, 2020) are those of GDI. ChaSerg’s assets and liabilities, which include net cash from the trust of $85.1 million, and results of operations were consolidated with GDI beginning on the Closing.

 

In accordance with guidance applicable to these circumstances, the equity structure has been restated in all comparative periods up to the Closing Date, to reflect the number of shares of the Company’s common stock, $0.0001 par value per share, issued to GDI shareholders in connection with the recapitalization transaction. As such, the shares and corresponding capital amounts and earnings per share related to GDI preferred and common stock prior to the Business Combination have been retroactively restated as shares reflecting the exchange ratio established in the Business Combination.

 

Principles of consolidation

Principles of consolidation

 

The accompanying condensed financial statements include the accounts of the Company and all of its subsidiaries that are directly or indirectly owned or controlled. Intercompany transactions and balances have been eliminated upon consolidation.

 

Use of estimates

Use of estimates

 

The preparation of the consolidated condensed financial statements in accordance with U.S. GAAP requires the Company to make estimates and assumptions that affect the amounts reported in the condensed consolidated financial statements and accompanying notes. Actual results could differ from these estimates and such differences could be material. Significant estimates include allowances for receivables, calculation of accrued liabilities, capitalization of internally developed software, stock-based compensation, contingent consideration payable, determination of fair value, useful lives and recoverability of intangible assets and goodwill, determination of provision for income taxes and uncertain tax positions.

 

Certain significant risks and uncertainties

Certain significant risks and uncertainties

 

The Company is subject to risks, including but not limited to customer concentration, concentrations of credit and foreign currency risks. Refer to the section below for additional information. Additionally, the Company has been impacted by the recent coronavirus (“COVID-19”) pandemic. The global pandemic of COVID-19 has negatively affected the U.S. and global economy, disrupted global supply chains, resulted in significant travel and transport restrictions, including mandated closures and orders to “shelter-in-place,” and created significant disruption of the financial market. In 2020 the COVID-19 pandemic impacted the Company’s revenues, and the Company’s business continues to be exposed to risks and uncertainties related to the pandemic. The impact of the COVID-19 pandemic had been more pronounced with the Company’s retail customers, which depended on keeping their stores open. Additionally, in situations where the Company’s customers encountered financial difficulties, there was a risk associated with the Company’s inability to collect money from customers. In 2020 the Company took several actions to deal with the COVID-19 pandemic. These included enabling its employees to work from home, company-wide salary and compensation cuts, hiring freezes, and suspending all non-essential travel. Some of these actions such as working from home as well as suspending all non-essential travel continues to be currently in place. As the Company's business recovered in 2021, the Company discontinued some of the cost saving measures such as compensation cuts and hiring freezes. The Company now is facing the opposite challenges including employee retention and shortage of talent on the job market. The ultimate impact and the extent to which the COVID-19 pandemic will continue to affect the business, results of operation and financial condition is difficult to predict and depends on numerous evolving factors outside of the Company’s control including: the duration and scope of the pandemic, including from renewed waves and new variants; government, social, business and other actions that have been and will be taken in response to the pandemic; and the effect of the pandemic on short and long-term general economic conditions.

 

Concentrations of credit risk and significant customers

Concentrations of credit risk and significant customers

 

The Company records its accounts receivable and unbilled receivables at their face amounts less allowances. Accounts receivable and unbilled receivables are generally dispersed across the Company’s customers in proportion to their revenue. Three customers individually exceeded 10% of the Company’s accounts receivable balance as of June 30, 2021 and December 31, 2020. One customer individually exceeded 10% of the unbilled receivables as of June 30, 2021 and three customers individually exceeded 10% of the unbilled receivables as of December 31, 2020. Two and three customers individually accounted for greater than 10% of the sales for the three months ended June 30, 2021 and 2020, respectively. Two and three customers individually accounted for greater than 10% of the sales for the six months ended June 30, 2021 and 2020, respectively.

 

Cash and cash equivalents

Cash and cash equivalents

 

The Company considers cash equivalents to be highly liquid investments with original maturities of three months or less from the date of purchase. Cash equivalents are stated at cost, which approximates fair value. At times, cash deposits with banks may exceed federally insured limits.

 

Accounts receivable and allowance for doubtful accounts

Accounts receivable and allowance for doubtful accounts

 

Accounts receivable, less allowance for doubtful accounts, reflect the net realizable value of receivables and approximate fair value. The Company maintains an allowance against accounts receivable for the estimated probable losses on uncollectible accounts. The allowance is based upon historical loss experience, current economic conditions within the industries the Company serves as well as determination of the specific risk related to certain customers. Accounts receivable are charged off against the reserve when, in management’s estimation, further collection efforts would not result in a reasonable likelihood of receipt. The allowance for doubtful accounts balance decreased to $0.2 million as of June 30, 2021 compared to $0.4 million as of December 31, 2020.

 

   As of 
   June 30,
2021
   December 31,
2020
 
   (in thousands) 
Trade accounts receivable  $29,256   $17,308 
Allowance for doubtful accounts   (205)   (418)
Total trade accounts receivable, net  $29,051   $16,890 

 

Unbilled receivables

Unbilled receivables

 

Generally, the Company will not bill customers until the services have been completed. From time-to-time, a service period may overlap with a period-end and the unbilled receivables represent amounts for services performed through period-end, but not yet billed. The unbilled receivable represents the amount expected to be billed and collected for services performed through period-end in accordance with contract terms. The unbilled receivables balances were $4.0 million and $1.8 million as of June 30, 2021 and December 31, 2020, respectively.

 

Goodwill

Goodwill

 

Goodwill represents the excess of purchase price over the fair value of the net assets of businesses acquired. On an annual basis, the Company makes a qualitative assessment to determine if it is more likely than not that the fair value of the reporting unit is less than its carrying amount, including goodwill. If the Company determines that the fair value of the reporting unit is less than its carrying amount, it will perform a quantitative analysis; otherwise, no further evaluation is necessary. For the quantitative impairment assessment, the Company compares the fair value of the reporting unit to its carrying value, including goodwill. The Company uses the discounted cash flow method of the income approach and market approach to determine the fair value of the reporting unit. If the fair value of the reporting unit exceeds the carrying value of the net assets assigned to that unit, goodwill is not impaired, and no further testing is performed. If the carrying value of the net assets assigned to the reporting unit exceeds the fair value of the reporting unit, then the Company will recognize a loss equal to the excess, limited to the total amount of goodwill allocated to that reporting unit. Impairments, if any, are charged directly to earnings. As of June 30, 2021, the Company has a single reporting unit and determined there were no indicators of impairment.

 

Intangible assets

Intangible assets

 

Finite-lived intangible assets are stated at cost less accumulated amortization. Amortization is computed on the straight-line basis over the asset’s useful lives ranging between 2 and 12 years. Intangible assets are evaluated for impairment whenever events or changes in circumstances indicate that the carrying value of the assets may not be fully recoverable. If facts and circumstances indicate that the carrying value might not be recoverable, projected undiscounted net cash flows associated with the related asset or group of assets over their estimated remaining useful lives is compared against their respective carrying amounts. If an asset is found to be impaired, the impairment charge will be measured as the amount by which the carrying amount of an entity exceeds its fair value. As of June 30, 2021, the Company determined there were no indicators of impairment.

 

Revenue recognition

Revenue recognition

 

The Company accounts for a contract with a customer when 1) the parties to the contract have approved the contract and are committed to performing their respective obligations, 2) the contract identifies each party’s rights regarding the goods or services to be transferred, 3) the contract identifies the payment terms for the goods or services to be transferred, 4) the contract has commercial substance, and 5) collection of substantially all consideration pursuant to the contract is probable.

 

The Company derives its revenue from offering a suite of digital engineering and information technology (“IT”) consulting services, including digital transformation strategy, emerging technology, lean labs and legacy system replatforming. For most contracts, the Company uses master agreements to govern the overall relevant terms and conditions of the business arrangement between the Company and its customers. When the Company and a customer enter into a Master Services Agreement (“MSA”), purchases are generally made by the customer via a statement of work (“SOW”) which explicitly references the MSA and specifies the services to be delivered. Fees for these contracts may be in the form of time-and-materials or fixed-fee arrangements. The majority of the Company’s revenues are generated under time-and-material contracts which are billed using hourly rates to determine the amounts to be charged directly to the customer. Fees are billed and collected as stipulated in the contract, and revenue is recognized as services are performed. If there is an uncertainty about the receipt of payment for the services, revenue is recognized to the extent that a significant reversal of revenue would not be probable.

 

Consulting services revenue is a single performance obligation earned through a series of distinct daily services and may include services such as those described above. The Company recognizes revenue for services over time as the customer simultaneously receives and consumes the benefits as the Company performs IT consulting services. For revenue contracts, the customer derives value from the Company providing daily consulting services, and the value derived corresponds to the labor hours expended. Therefore, the Company measures the progress and recognizes revenue using an effort-based input method. For fixed fee contracts, the Company recognizes revenue as the work is performed, the monthly calculation of which is based upon actual labor hours incurred and level of effort expended throughout the duration of the contract.

 

For time-and-material contracts, the Company applies the variable consideration allocation exception. Therefore, instead of allocating the variable consideration to the entire performance obligation, the Company determined the variable consideration should be allocated to each distinct service to which the variable consideration relates, which is providing the customer daily consulting services. The Company also offers volume discounts or early settlement discounts. Volume discounts apply once the customer reaches certain contractual spend thresholds. Early settlement discounts are issued contingent upon the timing of the payment from the customer. If the consideration promised in a contract includes a variable amount, the Company only includes estimated amounts of consideration in the transaction price to the extent it is probable that a significant reversal of cumulative revenue recognized will not occur when the uncertainty associated with the variable consideration is resolved. These estimates may require management to make subjective judgments and to make estimates about the effects of matters inherently uncertain. The determination of whether to constrain consideration in the transaction price are based on information (historical, current and forecasted) that is reasonably available to the Company, taking into consideration the type of customer, the type of transaction and the specific facts and circumstances of each arrangement. Although the Company believes that its approach in developing estimates and its reliance on certain judgments and underlying inputs is reasonable, actual results may differ from management’s estimates, judgments and assumptions. These estimates have historically not been material to the consolidated financial statements.

 

Remaining performance obligation

Remaining performance obligation

 

ASC 606 requires that the Company disclose the aggregate amount of transaction price that is allocated to performance obligations that have not yet been satisfied as of June 30, 2021. This disclosure is not required for:

 

1)contracts with an original duration of one year or less, including contracts that can be terminated for convenience without a substantive penalty,
   
2)contracts for which the Company recognizes revenues based on the right to invoice for services performed,
   
3)variable consideration allocated entirely to a wholly unsatisfied performance obligation or to a wholly unsatisfied promise to transfer a distinct good or service that forms part of a single performance obligation in accordance with ASC 606-10-25-14(b), for which the criteria in ASC 606-10-32-40 have been met, or
   
4)variable consideration in the form of a sales-based or usage-based royalty promised in exchange for a license of intellectual property.

 

All of the Company’s contracts met one or more of these exemptions as of June 30, 2021.

 

Stock-based compensation expense

Stock-based compensation expense

 

Stock-based compensation expense is measured based on the grant-date fair value of the share-based awards. Forfeitures are recognized as incurred. The Company estimates stock options grant-date fair value using the Black-Scholes-Merton option pricing model. The model requires management to make a number of key assumptions including expected volatility, expected term, risk-free interest rate, and expected dividends. The Company evaluates the assumptions used to value its share-based awards on each grant date. The fair market value of Grid Dynamics stock is determined based on the closing price on NASDAQ on the measurement date. The Company amortizes the grant-date fair value of all share-based compensation awards over the employee’s requisite service period for the entire award on a straight-line basis, which is generally the vesting period. For an award with graded vesting that is subject only to a service condition (e.g., time-based vesting), the Company uses the straight-line attribution method under ASC 718 under which they recognize compensation cost on a straight-line basis over the total requisite service period for the entire award (i.e., over the requisite service period of the last separately-vesting tranche of the award). Additionally, the Company applies the “floor” concept so that the amount of compensation cost that is recognized as of any date is at least equal to the grant-date fair value of the vested portion of the award on that date. That is, if the straight-line expense recognized to date is less than the grant date fair value of the award that is legally vested at that date, the company will increase its recognized expense to at least equal the fair value of the vested amount. Refer to Note 10 — Stock-based compensation for additional information.

 

Income taxes

Income taxes

 

The Company follows the asset and liability method of accounting for income taxes. Under this method, deferred income taxes are recognized for the tax consequences of temporary differences between the financial statement carrying amounts and the tax basis of the assets and liabilities. The determination of the provision for income taxes requires significant judgment, the use of estimates and the interpretation and application of complex tax laws. The provision for income taxes reflects a combination of income earned and taxed in the various U.S. federal and state, international and other jurisdictions. Jurisdictional tax law changes, increases or decreases in permanent differences between book and tax items, accruals or adjustments of accruals for tax contingencies or valuation allowances, and the change in the mix of earnings from these taxing jurisdictions all affect the overall effective tax rate.

 

In assessing the realizability of deferred tax assets, management considers whether it is more likely than not that some portion, or all, of the deferred tax assets will not be realized. Management considers all available evidence, both positive and negative, in determining whether a valuation allowance is required. Such evidence includes prior earnings history, the scheduled reversal of deferred tax liabilities, projected future taxable income, carryback and carryforward periods of tax attributes, and tax planning strategies that could potentially enhance the likelihood of realization of a deferred tax asset in making this assessment. The weight given to the positive and negative evidence is commensurate with the extent to which the evidence may be objectively verified.

 

The Company evaluates for uncertain tax positions at each balance sheet date. When it is more likely than not that a position will be sustained upon examination by a tax authority that has full knowledge of all relevant information, the Company measures the amount of tax benefit from the position and records the largest amount of tax benefit that is greater than 50% likely of being realized after settlement with a tax authority. The Company’s policy for interest and/or penalties related to underpayments of income taxes is to include interest and penalties in income tax expense.

 

Recently adopted accounting pronouncements

Recently adopted accounting pronouncements

 

Changes to U.S. GAAP are established by the Financial Accounting Standards Board (the “FASB”), in the form of Accounting Standards Updates (“ASUs”), to the FASB’s ASC. The Company has elected not to opt out of the extended transition period and thus when a standard is issued or revised and it has different application dates for public or private companies, the Company, as an emerging growth company, can adopt the new or revised standard at the time private companies adopt the new or revised standard.

 

In December 2019, the FASB issued Accounting Standard Update No. 2019-12, Income Taxes (Topic 740): Simplifying the Accounting for Income Taxes (ASU 2019-12), which simplifies the accounting for income taxes by removing certain exceptions to the general principles and also simplification of areas such as franchise taxes, step-up in tax basis goodwill, separate entity financial statements and interim recognition of enactment of tax laws or rate changes. The update is effective for fiscal years and interim periods within those fiscal years beginning after December 15, 2020, and early adoption is permitted. The Company adopted the standard as of January 1, 2021 and has determined that the adoption of this guidance did not have a material effect on the consolidated financial statements.

 

Recently issued accounting pronouncements

Recently issued accounting pronouncements

 

The Company considered the applicability and impact of all ASUs. ASUs not listed below were assessed and determined to be either not applicable or are expected to have minimal impact on the consolidated financial statements.

 

In February 2016, the FASB issued ASU No. 2016-2, Leases. ASU 2016-2 requires lessees to put most leases on their balance sheet while recognizing expense in a manner similar to existing accounting. ASU 2016-2 states that a lessee would recognize a lease liability for the obligation to make lease payments and a right-to-use asset for the right to use the underlying asset for the lease term. The standard allows for two methods of adoption to recognize and measure leases: retrospectively to each prior period presented in the financial statements with the cumulative effect of initially applying the guidance recognized at the beginning of the earliest comparative period presented or retrospectively at the beginning of the period of adoption with the cumulative effect of initially applying the guidance recognized at the beginning of the period in which the guidance is first applied. Both adoption methods include a number of optional practical expedients that entities may elect to apply. The Company will adopt the standard retrospectively at the beginning of the period of adoption with the cumulative effect of initially applying the guidance recognized at the beginning of the period in which the guidance is first applied. The new accounting guidance is effective for the Company for fiscal periods beginning after December 15, 2021. The Company expects the impact to be material but has not yet determined the impact that the adoption of this guidance will have on the consolidated financial statements.

 

In June 2016, the FASB issued ASU 2016-13, Financial Instruments-Credit Losses (Topic 326) — Measurement of Credit Losses on Financial Instruments. Topic 326 was subsequently amended by ASU 2019-4, Codification Improvements to Topic 326, Financial Instruments — Credit Losses, ASU 2019-5, Financial Instruments — Credit Losses (Topic 326): Targeted Transition Relief, and clarified the guidance with the release of ASU 2020-2 Financial Instruments—Credit Losses (Topic 326) and Leases (Topic 842). These ASUs replace the current incurred loss impairment methodology with a methodology that reflects expected credit losses measured at amortized cost and certain other instruments, including loans, held-to-maturity debt securities, net investments in leases, and off-balance sheet credit exposures. The update is effective for fiscal years beginning after December 15, 2022, and interim periods with fiscal years after December 15, 2022. The Company has not yet determined the impact that the adoption of this guidance will have on the consolidated financial statements.

 

In March 2020, FASB issued ASU No. 2020-3, Codification to Financial Instruments. This ASU improves and clarifies various financial instruments topics, including the current expected credit losses standard issued in 2016. The ASU includes seven different issues that describe the areas of improvement and the related amendments to U.S. GAAP, intended to make the standards easier to understand and apply by eliminating inconsistencies and providing clarifications. The amendments related to Issue 1, Issue 2, Issue 3, Issue 4, and Issue 5 were effective upon issuance of this update. The new guidance did not have a material impact on the consolidated financial statements. The amendments related to Issue 6 and Issue 7 are effective for the Company the earlier of January 1, 2023 or when the Company adopts ASU 2016-13, if early adopted. The Company is currently evaluating the impact these topics will have on the consolidated financial statements.

XML 35 R22.htm IDEA: XBRL DOCUMENT v3.21.2
Basis of presentation and summary of significant accounting policies (Tables)
6 Months Ended
Jun. 30, 2021
Accounting Policies [Abstract]  
Schedule of accounts receivable and allowance for doubtful accounts
   As of 
   June 30,
2021
   December 31,
2020
 
   (in thousands) 
Trade accounts receivable  $29,256   $17,308 
Allowance for doubtful accounts   (205)   (418)
Total trade accounts receivable, net  $29,051   $16,890 

 

XML 36 R23.htm IDEA: XBRL DOCUMENT v3.21.2
Business combination (Tables)
6 Months Ended
Jun. 30, 2021
Business Combinations [Abstract]  
Schedule of consideration for business combination
Shares transferred at Closing   27,006 
Less: Post-Closing share adjustment   (857)
Total shares transferred at Closing   26,149 
Value per share  $10.19 
Total share consideration  $266,459 
Plus: Cash transferred to GDI stockholders   130,000 
Closing merger consideration  $396,459 

 

XML 37 R24.htm IDEA: XBRL DOCUMENT v3.21.2
Acquisition of Tacit Knowledge Inc. (Tables)
6 Months Ended
Jun. 30, 2021
Business Combination Acquisition Disclosure [Abstract]  
Schedule of estimated fair values of the assets acquired and liabilities
Fair market values    
Current assets  $9,145 
Property, plant and equipment   466 
Customer relationships   11,737 
Tradename   1,176 
Goodwill   20,603 
Total assets acquired  $43,127 
      
Accounts payable and accrued expenses  $(3,675)
Deferred taxes   (2,500)
Total liabilities assumed  $(6,175)
Purchase price allocation  $36,952 

 

Schedule of fair value of identifiable intangible assets
(In thousands)  Fair Value   Useful Life  Amortization
method
Customer relationships  $11,737   12 years  Straight-line
Tacit tradename   1,176   4 years  Accelerated
Total identified intangible assets  $12,913       

 

Schedule of business acquisition pro forma information
   Six Months Ended
June 30,
 
(Unaudited)  2021   2020 
Revenue  $94,842   $70,422 
Net loss  $(1,755)  $(6,629)
Loss per share  $(0.03)  $(0.17)
XML 38 R25.htm IDEA: XBRL DOCUMENT v3.21.2
Property and Equipment, net (Tables)
6 Months Ended
Jun. 30, 2021
Property, Plant and Equipment [Abstract]  
Schedule of property and equipment
  

Estimated

   As of 
   Useful Life
(In Years)
   June 30,
2021
   December 31,
2020
 
Computers and equipment   2-5   $8,538   $6,447 
Machinery and automobiles   5    601    551 
Furniture and fixtures   3-7    1,051    643 
Software   5    513    554 
Leasehold improvements   3-12    460    236 
         11,163    8,430 
Less: Accumulated depreciation and amortization        (7,405)   (5,622)
         3,758    2,809 
                
Capitalized software development costs   2-3    4,216    3,531 
Less: Accumulated amortization        (2,814)   (2,245)
         1,402    1,287 
Property and equipment, net       $5,160   $4,095 
XML 39 R26.htm IDEA: XBRL DOCUMENT v3.21.2
Intangible assets, net (Tables)
6 Months Ended
Jun. 30, 2021
Goodwill and Intangible Assets Disclosure [Abstract]  
Schedule of Intangible assets
   Estimated   As of 
   Useful Life
(In Years)
   June 30,
2021
   December 31,
2020
 
Customer relationships   8-12   $15,971   $4,234 
Tradename   4-10    4,676    3,500 
Non-compete agreements   2    440    440 
         21,087    8,174 
Less: Accumulated amortization        (745)   (49)
Intangible assets, net       $20,342   $8,125 
XML 40 R27.htm IDEA: XBRL DOCUMENT v3.21.2
Other current liabilities (Tables)
6 Months Ended
Jun. 30, 2021
Other Liabilities, Current [Abstract]  
Schedule of other current liabilities
   As of 
   June 30,
2021
   December 31,
2020
 
Customer deposits  $767   $731 
Other liabilities   2,137    528 
Contingent consideration payable   5,347    1,947 
Total other current liabilities  $8,251   $3,206 

  

XML 41 R28.htm IDEA: XBRL DOCUMENT v3.21.2
Stock-based compensation (Tables)
6 Months Ended
Jun. 30, 2021
Share-based Payment Arrangement [Abstract]  
Schedule of conversion of the vested and unvested options
   Options
Outstanding,
in thousands
 
Balance at December 31, 2019   2,734 
Cashed out   (829)
Forfeited   (19)
Balance at March 31, 2020 (prior to exchange ratio conversion)   1,887 
Converted vested balance   4,314 
Converted unvested balance   364 
Balance at March 6, 2020 (post to exchange ratio conversion)   4,678 
Exercised in 2020   (28)
Forfeited/Cancelled in 2020   (50)
Options Outstanding as of December 31, 2020   4,600 
Exercised in quarter ended March 31, 2021   (37)
Forfeited/Cancelled in quarter ended March 31, 2021   (11)
Options Outstanding as of March 31, 2021   4,552 
Exercised in quarter ended June 30, 2021   (257)
Forfeited/Cancelled in quarter ended June 30, 2021   (3)
Options Outstanding as of June 30, 2021   4,291 

 

Schedule of board of directors approved an equity incentive plan
  

Available

for grant

 
Available for grant, December 31, 2020   9,881 
Options granted   (231)
RSU granted   (7)
PSU granted (100% target)   (566)
Options forfeited   607 
Traded for taxes (returned to the pool)   1,311 
Available for grant, June 30, 2021   10,996 

Schedule of estimated grant using the black-scholes
   2021 
Dividend yield   0%
Expected volatility   40%
Risk-free interest rate   0.96%
Expected term in years   6.11 
Grant date fair value of common stock  $14.98 

 

Schedule of dividend yield assumption for all black-scholes stock option-pricing
   Shares   Price (1)   Term (2) 
Options outstanding as of December 31, 2020 (2020 Plan)   1,942   $8.38    9.22 
Options granted   231   $14.98      
Options exercised   (10)  $8.13      
Options forfeited   (284)  $8.55      
Options outstanding as of June 30, 2021 (2020 Plan)   1,879   $9.17    8.76 

 

Schedule of employees’ tax obligations
   Shares 
RSUs outstanding as of December 31, 2020 (2020 Plan)   2,996 
RSUs granted   7 
RSUs released   (912)
RSU forfeited   (291)
RSUs outstanding as of June 30, 2021   1,799 

 

Schedule of employee stock-based compensation recognized
  

Three months ended

June 30,

  

Six months ended

June 30,

 
   2021   2020   2021   2020 
Cost of revenue  $149   $60   $260   $675 
Engineering, research, and development   617    460    1,171    1,056 
Sales and marketing   453    602    1,244    1,737 
General and administrative   5,456    2,532    9,671    4,990 
Total stock-based compensation  $6,675   $3,654   $12,346   $8,458 

 

XML 42 R29.htm IDEA: XBRL DOCUMENT v3.21.2
Earnings per share (Tables)
6 Months Ended
Jun. 30, 2021
Earnings Per Share [Abstract]  
Schedule of computation of basic and diluted earnings per share
  

Three months ended

June 30,

  

Six months ended

June 30,

 
   2021   2020   2021   2020 
Numerator for basic and diluted loss per share                
Net loss  $(1,483)  $(2,166)  $(3,545)  $(6,762)
                     
Denominator for basic and diluted loss per share                    
Weighted-average shares outstanding – basic and diluted   54,431    49,626    53,044    39,731 
                     
Net loss per share                    
Basic  $(0.03)  $(0.04)  $(0.07)  $(0.17)
Diluted  $(0.03)  $(0.04)  $(0.07)  $(0.17)

Schedule of diluted net income/(loss) per share attributable to common stockholders
  

Three months ended

June 30,

  

Six months ended

June 30,

 
Potential common shares (in ‘000s)  2021   2020   2021   2020 
Convertible preferred stock   
    
    
    1,048 
Stock options to purchase common stock   6,666    6,105    6,773    8,571 
Restricted stock units   2,381    2,934    3,002    2,934 
Performance stock units   1,274    1,292    2,726    1,292 
Warrants to purchase common stock   4,963    11,347    11,347    11,347 
Total   15,284    21,678    23,848    25,192 
XML 43 R30.htm IDEA: XBRL DOCUMENT v3.21.2
Background and nature of operations (Details)
Mar. 05, 2020
Merger Agreement [Member]  
Background and nature of operations (Details) [Line Items]  
Business combination description On March 5, 2020 (the “Closing”), the Company consummated its business combination with Grid Dynamics International, Inc. (“GDI”) pursuant to the Agreement and Plan of Merger (the “Merger Agreement”), dated November 13, 2019 (the “Business Combination”). In connection with the Closing, the Company changed its name from ChaSerg Technology Acquisition Corp. to Grid Dynamics Holdings, Inc. The Company’s common stock is now listed on the NASDAQ under the symbol “GDYN” and warrants to purchase the common stock at an exercise price of $11.50 per share are listed on the NASDAQ under the symbol “GDYNW.”
XML 44 R31.htm IDEA: XBRL DOCUMENT v3.21.2
Basis of presentation and summary of significant accounting policies (Details)
6 Months Ended 12 Months Ended
Jun. 30, 2021
USD ($)
$ / shares
Jun. 30, 2020
Dec. 31, 2020
USD ($)
$ / shares
Basis of presentation and summary of significant accounting policies (Details) [Line Items]      
Common stock,par value (in Dollars per share) | $ / shares $ 0.0001   $ 0.0001
Cash proceeds from trust account (in Dollars) $ 85,100,000    
Number of customers 2 3  
Unbilled receivables (in Dollars) $ 3,997,000   $ 1,799,000
Decrease allowance for doubtful accounts (in Dollars) 200,000   400,000
Unbilled receivables (in Dollars) $ 4,000,000.0   $ 1,800,000
Income tax percentage 50.00%    
Accounts Receivable [Member]      
Basis of presentation and summary of significant accounting policies (Details) [Line Items]      
Number of customers 3   3
Concentration risk percentage 10.00%   10.00%
Unbilled Receivables [Member]      
Basis of presentation and summary of significant accounting policies (Details) [Line Items]      
Number of customers 1   3
Concentration risk percentage 10.00%    
Unbilled receivables (in Dollars) $ 0.10   $ 0.10
Sales [Member]      
Basis of presentation and summary of significant accounting policies (Details) [Line Items]      
Number of customers 2 3  
Concentration risk percentage 10.00% 10.00%  
Minimum [Member]      
Basis of presentation and summary of significant accounting policies (Details) [Line Items]      
Intangible assets useful life 2 years    
Maximum [Member]      
Basis of presentation and summary of significant accounting policies (Details) [Line Items]      
Intangible assets useful life 12 years    
Common stock [Member]      
Basis of presentation and summary of significant accounting policies (Details) [Line Items]      
Common stock,par value (in Dollars per share) | $ / shares $ 0.0001    
XML 45 R32.htm IDEA: XBRL DOCUMENT v3.21.2
Basis of presentation and summary of significant accounting policies (Details) - Schedule of accounts receivable and allowance for doubtful accounts - USD ($)
$ in Thousands
Jun. 30, 2021
Dec. 31, 2020
Schedule of accounts receivable and allowance for doubtful accounts [Abstract]    
Trade accounts receivable $ 29,256 $ 17,308
Allowance for doubtful accounts (205) (418)
Total trade accounts receivable, net $ 29,051 $ 16,890
XML 46 R33.htm IDEA: XBRL DOCUMENT v3.21.2
Business combination (Details)
$ / shares in Units, shares in Millions, $ in Millions
6 Months Ended
Mar. 05, 2020
Jun. 30, 2021
USD ($)
$ / shares
shares
Sep. 30, 2006
Business combination (Details) [Line Items]      
Business combination, description ChaSerg consummated its business combination with GDI pursuant to the Merger Agreement. Immediately following the Business Combination, there were 50.8 million shares of common stock with a par value of $0.0001, and 11.3 million warrants outstanding. The aggregate consideration for the Business Combination was $396.5 million, consisting of $130.0 million in cash and 27.0 million shares of ChaSerg’s common stock valued at $10.19 per share, less a post-Closing share adjustment amount of 0.9 million shares which were placed in escrow post-Closing. The shares transferred at Closing included 4.3 million options to purchase the Company’s shares that were vested, outstanding and unexercised, which were determined using 1.7 million vested options at Closing converted at an exchange ratio of approximately 2.48. Additionally, 0.4 million options to purchase the Company’s common stock that were unvested, outstanding and unexercised were assumed by the Company, which were determined using 0.1 million unvested options at Closing converted at an exchange ratio of approximately 2.48.  
Number of companies     1,000
Sale of stock, description   Reported shares and earnings per share available to holders of the Company’s common stock, prior to the Business Combination, have been retroactively restated as shares reflecting the exchange ratio established in the Business Combination (approximately 1.685 GDH shares to 1.0 GDI share).  
Shares redeemed | shares   0.1  
Legal and professional fees   $ 4.7  
Business combination cost description   In connection with the Business Combination, all outstanding retention bonus obligations from a 2017 acquisition totaling $3.4 million were accelerated and paid in full to Grid Dynamics’ personnel immediately prior to the Closing and were recorded in cost of revenue and operating expenses in the consolidated financial statements.  
Series of Individually Immaterial Business Acquisitions [Member]      
Business combination (Details) [Line Items]      
Price per share | $ / shares   $ 10.21  
Reduction of Proceeds [Member]      
Business combination (Details) [Line Items]      
Legal and professional fees   $ 4.1  
General and Administrative Expense [Member]      
Business combination (Details) [Line Items]      
Legal and professional fees   $ 0.6  
XML 47 R34.htm IDEA: XBRL DOCUMENT v3.21.2
Business combination (Details) - Schedule of consideration for business combination
$ / shares in Units, $ in Thousands
6 Months Ended
Jun. 30, 2021
USD ($)
$ / shares
shares
Schedule of consideration for business combination [Abstract]  
Shares transferred at Closing | shares 27,006
Less: Post-Closing share adjustment | shares (857)
Total shares transferred at Closing | shares 26,149
Value per share | $ / shares $ 10.19
Total share consideration | $ $ 266,459
Plus: Cash transferred to GDI stockholders | $ 130,000
Closing merger consideration | $ $ 396,459
XML 48 R35.htm IDEA: XBRL DOCUMENT v3.21.2
Acquisition of Tacit Knowledge Inc. (Details)
$ in Millions
6 Months Ended
Jun. 30, 2021
USD ($)
Business Combination Acquisition Disclosure [Abstract]  
Cash consideration, descriprtion The total purchase consideration is $37.0 million and included cash consideration of $33.6 million paid at closing and fair value of the contingent consideration at the date of the acquisition of $3.4 million. The maximum amount of potential contingent cash consideration is $5.0 million.
Good will $ 20.6
Revenue 2.5
Net income 0.5
Consultant fees $ 0.6
XML 49 R36.htm IDEA: XBRL DOCUMENT v3.21.2
Acquisition of Tacit Knowledge Inc. (Details) - Schedule of estimated fair values of the assets acquired and liabilities
$ in Thousands
May 29, 2021
USD ($)
Fair market values  
Current assets $ 9,145
Property, plant and equipment 466
Customer relationships 11,737
Tradename 1,176
Goodwill 20,603
Total assets acquired 43,127
Accounts payable and accrued expenses (3,675)
Deferred taxes (2,500)
Total liabilities assumed (6,175)
Purchase price allocation $ 36,952
XML 50 R37.htm IDEA: XBRL DOCUMENT v3.21.2
Acquisition of Tacit Knowledge Inc. (Details) - Schedule of fair value of identifiable intangible assets - Series of Individually Immaterial Business Acquisitions [Member]
$ in Thousands
6 Months Ended
Jun. 30, 2021
USD ($)
Acquisition of Tacit Knowledge Inc. (Details) - Schedule of fair value of identifiable intangible assets [Line Items]  
Bunsiness acquisition fair value $ 12,913
Customer relationships [Member]  
Acquisition of Tacit Knowledge Inc. (Details) - Schedule of fair value of identifiable intangible assets [Line Items]  
Bunsiness acquisition fair value $ 11,737
Business acquisition useful life 12 years
Bunsiness acquisition amortization method Straight-line
Tacit trade name [Member]  
Acquisition of Tacit Knowledge Inc. (Details) - Schedule of fair value of identifiable intangible assets [Line Items]  
Bunsiness acquisition fair value $ 1,176
Business acquisition useful life 4 years
Bunsiness acquisition amortization method Accelerated
XML 51 R38.htm IDEA: XBRL DOCUMENT v3.21.2
Acquisition of Tacit Knowledge Inc. (Details) - Schedule of business acquisition pro forma information - USD ($)
3 Months Ended 6 Months Ended
Jun. 30, 2021
Mar. 31, 2021
Jun. 30, 2020
Mar. 31, 2020
Jun. 30, 2021
Jun. 30, 2020
Acquisition of Tacit Knowledge Inc. (Details) - Schedule of business acquisition pro forma information [Line Items]            
Net loss $ 1,483,000 $ 2,062,000 $ 2,166,000 $ 4,596,000    
Loss per share (in Dollars per share)         $ (0.03) $ (0.17)
Tacit Knowledge Inc [Member]            
Acquisition of Tacit Knowledge Inc. (Details) - Schedule of business acquisition pro forma information [Line Items]            
Revenue         $ 94,842 $ 70,422
Net loss         $ (1,755) $ (6,629)
XML 52 R39.htm IDEA: XBRL DOCUMENT v3.21.2
Property and Equipment, net (Details) - Schedule of property and equipment - USD ($)
$ in Thousands
6 Months Ended
Jun. 30, 2021
Dec. 31, 2020
Property, Plant and Equipment [Line Items]    
Capitalized software development costs $ 11,163 $ 8,430
Less: Accumulated depreciation and amortization (7,405) (5,622)
Tangible property and equipment, net 3,758 2,809
Less: Accumulated amortization (2,814) (2,245)
Intangible property and equipment, net 1,402 1,287
Property and equipment, net 5,160 4,095
Computers and equipment [Member]    
Property, Plant and Equipment [Line Items]    
Capitalized software development costs $ 8,538 6,447
Machinery and automobiles [Member]    
Property, Plant and Equipment [Line Items]    
Estimated Useful Life (In Years) 5 years  
Capitalized software development costs $ 601 551
Furniture and fixtures [Member]    
Property, Plant and Equipment [Line Items]    
Capitalized software development costs $ 1,051 643
Software [Member]    
Property, Plant and Equipment [Line Items]    
Estimated Useful Life (In Years) 5 years  
Capitalized software development costs $ 513 554
Leasehold improvements [Member]    
Property, Plant and Equipment [Line Items]    
Capitalized software development costs 460 236
Capitalized software development costs [Member]    
Property, Plant and Equipment [Line Items]    
Capitalized software development costs $ 4,216 $ 3,531
Minimum [Member]    
Property, Plant and Equipment [Line Items]    
Estimated Useful Life (In Years) 2 years  
Minimum [Member] | Computers and equipment [Member]    
Property, Plant and Equipment [Line Items]    
Estimated Useful Life (In Years) 2 years  
Minimum [Member] | Furniture and fixtures [Member]    
Property, Plant and Equipment [Line Items]    
Estimated Useful Life (In Years) 3 years  
Minimum [Member] | Leasehold improvements [Member]    
Property, Plant and Equipment [Line Items]    
Estimated Useful Life (In Years) 3 years  
Minimum [Member] | Capitalized software development costs [Member]    
Property, Plant and Equipment [Line Items]    
Estimated Useful Life (In Years) 2 years  
Maximum [Member]    
Property, Plant and Equipment [Line Items]    
Estimated Useful Life (In Years) 12 years  
Maximum [Member] | Computers and equipment [Member]    
Property, Plant and Equipment [Line Items]    
Estimated Useful Life (In Years) 5 years  
Maximum [Member] | Furniture and fixtures [Member]    
Property, Plant and Equipment [Line Items]    
Estimated Useful Life (In Years) 7 years  
Maximum [Member] | Leasehold improvements [Member]    
Property, Plant and Equipment [Line Items]    
Estimated Useful Life (In Years) 12 years  
Maximum [Member] | Capitalized software development costs [Member]    
Property, Plant and Equipment [Line Items]    
Estimated Useful Life (In Years) 3 years  
XML 53 R40.htm IDEA: XBRL DOCUMENT v3.21.2
Intangible assets, net (Details) - Schedule of Intangible assets - USD ($)
$ in Thousands
6 Months Ended
Jun. 30, 2021
Dec. 31, 2020
Finite-Lived Intangible Assets [Line Items]    
Total Intangible assets $ 21,087 $ 8,174
Less: Accumulated amortization (745) (49)
Intangible assets, net 20,342 8,125
Customer Relationships [Member]    
Finite-Lived Intangible Assets [Line Items]    
Total Intangible assets 15,971 4,234
Tradename [Member}    
Finite-Lived Intangible Assets [Line Items]    
Total Intangible assets $ 4,676 3,500
Non-Compete Agreements [Member]    
Finite-Lived Intangible Assets [Line Items]    
Estimated Useful Life 2 years  
Total Intangible assets $ 440 $ 440
Minimum [Member]    
Finite-Lived Intangible Assets [Line Items]    
Estimated Useful Life 2 years  
Minimum [Member] | Customer Relationships [Member]    
Finite-Lived Intangible Assets [Line Items]    
Estimated Useful Life 8 years  
Minimum [Member] | Tradename [Member}    
Finite-Lived Intangible Assets [Line Items]    
Estimated Useful Life 4 years  
Maximum [Member]    
Finite-Lived Intangible Assets [Line Items]    
Estimated Useful Life 12 years  
Maximum [Member] | Customer Relationships [Member]    
Finite-Lived Intangible Assets [Line Items]    
Estimated Useful Life 12 years  
Maximum [Member] | Tradename [Member}    
Finite-Lived Intangible Assets [Line Items]    
Estimated Useful Life 10 years  
XML 54 R41.htm IDEA: XBRL DOCUMENT v3.21.2
Other current liabilities (Details) - Schedule of other current liabilities - USD ($)
$ in Thousands
Jun. 30, 2021
Dec. 31, 2020
Schedule of other current liabilities [Abstract]    
Customer deposits $ 767 $ 731
Other liabilities 2,137 528
Contingent consideration payable 5,347 1,947
Total other current liabilities $ 8,251 $ 3,206
XML 55 R42.htm IDEA: XBRL DOCUMENT v3.21.2
Income taxes (Details) - USD ($)
$ in Millions
1 Months Ended 3 Months Ended 6 Months Ended
Apr. 01, 2023
Mar. 27, 2020
Jun. 30, 2021
Jun. 30, 2020
Jun. 30, 2021
Jun. 30, 2020
Income Tax Disclosure [Abstract]            
Income tax expense/(benefit)     $ 2.8 $ (0.8) $ 2.0 $ (3.5)
Effective tax rate, percentage     213.60% 27.30% (132.80%) 34.10%
Corporate tax rate         25.00%  
Profits exceeding pounds 250,000          
Discrete tax expense     $ 0.5      
CARES Act description   The CARES Act contains several corporate income tax provisions, including making remaining alternative minimum tax credits immediately refundable; providing a 5-year carryback of net operating loss carryforwards (“NOLs”) generated in tax years 2018, 2019, and 2020, and removing the 80% taxable income limitation on utilization of those NOLs if carried back to prior tax years or utilized in tax years beginning before 2021; and temporarily liberalizing the interest deductibility rules under Section 163(j) of the Tax Cuts and Jobs Act, by raising the adjusted taxable income limitation from 30% to 50% for tax years 2019 and 2020 and giving taxpayers the election of using 2019 adjusted taxable income for purposes of computing 2020 interest deductibility.        
XML 56 R43.htm IDEA: XBRL DOCUMENT v3.21.2
Stockholders' equity (Details) - USD ($)
$ / shares in Units, $ in Millions
1 Months Ended 3 Months Ended 6 Months Ended
Mar. 02, 2021
Mar. 29, 2021
Jan. 20, 2021
Jun. 30, 2021
Jun. 30, 2021
Feb. 17, 2021
Dec. 31, 2020
Mar. 05, 2020
Stockholders' equity (Details) [Line Items]                
Common stock, shares authorized       110,000,000 110,000,000   110,000,000  
Common stock, shares issued       54,728,586 54,728,586   50,878,780  
Common stock, shares outstanding       54,728,586 54,728,586   50,878,780  
Earnout shares vested 400,000 400,001 399,999   150,000      
Warrants outstanding       10,000.00 10,000.00      
Warrants outstanding shares         4,200,000      
Issuance of private placement shares         600,000      
Shares issued on conversion of a working capital         100,000      
Price per share (in Dollars per share)       $ 11.50 $ 11.50      
Warrant price per share (in Dollars per share)       $ 0.01 $ 0.01      
Private placement warrants       800,000        
Exchange common stock (in Dollars)       $ 0.3        
Voting rights description         The Earnout Shares were subject to transfer restrictions and the owners of the Earnout Shares could not sell, transfer, or otherwise dispose of their respective shares until the respective earnout provisions were achieved as described further below.      
Description of debt maturity date         Each warrant is currently exercisable and will expire March 5, 2025 (five years after the completion of the Business Combination), or earlier upon redemption or liquidation.      
GDI [Member]                
Stockholders' equity (Details) [Line Items]                
Preferred shares, par value (in Dollars per share)       $ 0.0001 $ 0.0001      
Affiliated Entity [Member]                
Stockholders' equity (Details) [Line Items]                
Outstanding publicly traded warrants (in Dollars)           $ 6.4    
(in Dollars per share)           $ 0.3480    
Common Stock [Member]                
Stockholders' equity (Details) [Line Items]                
Common stock, shares authorized       110.0 110.0      
Common stock, shares issued               50.8
Common stock, shares outstanding       54.7 54.7      
Earnout shares, description         At the Closing, the Company had 1.2 million shares of common stock issued and outstanding subject to earnout provisions (the “Earnout Shares”). The Earnout Shares were subject to transfer restrictions and the owners of the Earnout Shares could not sell, transfer, or otherwise dispose of their respective shares until the respective earnout provisions were achieved as described further below. The Earnout Shares have full ownership rights including the right to vote and receive dividends and other distributions thereon. Dividends and other distributions are not subject to forfeiture in accordance with the Amended and Restated Sponsor Share Letter filed with the SEC on January 26, 2020. The Earnout Shares were eligible to vest and were no longer subject to the transfer restrictions as follows: 399,999; 400,000; and 400,001 Earnout Shares would vest if the closing price of the Company’s common stock on the principal exchange on which the securities are listed or quoted have been at or about $12.00; $13.50; and $15.00 per share, respectively, for 20 trading days (which need not be consecutive) over a thirty-trading day period at any time. As of December 31, 2020, none of the Earnout Shares were vested. On January 20, 2021, 399,999 Earnout Shares vested and are no longer subject to transfer restrictions. On March 2, 2021, 400,000 Earnout Shares vested and are no longer subject to transfer restrictions. On March 29, 2021, 400,001 Earnout Shares vested and are no longer subject to transfer restrictions. Accordingly, as of March 29, 2021, all of the Earnout Shares have vested. Warrants On April 12, 2021, the Staff of the SEC issued the “Staff Statement on Accounting and Reporting Considerations for Warrants Issued by Special Purpose Acquisition Companies (“SPACs”)” (the “Staff Statement”). The Staff Statement provided new guidance for all SPAC-related companies regarding the accounting and reporting for their warrants that could result in the warrants issued by SPACs being classified as a liability measured at fair value, with non-cash fair value adjustments reported in earnings at each reporting period. The Company reviewed the accounting for both its public warrants and private warrants following the Staff Statement. The Company determined that the accounting for its public warrants as equity was consistent with the Staff Statement. The Company determined that its private warrants should be accounted for as liabilities but that the related accounting errors during the year ended December 31, 2020 were not material to the required financial statements and disclosures included in its annual report on Form 10-K filed on March 5, 2021. In the three months ended March 31, 2021, the Company began accounting for the private warrants correctly, as disclosed in its quarterly report on Form 10-Q filed on May 6, 2021. As of June 30, 2021, there were a total of 0.01 million private warrants outstanding and 4.2 million public warrants outstanding. As part of its initial public offering (“IPO”), ChaSerg issued 22.0 million units including one share of common stock and one-half of one redeemable warrant. Simultaneously with its IPO, ChaSerg issued 0.6 million private placement units to its sponsor underwriter, each consisting of one common share and one-half of one redeemable warrant. ChaSerg issued 0.1 million units as a result of the conversion of a working capital sponsor loan consisting of one common share and one-half of one redeemable warrant.  Each whole warrant entitles the holder to purchase one share of common stock at a price of $11.50. Warrants may only be exercised for a whole number of shares for common stock. No fractional shares will be issued upon exercise of the warrants. Each warrant is currently exercisable and will expire March 5, 2025 (five years after the completion of the Business Combination), or earlier upon redemption or liquidation. The Company may call the warrants for redemption at a price of $0.01 per warrant upon a minimum 30 days’ prior written notice of redemption, if and only if, the reported last sale price of the Company’s common stock equals or exceeds $18.00 per share for any 20 trading days within a 30-trading day period ending three business days before the Company sends the notice of redemption to the warrant holders; and if and only if, there is a current registration statement in effect with respect to the shares of common stock underlying such warrants. On February 17, 2021, the Company and Riverview Group LLC, an affiliate of Millennium Management LLC, a holder of 6.4 million of the outstanding publicly traded warrants (the “Public Warrants”) entered into a Warrant Exchange Agreement (the “Exchange Agreement”). Pursuant to the Exchange Agreement, the holder exchanged each of its public warrants for 0.3480 shares of the Company’s common stock, i.e.      
Price per share (in Dollars per share)       $ 18.00 $ 18.00      
Common stock shares, description         399,999; 400,000; and 400,001 Earnout Shares would vest if the closing price of the Company’s common stock on the principal exchange on which the securities are listed or quoted have been at or about $12.00; $13.50; and $15.00 per share, respectively, for 20 trading days (which need not be consecutive) over a thirty-trading day period at any time.       
Common Stock [Member] | Affiliated Entity [Member]                
Stockholders' equity (Details) [Line Items]                
Outstanding publicly traded warrants (in Dollars)           $ 2.2    
Preferred Stock [Member]                
Stockholders' equity (Details) [Line Items]                
Preferred stock, conversion basis         As of December 31, 2019 GDI had 1.0 million shares of no par value shares of preferred stock outstanding convertible on a 1:1basis with GDI’s common stock. At the Closing, the preferred stock outstanding was converted into common stock of the Company, par value $0.0001 per share. Founders and underwriter shares subject to earnout provisions At the Closing, the Company had 1.2 million shares of common stock issued and outstanding subject to earnout provisions (the “Earnout Shares”). The Earnout Shares were subject to transfer restrictions and the owners of the Earnout Shares could not sell, transfer, or otherwise dispose of their respective shares until the respective earnout provisions were achieved as described further below. The Earnout Shares have full ownership rights including the right to vote and receive dividends and other distributions thereon. Dividends and other distributions are not subject to forfeiture in accordance with the Amended and Restated Sponsor Share Letter filed with the SEC on January 26, 2020. The Earnout Shares were eligible to vest and were no longer subject to the transfer restrictions as follows: 399,999; 400,000; and 400,001 Earnout Shares would vest if the closing price of the Company’s common stock on the principal exchange on which the securities are listed or quoted have been at or about $12.00; $13.50; and $15.00 per share, respectively, for 20 trading days (which need not be consecutive) over a thirty-trading day period at any time. As of December 31, 2020, none of the Earnout Shares were vested. On January 20, 2021, 399,999 Earnout Shares vested and are no longer subject to transfer restrictions. On March 2, 2021, 400,000 Earnout Shares vested and are no longer subject to transfer restrictions. On March 29, 2021, 400,001 Earnout Shares vested and are no longer subject to transfer restrictions. Accordingly, as of March 29, 2021, all of the Earnout Shares have vested. Warrants On April 12, 2021, the Staff of the SEC issued the “Staff Statement on Accounting and Reporting Considerations for Warrants Issued by Special Purpose Acquisition Companies (“SPACs”)” (the “Staff Statement”). The Staff Statement provided new guidance for all SPAC-related companies regarding the accounting and reporting for their warrants that could result in the warrants issued by SPACs being classified as a liability measured at fair value, with non-cash fair value adjustments reported in earnings at each reporting period. The Company reviewed the accounting for both its public warrants and private warrants following the Staff Statement. The Company determined that the accounting for its public warrants as equity was consistent with the Staff Statement. The Company determined that its private warrants should be accounted for as liabilities but that the related accounting errors during the year ended December 31, 2020 were not material to the required financial statements and disclosures included in its annual report on Form 10-K filed on March 5, 2021. In the three months ended March 31, 2021, the Company began accounting for the private warrants correctly, as disclosed in its quarterly report on Form 10-Q filed on May 6, 2021. As of June 30, 2021, there were a total of 0.01 million private warrants outstanding and 4.2 million public warrants outstanding. As part of its initial public offering (“IPO”), ChaSerg issued 22.0 million units including one share of common stock and one-half of one redeemable warrant. Simultaneously with its IPO, ChaSerg issued 0.6 million private placement units to its sponsor underwriter, each consisting of one common share and one-half of one redeemable warrant. ChaSerg issued 0.1 million units as a result of the conversion of a working capital sponsor loan consisting of one common share and one-half of one redeemable warrant.  Each whole warrant entitles the holder to purchase one share of common stock at a price of $11.50. Warrants may only be exercised for a whole number of shares for common stock. No fractional shares will be issued upon exercise of the warrants. Each warrant is currently exercisable and will expire March 5, 2025 (five years after the completion of the Business Combination), or earlier upon redemption or liquidation. The Company may call the warrants for redemption at a price of $0.01 per warrant upon a minimum 30 days’ prior written notice of redemption, if and only if, the reported last sale price of the Company’s common stock equals or exceeds $18.00 per share for any 20 trading days within a 30-trading day period ending three business days before the Company sends the notice of redemption to the warrant holders; and if and only if, there is a current registration statement in effect with respect to the shares of common stock underlying such warrants. On February 17, 2021, the Company and Riverview Group LLC, an affiliate of Millennium Management LLC, a holder of 6.4 million of the outstanding publicly traded warrants (the “Public Warrants”) entered into a Warrant Exchange Agreement (the “Exchange Agreement”). Pursuant to the Exchange Agreement, the holder exchanged each of its public warrants for 0.3480 shares of the Company’s common stock, i.e.      
Preferred stock shares, outstanding       1.0 1.0      
IPO [Member]                
Stockholders' equity (Details) [Line Items]                
Common stock, shares issued       22,000,000.0 22,000,000.0      
XML 57 R44.htm IDEA: XBRL DOCUMENT v3.21.2
Stock-based compensation (Details) - USD ($)
$ / shares in Units, $ in Thousands
1 Months Ended 3 Months Ended 6 Months Ended
Mar. 02, 2021
Mar. 05, 2020
Jul. 16, 2021
Mar. 29, 2021
Jan. 20, 2021
Jun. 30, 2021
Jun. 30, 2021
Jun. 30, 2020
Stock-based compensation (Details) [Line Items]                
Vested options outstanding (in Shares)             1,700,000  
Unvested options outstanding (in Shares)             100,000  
Proceeds from stock options exercised             $ 416 $ 59
Shares withheld exercise price (in Shares)             130,000  
Aggregated fair value granted             $ 1,400  
Exercise Price (in Dollars per share)             $ 5.95  
Issued upon vesting shares (in Shares) 400,000     400,001 399,999   150,000  
Shares withhold to cover (in Shares)             140,000  
Tax obligations             $ 2,200  
Maximum payout, percentage 300.00%              
Contribution margin performance, description             Fifty percent (50)% of the target number of performance shares granted will vest (if at all) based on the extent of achievement of Revenue Growth for the Performance Period and the remaining fifty percent (50)% of the target number of performance shares granted will vest (if at all) based on the extent of achievement of the Contribution Margin.   
Additional shares granted (in Shares)     20,000.00          
Performance Share Units           225.00% 225.00%  
Stock-based compensation expense related             $ 6,000  
Stock based compensation, description             The Company classifies awards issued under the stock-based compensation plans as equity. Total compensation expense for the three months ended June 30, 2021 and 2020 was $6.7 million and $3.7 million respectively.  
Unrecognized stock-based compensation expense             $ 32,200  
NSO [Member]                
Stock-based compensation (Details) [Line Items]                
Options granted             $ 110  
Shares grants vested and outstanding (in Shares)             480,000  
Aggregated fair value granted             $ 230  
Restricted Stock Units (RSUs) [Member]                
Stock-based compensation (Details) [Line Items]                
Restricted stock units unvested             $ 300  
Straight-line basis over term             2 years 8 months 12 days  
Phantom Share Units (PSUs) [Member]                
Stock-based compensation (Details) [Line Items]                
Unrecognized compensation expenses             $ 12,900  
2020 Equity Incentive Plan [Member] | Restricted Stock Units (RSUs) [Member]                
Stock-based compensation (Details) [Line Items]                
Unrecognized compensation expenses             $ 14,200  
2018 Stock Plan [Member]                
Stock-based compensation (Details) [Line Items]                
Stock options vested, shares (in Shares)           2.6 2.6  
Increase to additional paid-in capital             $ 2,500  
Number of shares forfeited (in Shares)             80,000.00  
Shares exercised (in Shares)             320,000  
Proceeds from stock options exercised             $ 400  
Number of shares exercisable (in Shares)           4,100,000 4,100,000  
Average exercise price of shares exercisable (in Dollars per share)           $ 3.54 $ 3.54  
Total outstanding shares (in Shares)             4,300,000  
Intrinsic value           $ 49,300 $ 49,300  
Remaining contractual term             7 years 6 months  
Net of forfeitures             $ 200  
straight-line basis term             2 years 2 months 8 days  
2018 Stock Plan [Member] | Minimum [Member]                
Stock-based compensation (Details) [Line Items]                
Exercise prices (in Dollars per share)           $ 3.51 $ 3.51  
2018 Stock Plan [Member] | Maximum [Member]                
Stock-based compensation (Details) [Line Items]                
Exercise prices (in Dollars per share)           $ 3.54 $ 3.54  
2020 Equity Incentive Plan [Member]                
Stock-based compensation (Details) [Line Items]                
Intrinsic value           $ 11,100 $ 11,100  
straight-line basis term             2 years 11 months 26 days  
Incentive stock options (in Shares)   16,300,000            
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period, Intrinsic Value, Amount Per Share (in Dollars per share)             $ 1,900,000  
Total unrecognized compensation expenses             $ 4,900  
Issuance of option granted (in Shares) 0.5              
2020 Equity Incentive Plan [Member]                
Stock-based compensation (Details) [Line Items]                
Percentage of maximum payout           300.00%    
2020 Equity Incentive Plan [Member] | NSO [Member]                
Stock-based compensation (Details) [Line Items]                
Options granted           $ 110    
2020 Equity Incentive Plan [Member] | Restricted Stock Units (RSUs) [Member]                
Stock-based compensation (Details) [Line Items]                
Options granted           $ 20    
XML 58 R45.htm IDEA: XBRL DOCUMENT v3.21.2
Stock-based compensation (Details) - Schedule of conversion of the vested and unvested options - shares
3 Months Ended 6 Months Ended 9 Months Ended
Mar. 31, 2021
Mar. 31, 2020
Jun. 30, 2021
Dec. 31, 2020
Schedule of conversion of the vested and unvested options [Abstract]        
Options outstanding, balance beginning   2,734    
Options outstanding, Cashed out   (829)    
Options outstanding, Forfeited/Cancelled (11) (19) (3) (50)
Options outstanding, balance ending 4,552   4,291  
Options Outstanding 2018 Plan balance ending       4,600
Options outstanding, Exercised in quarter ended March 31, 2021 (37)   (257)  
Options outstanding, Balance at March 31, 2020 (prior to exchange ratio conversion)   1,887    
Options outstanding, Converted vested balance       4,314
Options outstanding, Converted unvested balance       364
Options outstanding, Balance at March 6, 2020 (post to exchange ratio conversion)       4,678
Options outstanding, Exercised in 2020       (28)
XML 59 R46.htm IDEA: XBRL DOCUMENT v3.21.2
Stock-based compensation (Details) - Schedule of board of directors approved an equity incentive plan
6 Months Ended
Jun. 30, 2021
shares
Schedule of board of directors approved an equity incentive plan [Abstract]  
Available for grant, Available beginning 9,881
Available for grant, Options granted (231)
Available for grant, RSU granted (7)
Available for grant, PSU granted (100% target) (566)
Available for grant, Options forfeited 607
Available for grant, Traded for taxes (returned to the pool) 1,311
Available for grant, Available ending 10,996
XML 60 R47.htm IDEA: XBRL DOCUMENT v3.21.2
Stock-based compensation (Details) - Schedule of estimated grant using the black-scholes
6 Months Ended
Jun. 30, 2021
$ / shares
Schedule of estimated grant using the black-scholes [Abstract]  
Dividend yield 0.00%
Expected volatility 40.00%
Risk-free interest rate 0.96%
Expected term in years 6 years 1 month 9 days
Grant date fair value of common stock (in Dollars per share) $ 14.98
XML 61 R48.htm IDEA: XBRL DOCUMENT v3.21.2
Stock-based compensation (Details) - Schedule of dividend yield assumption for all black-scholes stock option-pricing
6 Months Ended
Jun. 30, 2021
$ / shares
shares
Schedule of dividend yield assumption for all black-scholes stock option-pricing [Abstract]  
Options outstanding, Shares | shares 1,942
Options outstanding, Price | $ / shares $ 8.38 [1]
Options outstanding, Term 9 years 2 months 19 days [2]
Options granted, Shares | shares 231
Options granted, Price | $ / shares $ 14.98 [1]
Options exercised, Shares | shares (10)
Options exercised, Price | $ / shares $ 8.13 [1]
Options forfeited, Shares | shares (284)
Options forfeited, Price | $ / shares $ 8.55 [1]
Options outstanding, Shares | shares 1,879
Options outstanding, Price | $ / shares $ 9.17 [1]
Options outstanding, Term 8 years 9 months 3 days [2]
[1] Represents the weighted average exercise price
[2] Represents weighted average remaining contractual term
XML 62 R49.htm IDEA: XBRL DOCUMENT v3.21.2
Stock-based compensation (Details) - Schedule of employees’ tax obligations
6 Months Ended
Jun. 30, 2021
shares
Schedule of employees’ tax obligations [Abstract]  
RSUs outstanding as of December 31, 2020 (2020 Plan) 2,996
RSUs granted 7
RSUs released (912)
RSU forfeited (291)
RSUs outstanding as of June 30, 2021 1,799
XML 63 R50.htm IDEA: XBRL DOCUMENT v3.21.2
Stock-based compensation (Details) - Schedule of employee stock-based compensation recognized - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2021
Jun. 30, 2020
Jun. 30, 2021
Jun. 30, 2020
Schedule of employee stock-based compensation recognized [Abstract]        
Cost of revenue $ 149 $ 60 $ 260 $ 675
Engineering, research, and development 617 460 1,171 1,056
Sales and marketing 453 602 1,244 1,737
General and administrative 5,456 2,532 9,671 4,990
Total stock-based compensation $ 6,675 $ 3,654 $ 12,346 $ 8,458
XML 64 R51.htm IDEA: XBRL DOCUMENT v3.21.2
Earnings per share (Details) - Schedule of computation of basic and diluted earnings per share - USD ($)
$ / shares in Units, $ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2021
Jun. 30, 2020
Jun. 30, 2021
Jun. 30, 2020
Numerator for basic and diluted loss per share        
Net loss (in Dollars) $ (1,483) $ (2,166) $ (3,545) $ (6,762)
Denominator for basic and diluted loss per share        
Weighted-average shares outstanding – basic and diluted (in Shares) 54,431 49,626 53,044 39,731
Net loss per share        
Basic $ (0.03) $ (0.04) $ (0.07) $ (0.17)
Diluted $ (0.03) $ (0.04) $ (0.07) $ (0.17)
XML 65 R52.htm IDEA: XBRL DOCUMENT v3.21.2
Earnings per share (Details) - Schedule of diluted net income/(loss) per share attributable to common stockholders - shares
shares in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2021
Jun. 30, 2020
Jun. 30, 2021
Jun. 30, 2020
Schedule of diluted net income/(loss) per share attributable to common stockholders [Abstract]        
Convertible preferred stock 1,048
Stock options to purchase common stock 6,666 6,105 6,773 8,571
Restricted stock units 2,381 2,934 3,002 2,934
Performance stock units 1,274 1,292 2,726 1,292
Warrants to purchase common stock 4,963 11,347 11,347 11,347
Total 15,284 21,678 23,848 25,192
XML 66 R53.htm IDEA: XBRL DOCUMENT v3.21.2
Subsequent events (Details) - Subsequent Event [Member] - USD ($)
$ / shares in Units, $ in Millions
1 Months Ended
Jul. 06, 2021
Aug. 30, 2021
Jul. 28, 2021
Subsequent events (Details) [Line Items]      
Shares offered 11,615,301    
Public per share (in Dollars per share) $ 15.03    
Offering Expenses (in Dollars) $ 78.3    
Outstanding public warrants   2,800,000  
Warrant per share price (in Dollars per share)   $ 0.01  
Common Stock [Member]      
Subsequent events (Details) [Line Items]      
Shares offered 5,470,039    
Sale of shares 6,145,262    
Warrant [Member]      
Subsequent events (Details) [Line Items]      
Public per share (in Dollars per share)   $ 11.50  
Outstanding public warrants     2,800,000
Gross proceeds (in Dollars)   $ 31.9  
EXCEL 67 Financial_Report.xlsx IDEA: XBRL DOCUMENT begin 644 Financial_Report.xlsx M4$L#!!0 ( /:#!5,'04UB@0 +$ 0 9&]C4')O<',O87!P+GAM M;$V./0L",1!$_\IQO;=!P4)B0-!2L+(/>QLOD&1#LD)^OCG!CVX>;QA&WPIG M*N*I#BV&5(_C(I(/ !47BK9.7:=N')=HI6-Y #OGDK7A.YNJQ<&4GPZ4A!0W_J=0U[R;UEA_6\#MI7E!+ P04 M " #V@P53'NIPU^X K @ $0 &1O8U!R;W!S+V-O&ULS9+! M:L,P#(9?9?B>R$G8*";UI66G#08K;.QF;+4UC6-C:R1]^R5>FS*V!]C1TN]/ MGT"M#D+[B"_1!XQD,=V-KNN3T&'-CD1! "1]1*=2.27ZJ;GWT2F:GO$ 0>F3 M.B#4G#^ 0U)&D8(96(2%R&1KM- 1%?EXP1N]X,-G[#+,:, .'?:4H"HK8'*> M&,YCU\(-,,,(HTO?!30+,5?_Q.8.L$MR3'9)#<-0#DW.33M4\/[\])K7+6R? M2/4:IU_)"CH'7+/KY+=FL]T],EGSNBKXJN#WNYJ+IA+UZF-V_>%W$W;>V+W] MQ\970=G"K[N07U!+ P04 " #V@P53F5R<(Q & "<)P $P 'AL+W1H M96UE+W1H96UE,2YX;6SM6EMSVC@4?N^OT'AG]FT+QC:!MK03621A'^_1S80RY8-[9)-NIL\!"SI^\Y%1^?H.'GS[BYBZ(:(E/)X M8-DOV]:[MR_>X%#BVR]*+ M41B1%G\@M MNN01.+5)#3(3/PB=AIAJ4!P"I DQEJ&&^+3&K!'@$WVWO@C(WXV(]ZMOFCU7 MH5A)VH3X$$8:XIQSYG/1;/L'I4;1]E6\W*.76!4!EQC?-*HU+,76>)7 \:V< M/!T3$LV4"P9!AI@S M&L%&KQMUAVC2/'K^!?F<-0HACA*FNVB<5@$_9Y>PTG!Z(++9OVX?H;5,VPLCO='U!=*Y \FIS_I,C0' MHYI9";V$5FJ?JH,@H%\;D>/N5Z> HWEL:\4*Z">P'_T=HWPJOX@L Y M?RY]SZ7ON?0]H=*W-R-]9\'3BUO>1FY;Q/NN,=K7-"XH8U=RSTS0LS0[=R2^JVE+ZU)CA* M]+',<$X>RPP[9SR2';9WH!TU^_9==N0CI3!3ET.X&D*^ VVZG=PZ.)Z8D;D* MTU*0;\/YZ<5X&N(YV02Y?9A7;>?8T='[Y\%1L*/O/)8=QXCRHB'NH8:8S\-# MAWE[7YAGE<90-!1M;*PD+$:W8+C7\2P4X&1@+: '@Z]1 O)256 Q6\8#*Y"B M?$R,1>APYY=<7^/1DN/;IF6U;J\I=QEM(E(YPFF8$V>KRMYEL<%5'<]56_*P MOFH]M!5.S_Y9KF4Q9Z;RWRT,"2Q;B%D2XDU=[=7GFYRN>B)V^I=W MP6#R_7#)1P_E.^=?]%U#KG[VW>/Z;I,[2$R<><41 71% B.5' 86%S+D4.Z2 MD 83 >LX=SFWJXPD6L_UC6'ODRWSEPVSK> U[F M$RQ#I'[!?8J*@!&K8KZZKT_Y)9P[M'OQ@2";_-;;I/;=X Q\U*M:I60K$3]+ M!WP?D@9CC%OT-%^/%&*MIK&MQMHQ#'F 6/,,H68XWX=%FAHSU8NL.8T*;T'5 M0.4_V]0-:/8--!R1!5XQF;8VH^1."CS<_N\-L,+$CN'MB[\!4$L#!!0 ( M /:#!5.G(YWZ<04 ,D6 8 >&PO=V]R:W-H965T&UL MI9A=3^,X%(:OAU]A57LQ(U&:.&TI(ZA4RL>P.\,4RNYJ]LXD;AN1Q%W;H?3? M[W&2Q@6Y)Y'V!I(TY_638_L]ML\W0KZH%>>:O*5)IBXZ*ZW77WL]%:YXRM2) M6/,,?ED(F3(-MW+94VO)650$I4F/>MZPE[(XZXS/BVB;AKE>K1''*,Q6+C$B^N.A, M_*_3H&\"BC?^BOE&[5T3\RG/0KR8F[OHHN,9(I[P4!L)!O]>^90GB5$"CG\K MT4[=I@GG&N9;P:PQQ>GPEPAQZ19-)%I'K3,=Z M2^ZR)6C')U7E/0VLFIA=6RI>E,CV@/"0_1*97"E0C'KV/[P%EC4IW MJ)<4%?P]STY(X!T3ZE'?P3/%PR?Y\H1XU!7^#B>H,Q<4>D%3YO;3]1U>(G>: MIPIIH5^WT"]:Z!]HH>J.1[Z,E98,FKIG*7?U!*YS*^/HZ&J;L30.%?DFDBC. MENH8P,,3!'-08PY0^2?)C""9;]-GD;CP\/C;JU_W",:PQABB,G5_/&W7SB3A MX;[7?4 H3FN*4U1FFDMI(&YB%;*$_.),F@E 8'(ZH7"U;M>GW0 ;K:.::]1F M+$U%FL(PG6L1OAR3>3&UR<]<*\TRTXFN:54*#PIA4Q5>QT/J^_[(<+TZD,YJ MI#,4:0*]%14]=I,P5\N7>/R")8HCJ?$]ZX%>J^0 BX1.NP/#>B-_\*W3]' I MS_/\TWYP2@<8V9X[^ZW(JE'UR-="ZF*R::9SMROCBK\^>OE[,FK):!NRFSCA MDDQA="^%="<,UYF$(=1T"0)1*8;166_V@W9F,.,R%A$Z!1ND=F7GZ-.GALKA M6V/W<4>N\?9MX@8>NGL4%VNBLC[NXT;\D:K*W6$N7.Z!8E36UGWMG9Z*>7&]40B$A/\7:^[BHB9P(*$UCA-;P*>[0%>$DBF 9 M"!N"ZJ+P #JZ?N-A;K;G9,;DRX9M,5I;"&BK0N"F?=H()RTN M.<]C&#$#ZF& MB[05G6A!IR:.QB.3V*3.>%PN3G+CAX9+-[.QC6G$PS-%@G:JDC4:#,!VY&$_!.O#\]@7/&L/Q@%V![?%HH M-_>B#R>2LX,H#0*?AP/O"X9BRT. ._IW42S*5B+#?+A!9$"#KIFC&)&M# %N MZD^QAIH@%L2GGY^_D#G,>@GYHBH2F9I;GAO73^IQV4IQ.]NSKY2'O#V86P(HD M? &AWLDIU 99GIN6-UJLBZ/'9Z&U2(O+%6<1E^8%^'TAA-[=F ;JT^OQ?U!+ M P04 " #V@P53X$=9U[$% #Q%0 & 'AL+W=O[A^1R+ZI'F7*NT'.1E_)ZEBJU^[A8R#CE M!9.78L=+^+(55<$4O%8/"[FK.$N,4I$O*,;^HF!9.5LMS=AMM5J*6N59R6\K M).NB8-7+9YZ+_?6,S%X'OF8/J=(#B]5RQQ[X'5?WN]L*WA:ME20K>"DS4:** M;Z]GG\C'-8VT@I'X.^-[>?2,M"L;(1[URY?D>H8U(I[S6&D3#'Z>^)KGN;8$ M.+XW1F?MG%KQ^/G5^B_&>7!FPR1?B_R?+%'I]2RH+4H$TC/X4F* M/$N8'O[,**D#J"# 1[/B;P>Z*$0=?P1U&&+.IQ$_4THEK\!8&B):N#Z_<1;Q!S7 M)[X=9-2"C,Z$%MBZ4B\FI+J![( _E:E-&]9H&$SB]U? 4,C%T4@#(;@C$3R) M]$NI6/F00?$TL1P%V1@ZR29V7-J#:1$+"1W#>41V9!+G#=]R2'FBRV@BZXV5 MDRB%?G]=6J0\'X^4.^EXB-!)C+\*D>RA)UF!T6$;\NA1BVF0#<6(ZX^U2M(Q M&IFFM$/53,3-L31 ASA.'Y]%S@^(,Y;?CLF(^R82SS,&;3U36;]7GMKM2(), MLT1+D3OVHBG"ZORP^U,W'*1F*!5XP8C?'4>0:9( ?%4-RWK4[P:BA23S]A.#A>A^*!6XP5HD= M1Y!IDGB%?(YZB:7]A\X@K!8I6" C(#N.(-,D\=<)U9Y; ,/V']+!1LLBY5 \ M0F:T(PDZ31*GG'L&*;7PA$>\?N8M8M!NR$A4:4<4] >(XAQ4"UM$?I_1+%(4 M1\X(T*-3RS1;'()Z#J&%-C"A_;Q;Q(CGDI&M%NUH@SJ37?E.B?@Q%7G"*_GS M3[#C#*[,=@9V-N_^%(JCZ/W4 :[K_G3Z(+,610%-1>KIYN@"7V*,";3L"L') MJ^97"'K'',;T'Y(IJ_1NM5:IJ+)_>7*%/'<>T'#NA;YI3!Z>AT$X#T*,,BEU M(S!;VUI)V.PD6?GP?QZ!Z/!TT]]O3(J&PO=V]R:W-H965T&ULE95M:]LP$,>_BC!] MT4(7R\Z#0TD";4+9!H/0K-N+L1>*?8E%9A*36PS(L* M$<:4CL*"<1G,)GYMJ6<355G!)2PU,551,/UT T+MIT$4/"_<\6UNW4(XFY1L M"RNP]^52XRQLO62\ &FXDD3#9AI<1U?SQ-E[@Q\<]N9@3%PF:Z4>W.1+-@VH M P(!J74>&-YV, :&>-WMS U\:K,1LNW5M<68U/.>KL[%ZR*N,6 M,C)7,L.W4X^,$CQC;OF&"293("L7PI#S)=,@;0Z6ITR8"_*)W*\6Y/SL@IP1 M+LGW7%6&R8A%:2L3MY6)O;_^"7\KB_GC?K5$;<@MEU@%S@19*L/]!OQUO396XS;\_4:P M?ANL[X,-3@2[3E-52:ROAA3XCJT%7!()/C83^*GY=W".!5XH(9@V%UWUK6., M? SW^>YF,1U.PMUA$5_;#*)Q:W,$/VCA!V_"SU518$%PKZ8/EZ1DFNR8J(YP M20G8.G+<.YW@M?_D (KV**71"_;_FAWA#UO\X0?P/:0AK+*YTOPO9%V\MV"3MX+W6'8#1T>=$IW2GUC>LNE(0(V**6]!'WHNO/7$ZM* MWSS7RF(K]L,<#TO0S@"?;Y2RSQ/7C]OC=_8/4$L#!!0 ( /:#!5//( I( M] 4 (\8 8 >&PO=V]R:W-H965T&ULI5E=;]LV%/TK MA-&'!$@BD=27@\1 8WM;AW4-FG9]&/:@V+2M51(]DG;2?S]2Y-$S,E0>.?]JOKQ;WHY"TR-6LH4R*7+]L6=35I8FD^['/X>DHZY-$WC\ M_)+]IX:\)O.82S;EY9=BJ3:WHVR$EFR5[TKUD3_]P@Z$8I-OP4O9_(^>#MAP MA!8[J7AU"-8]J(JZ_@\< Y!! [(!H(H(< ^MH6HD- ]-H6XD- M0SUHN3?"S7*53VX$?T+"H'4V\]"HWT1KO8K:%,J#$OK70L>IR>M:\OT>>'&3I[ MH*)&GS9\)S54W@1*=]0T%RP.G;IK.T4&.D71>UZKC41SW:4E$#_SQR>> M^$ +U*E$7E2Z(]Z$O^[J*T3#"T1"@H'^3%\?'D)T?JSU^?]N_40,VI4,;?+1 M@7SOZ@6O6%\8Z,^WCU()/>7_\F2/NNQ1DST:R/Z1[5F]8U#1M(%)$V@6P/TD M2I,TN0GVQT/AH@BA27:*FKFH+,EP>(J:NZ@XRDCZS=,Z+07NE(DR\5B<]$LO4M=-R7?FJD'B9JY'-/4 M*HJI"R)Q:@D_\9.TVH\W+5V:TA9B.71(9 MM:O'!>'$!LU<4)PEUG2; R 2)C!3'/;[;^B?(ZS6Y5,V;/.EWN$+LY8:]P3N MFR$PY[/0JO,I $MI;!&: 2B28#O9'&I3+Y5D@/F1\\!>YI^XTKSY=V;/@3<& M^A!A:O,&8#A.J4WG*)IE-W(61+!I:_C'IB1,O\78##HY7@U8L* MVGB![ DTZLZ@NZA+BC.[UD'8V!ET *7'?&A'P+UYP-1+_H/:,*']82O!RYB? M7Z":@V&(!B-(WOOAF#:&@ZM[+TAPJF7J#["ZP-ZK<^O M0K!Z\0WI':V69=Y>#2S_UL?:YD393'ICA?7@@Z*D$ U;$F]?S$7+M=SF"W8[ MVAH?)?9L-$'@F=)M#3O+XH\W=JII[P>QWQ">'K@'RRAS3BQZDF-GM@ PJ(P M&(TIMD4!8)XRZET@'GN-=7.KH#=&)#>Y8+YC?.^VB-]MW>6R6*"SHD8S7I:Y M.,I_#NEY2)<=4PNO0GM:#L"LZID-P-+PY)\M+QPUY+%)[[^(WW_-BG)G;GC^ M@QKX=6K ,$<-&/8]-<"H035Z4T:(M]B^-%>*6HY\KZW8FK4R2,1W2BIMSITS MR&D[O?\A?O_35^!#TP LM.M!XBBR)]X4@$7CA-C3&,I&P\A>VP 8':=TP/&1 MWOH0O_4YKC,?9]=X@)Q=&,@9R 9Q=F$0Y^#H@K5B8MW<;$NTX+M:M1=GW=ON M]OQM&PO=V]R:W-H965T&ULU5QM;]LX M$OXK@E'@6F!3BV^R720!6K_H]H!;%,WV[K-B,[&NLN25Y*2]7W^4K)H6.:*L M=/;EOL26,WPXY(S(>68H73]G^9=B*V7I?=TE:7$SVI;E_MUX7*RWWU_5O'_/;Z^Q0)G$J/^9> M<=CMHOS;!YEDSS?]QUQ=C4\HFW@GTR+. M4B^7#S>C]^1=&-"J02WQKU@^%V??O6HH]UGVI;KX>7,S\BN-9"+79041J8\G M.9=)4B$I/7YK0$>G/JN&Y]^_HZ_JP:O!W$>%G&?)O^--N;T934?>1CY$AZ3\ ME#W_738#$A7>.DN*^J_WW,CZ(V]]*,ILUS16&NSB]/@9?6TFXJP!G78TH$T# M:C0@K*,!:QHPLX=)1P/>-.!F#UTJB::!,!KPH*-!T#0(+AW#I&DPJ8UUG-W: M-(NHC&ZO\^S9RRMIA59]J>U;MU86B=/*%>_*7/TW5NW*V\]I=-C$I=QX\RPM MLB3>1-7%7:D^E,>57O90_>=)YF5\GTCOH_(4F>>U2+;^XD5I\VV;)1N9%W_S MEK\=XO*;=^5]OEMXKU^]\5YY<>K]NLT.A1(NKL>E4KOJ?+QN5/QP5)%VJ.CH M'@";]X'M=NH.Z&J]<+=^OU%SI>Z@*/'V4;RY4@-;1_NXC!( :^G&^B1+M5*H MD<@H3^/T$9J958\ZZ_5A=TAJBV7E5N;>.MNI%6E;+15/4LV[NI;CUTE6%&\ M^- -_VMF#6RLW.OD8_3D8[3&X1TX'Z(D2M?2BTIO(==O/49^\JA/9I K')&" M&JE:1I]N9V0ZN1X_G9O8%IH28@@M;"'B"R;:4DM;B@DVHVVIE7-\U6[QKMA' M:WDS4I-?R/Q)CFX]:+[MW@3W.3_UUII>=II>=M'TOE;>>+>-E 9O+IKJ(ZHX M4R:@QL#GM@RA4SZ!%>8GA;E38>7Y>7;<@[QHOT_B=51O2VJIR65S/\7_/?[V M^I>LE!Z#O/>#LY?+K3+GEE6NE#\9GK+@UE380DLDE59(..&/X[0L+$X6%N@6 M/O=?R-K"FG]. \-=;9GI9-;AK<%I+(%S+.\W_U';L%IA[YO[[%X^QFFU8E?# MV!\ V_LZ6@99??F6,8FIWF>_/ \ M]_G(Q)XLGT^-.;>%* FZM)^>M)\ZM?]%L89JFX6TPK[>6V68GL\V<9JOCP*N*RVSJV$D%3O6J!)G1B33 C$@XBYF] M($Y];BP,2)VMD'#"'J5;1B2^)C&^TXQ'BE T6\S^1!**CC#_0X/7VO.!Y1D0 M(\;ZW(@(YSJ_=.L_P Y80"&L][3#$F=TDKS<$GW+=X/=NL>!!1P0:TFU5=^\,O/"7'T6EB92 MCRLLH/ "U=L6UD2)N)F2Z9S9+BZ*+/_FI54(JHR]/F8'NI<-)_X0.R,!+8C- MT 0SHT.LWE980&&/VFW[:EY)W,1RD'U[%R,L>DELYBA8QU UP2)NAG664_EG ME'\G^M0'1^*$&C(28>TY9@_L8)'+-5#2"_.>:?/:79( MW/2P(_O2;Q0D,C8G !OSIZS+PS0=(VX^-B1KUT#UD%U "LC;$8C$V8D[0 RB MO.Y!#G$@NS\'Z26:-Q(W<7QI]H[8?,A.WP%"COP=T:R)N&G3ST5QJ+56RVP= M&Q5U(6 ??:MJ!D7UY2.YQ7MQ;CAD@CII6C[I,,%J28:U$TT.NZ;/J/,J4T> MJN5RUJ'/68WCXB)'[]KOAAKB&$!!P70,.YH&-V1 #MJ0L50/(;T<&S+503Y] M43FDWRA8L3T%8MON#9GJZ):ZHUM7BM'==(CR2$ ++* EM(.U*2!UML(""MU:MZVIJ0YU4YT?25K.J4T,NM8*30KH9:3@ MHB@3J[S4 #F#"8!/@%&F+0=&F5BU(4@O5Y2IB0YU$YT71YEVG<,193)-/]C% M]..,(<*.X88:X!BLGWXP(,RGTYF5B03D*)W,F.$8@-B5L=>$4)>"3&C7:1K- M+-B+F$7_?#MAA\PW2%$F71U7:+$XOJ$&Y@8>8%HOJ80$ML8!66$ A E#;031=9&ZZ M>)F#]!6QW)T,<1:;1U%*NVX#S:.8FT:)[*]3$.N]G; .*C*; MQ!*_*T'/-8?E;@Z[RG(9/Z;>^I#G,EU_\TJUN17)\=A55)\"KD;_4STGQXD# M3_]CT5LLH 46T!(+:,5MCLR-'%_HEFG;6'-H?AF'-@HO!#0D%F]N@%QY"@X< M'20S;E83EH <]2?,H"LK0(P+7U9Q=!2ZX/G&HOK<)KJ" MDRYNQ#71Y9=5\"Y)NKBAA@R&]3L/^#24G>0"Y* D%R!F);F@+AU)+G[V"):; M?[XTR>6&'3+?P*FX[B07U[R)NWG3?!O=R?SQ^RY\]KB1W.@MI=IQHN/#T.NL M.&[0K_A/I,ID X/&8E'?DN(V';HBTVG0M4!K2L1?5)Z"=QLL M^L+[RU,<.N[&)F;(LX3D9M1\SF %B?GF @U5GIA/.M@TUXR"_W#E"9KO.0>7(W':(\5N4)"V@IH"=9^-0,!+'Z"WO[ M:YM/!^0"K_+DAAIB3JS*DP!>=!!,S//D6-VML(#"/KW;QM21O_B]*D]NX"&F MQ:H\"9M$S,C4M"Q650D+*.Q1NVW8LW 3 $Z_ C5F\K+*"P1^VV+36M$;]/G6E-F^?GOC?5:6V:[^NI711N:5@/K_0Y:5WR^J%T*>7F)Z^S]0 M2P,$% @ ]H,%4WMP!J]% @ Q@0 !@ !X;"]W;W)KZCO[ON^^N]XEVQK[Z"I$@N=::3>-*J+F,HY=46$MW)EI M4//+RMA:$+MV';O&HB@#J%9QFB07<2VDCO(LW,UMGIF6E-0XM^#:NA;V98;* M;*?1*-I=W,MU1?XBSK-&K'&!]-#,+7OQP%+*&K631H/%U32Z&EW.)CX^!/R2 MN'5[-OA*EL8\>N=[.8T2+P@5%N09!!\;O$:E/!'+>.HYHR&E!^[;._:OH7:N M92D<7AOU6Y943:,O$92X$JVB>[/]AGT]YYZO,,J%7]CVL4D$1>O(U#V8%=12 M=Z=X[ONP!TA'!P!I#TB#[BY14'DC2.29-5NP/IK9O!%*#6@6)[7_4Q9D^54R MCO('+=I2$I9P;;0S2I;".POB@WM/8%;^98.6Y%(AS+EI:&T(,<4C"-U;E5$E M6O<);I]:22]P/!>6\162+(1R)W $4L//RK2.,2Z+B=5[#7'1*YUU2M,#2B_@ MSC"?@UM=8OD6'W/50^GIKO19^B'ACU:?P3@YA31)1P^+&S@^.OF =CQT=!QH MQP=HW[3NW=;\N5HZLCR/?S](-QG234*ZR8%T]UB(1I)0\A7+4] 8\C*]=J(; M_,(X>K??'?%%(/;+N\DGHTF:Q9M].?'>;-5HUV&#').VFKHQ&VZ');WJ9O-_ M>+?A=\*NI7:@<,70Y.SS>02VVYK.(=.$25T:XKD/9L4?&K0^@-]7QM#.\0F& M3U?^#U!+ P04 " #W@P539)(JC9P' "C'P & 'AL+W=OZO&ZZ?I?JAMYP;]+(K2GTS MVAJSOYI,=+;E.Z8_RSTOX9>-5#MFX%4]3?1><9:[0;MB0J;3=+)CHAS=7KMO M#^KV6E:F$"5_4$A7NQU3K_>\D,\W(SQZ^_"'>-H:^V%R>[UG3_R1F^_[!P5O MDW:67.QXJ84LD>*;F]$=OEHEQ YP$O\2_%D?/2.KREK*'_;EY_QF-+6(>,$S M8Z=@\._ 5[PH[$R XZ]FTE&[IAUX_/PV^S>G/"BS9IJO9/%OD9OMS6@Q0CG? ML*HP?\CG?_)&H9F=+Y.%=G_1=[DETPE^J\C.BTT^(3 D.X%F]?_@T H>V)J9N/CHPGS/:QAEMH^0.00@J M9D3Y5/NP,(+KR#))NTSBEDD&EOD-8KZ0.K@!]4,D=L)Y41_W4?0G:LIYL= M68C@Z;1G1E\($YJ$K3AOD^N.T_X6^S+S!0Y# M6[30%F>,N.%*N9W*Y(XCPU[Z_ESC6_AVP;@/T!<:)V0^8+UE"W$9A?AH9/9C M;+-]C@"CM>#@%B^#NY?V8/I2BV2V"*/$TRX73Z,X5UM6/G&;3C=,*'1@1<5M MVGUF2C$(H&!NG?I0Z+('-[ZN+16N])YE_&8$ :&Y.O#1+8H$&#ZB%QQ/?DXE M;75B6G-( C;."L'6HC@;QYATRY"HY>ZR3%8VQ4 \TC]"7F@W!ZY@&QZD&X*F*G\1H M$*%/)?3(^1J 4Z:X>4 Q(YQ<)QRWB >YW+G 6M>\HT8V/4 _R2X3]X!J?%R M"'#'/SA.0&^ S\:4SRMT[OFE+S0>JB](QSTDSCV_GP3/F*I5MH?"Q9038"VQC7EVH\+\JL;=E>= V 0+"R\0S3D@,'\74*>B. M@DB<@NXR *>%"VO;=4*8LQ(L\LDU"O#%;3^S4K;P_/";-!PE'X.:!/B' DOV MZ\XXHLLK)-)1&8E36>O.C0>_PQ<:U0+\1,F,>*J%>&QXESH>(^E%/KP1)8/6 M[MT^W#$2B3.26Z@NF@J:)3K9NW:RL9M/7F2Z6"[G X;KZ(O$ MZ>L?7WY&>LM@== JYWQGM9+*>4%0H^ATEV@4(#?H;A9';>*I2AW!D3C!?850 MA,0BM*[ !S@PLPZS, F05^*UJ2$I0M(!DJ,=R=$XR3VPU_HD G((D#"2ZT(\ MN?+!;H6N"O/F8#;1N#U"4$6:HCT!LZ$),MIVE(A!8Q8^\:(AZELLTGX-'\=[ M>=JA'8O2.(L^*)EQGC>QRU^XRH0MI$''6CFY=W8):N>38H+[94I :#902-&. M-VF\SVN39.7_B M+UG=]$/- F'3=,O >S7% 5&[!\O6!U;P@4, ZA,Q3OJZ1"']#5?KZ)R>/YG\ MD/-,<2A$/DZ@"'9/ENLNTS+ Y4DR]QKC@-P"$G;Z7PY M]]PL>/PY70Q0#.VJ #J/EAN/U7Y?YV%6H%SHK)"Z4KPM!VTE BY5WVQ!YHH= M+-&.JVFAS_1L-G7%Z/450*ADBMXZ#Z?+O&JB4Y;BIF=]SX]#Q M:7+FP%)"K:IT4Z=#WFB.@FL&,=)VZ#OXT;T'+R;^?_YK[BY\PEWBQ4"B3CJ6 M3.(L>:I@[!PV\>D. /1O6**K79Z#DXXXDSAQ?CLY4,YD:1L,6]/ HP;Z5/4A MBBW@FFJ4G39AZTK#E /72\2[.:*)=R\21WB!\I.CZ\X== 'N%E@C=ZI6WQ*V M7]N;YCMWO]K[?H^O5O5]<3=-?7W]*U.0T#4J^ :FG'Z>P[ZJ^D:X?C%R[RY5 MU](8N7./6\[ CE8 ?M](Z$F;%[M >R]_^S]02P,$% @ ]X,%4\">%-SI M! 0PL !@ !X;"]W;W)K2V/#Z;"(L7HUF019J%*$L:N4Q9>5\Z6(>/7K M2:B\$GE2*LUDEF4O)J70=GAVDLYN_-F)JZ/15MUX"G59"K\]5\9M3H?387=P MJ]=%Y(/)V4DEUNI.Q??5C2ZU+9H)TEKU:GP\7TU?D!RR>!W[3:A)UG MXDB6SMWSRU5^.LP8D#)*1K8@\.]!72ACV!!@?&QM#GN7K+C[W%G_*<6.6)8B MJ MG/N@\%J?#HR'E:B5J$V_=YHUJXSED>]*9D/[2II&=OQB2K$-T9:L,!*6V MS7_QV/*PHW"4?4%AUBK,$N[&44)Y*:(X._%N0YZE88T?4JA)&^"TY:3<18^O M&GKQ[%S(^[5WM]@X/DX.#_I?5YH]] YN%(V*E]Y'=3W1CTH0[E>ZR@,@4 ;FE'!/:Z3@P"2IDWJ4A;!KA3R$H.)@!^2H M%8$]R 2(>(7ACR3\U:0(_H(NM1'^$[4(; FVVN0_.// WENH*3$.&85FZ^T>5+F$Q'2>"N>'/>WS-@RNQBZ,SL(8:#ENV]YM*;K$24/49P2E%#?D MI#I;>5?V27FVV*(;[)/VV0AYJA=!.[JJK1[TFL7H-#IPQ"[- [I>W%TN?MVI M_K ME[CZ>O)_OVXC'3#%Z#&,%8!' KIJ3&I[G@3G P6MO,1_8:]>@4&O0I. IV M4FTU-44*+-U,X(@Y4Z%>!IUKX?ER6CF#]8E[B76>*HT1/3D7/O/6E038X7'A M]HN&7?^C 78LX'!/<]!JCNF69?B4[RB:IV&TJCWS@KLA8)%)6QS2L8N?=O"/ MG[IU)SN+31I@O+YQA>'R;G:<_K3?$!?-8O1)O%DO,5PPQP,9M8)J-GYY."3? MK&S-2W156I.6+N(62H]\JRC/ OB^<@BM?6$'_=Y\]C=02P,$% @ ]X,% M4V0_W6AW( SE\ !@ !X;"]W;W)KO0'DRNU8514OR)4Z0H)1L;>V++9) ]^G3Y_*=2_=7=VWWR6^L[T:^U-7^F&[-=W^K:W;NZ^?7#X)7_SLUIL>7SS[YJN=6=L;V_^R^ZFC M3\_B*)7;VL:[MBD[N_KZR?7EEV]?X'E^X)_.WOGL[Q(K6;3M)WQX7WW]Y ($ MV=HN>XQ@Z+];^\[6-08B,G[5,9_$*?%B_G<8_7M>.ZUE8;Q]U];_"*^:*FP3?O-NW;B56YJF)S8NVZ'I7;,N=VWMEL[Z MKY[U1 G&>[;46=_*K%[_F)\:[3*G_259;_=;WP?4=B]-\/3/ B3O"" M)WCQ_\SWAV?]1]O;XJK\MS^]OKJ\>E/^7Q!1?MC88M76I-WXFL8S^=O]QCXZ MPK(E'?<]$5#O2[/;U=FY;?A^?NXG/\3I&0P_A/4Q2D1V2O^)T MY=1TY<;J#H['JH^7D?N'YCET/G>B=/E-_=+S>F6=OR7;O=.L\V.I!U\]V[ M0-"\O.:):%7U?H:!]F75EDW;$Q'+>JAH.^LZS)'166"25=OV]"A-V=E?!P=> M+O9E7#6O%AM6V]Y.[L8/+TRKBM&.JG# MT%?D;7A/R"UWND/AM;#Q](MK*UK\C_(,T1I>#(_VF\Y:T71W7V[%&%L8XY), MJ84I+6!*L2;>K4"D(Y%U347*#&]Z2!>S86OVI "EO=\1^\!=G7-O3871 .00GEY#)F'N/\1:T(%FR\<%N**/Q!=%S:SL/ M+BW-SO6F=K_)\Q.*'[6)5+7NB<'K3?EN8VYLM^;A06MMUZ8FX\@ZV,UDHLR0 M#]VN]=;/B/OO^:7*$I>KLF^Q5\%FZ]-AF'GV-.TY89O'WB@ ORIPS=Z:>AAI M1O) *_+08J.6KEL.6]IS6JS_LOBW/WWQZO,OWO"TF[:N2.#O29E9CI,^EET+ M*QC$(^P>QB/NL(16[M95M.^>M8,V:@<'MJAM?*LR^_.^/:?_BJ2G;W(*H@C! MXI'(M7?D$-1[,,M-M[:^!^1KR>SNR]M6%!DHTQ_(8QKY^Z[=J@ T@RCX(@A. MI 1JT%2[UL'ZA$V(DT(;>LR(.6A?V-ITMA:%]^XW.[V0&].4/QLR);/RW76Y M(07]=3!=CU6!31A_].78,KYAOQ/&_:#6C-42H*NWZ_W!&R2^9)G) !!?:*DY M*?D;54>[18RS,"SD6+T]KXD[=5FY-52CH&<;G_RCG77XZ M6.RL)"A10NIM\=G%G(BZA)F706AAZV,7;<>['^:&WP_ M8?') E]^P;/0'Z\C*>),RQ44ZV^&S'VW+\1G76"*W'Y?G*FDPTS(/L\#GY/+ MF%P-<7GC:* BK!72^,W,B][[([ !D;][/7+^66QI8V(NSO-AB!BB9/J(=_3 M5JQ=TX M;9-SB>7["*L.3CXQ-%\:;+VH#Z6<9*/+^HG=\DA#0UX;S\*08TP#9) M)@.X.0SI%*1/ K>@(AE(.-Q]9HK&%0ZX<5AX5SE"KS9!=7( M'\4,T4DWH+3A # MW99#.G!A(M8=J>^CC#D-[D( Y4=L(B'9FD\VD<'21Q9JV.YD=<*LU2JHG4JI M(MZT[7\D0N8Y\@WG$ ^18D^@J@C&;,E8OW(T>1?-H,^(U40%64UYR/(6+$.( M@&WF3YA_1V%G^V=[)]Y")H^J5UMS!R9,[("2XU$,:.$-4=F8BQX3XP M 1 Y"$O#T7T%J$$VF0AM5_V=.&NHZ;E@67"!^*:>6L#,FKA4<$ZD"H!M9_:@ M:!:A+L::J+N5ID#;TP 0XC=*VD''AO/!<]^,+[$(>VMX^A> M4@M$,*F>N=<9" <1@#&0 G-?4A3@6&[(["U7C-(420=:^M' MEK=6WICI5D%4%D//X2BT2\VA)$DI.B"6+8EU76)F^L@68DGVTO6E9!8Z2Y25 MB.5);O8RT[S\&68U&$^O]GZ!U+4$/57%"QSG5$ATX_?U?E;D*A9]GZ//' XO M]L%W(-H@?:77;AUY]Y@_>??C/]]_>W[Y1BN5:0#!L#WFX9@(2C:;>$NBKGNX%S4/J+'\C3[TNR]:XA]HM& MBK+G^TF\!9!FI 23R$$PG BA1V9ZMG,%15AJQU6=J9,D'\'(7]&"(G0HG/0\%H=+:F^V1[6&_%:V1D(ZLB_^+.3.$' MC:1\PJ:'3\3X*H0B7L&NO4=47$4Y/I;\(O/JC#5'^RQT1==V1/?&5"):6Q)F M*&K38O0LQW"\&)JYCAH34&=1V9W@86+B)VMWZN[)LB 4L!PZ'DJY"$,_!+"Y ML1KD'2&P,!MA;LE4="// ./MR,JR-87NT#AW$LH0UV"F6GJN?VA=-)::.(ZB M:D:)A(CL7AQ')&$D"ID;;#^1LL-2UJ7Z=<# RIHZF_1P U+*2I-$M@$:0A*< M[*K=[NIV;T4:4)D24C9$QTP#ROWY'9GXTA-ZZ/8!R$5W0%3WQ)"-XV3CJK/V MMR"&?O [3:1)=K(Y)P%$V$X$BU:2UX.E%N'Q-BQ+_"5Q%Q3)N$H4?VEI-("_ M!\8O5.L/I5TL:<_IP9)5EQ%PQN=_SW1%/9/8%*2^9J,=(:4.X\-SQH5P1$H, MNV6+8HT8DK"F(^XQL\8,G(^\34-VG3S.RBP#PFUW[,0LC!_)$3ECG[F?L*G0 M)+!#\]04?I-.KX5*4\.N:USUL5U$*\2IZ%K@1U#N8%3L/<9C4>$X<%KCQQD/ M>C@ALR*P=C89#8K3BSH'N.8DW>&3 F)$1.=."1.SX+$6"K=LUY*/LK=M?1O2 M;"W2.,1G2+%L4'$H\@V!&!*HAE/J!9L,@C-1WMC7<,XB* (CVX37\0"S%UD*PL2<"-+4 MGCVTSV_2OLD&'- .CK%,L'34;;,^!ZP*51_UO/1*1)>$3/8C-U> MLJH?$M+9 ,78*"%:]4!D*Y&*SI!N*;EJ,OBTK0GEU\RZB(^EF#,Q9C$] M)AGR5./^(K8$2Z%HB"X^I6R5-W#&5" 2,^7Z2L+,U%8:JU ML,B7%W\^E1B88H_&<; E]%8HA)12"&F.TD57%_/BQR9143Y*Q#2?3LS6CYH? MI:@XI*@\2=')&M?#]+PS?L,:S)DX!-"W;-S'.AJ=:]A< H@2;W)"KBM!+4T&ME_^$*ER)[Q+\:.O;G@8VH"JZ(]1!73@$A32!0B#-CD C?-K(- M[I.MW:9MJR@6.P5HD??%M(@&%U%9!*,:WGUV,;\J-2,_:5Y>SYQ>OB^M' M-/#IU<7+\JQ\^N+R=4DCM[T$%-/CSUC3>)*+EY>8Y-7L]1<7Y2_JA_)<6OF7 M@ 3&^1'&7-BJ!6/;:/-1^JTU"]/=NG%R-?1\5',I>,)HH=Z*_V?H/Y)70NT& M-@O@L#8[UH7"Z"_GMJDBE)OTGIW50GS$1.!;)(F&X?HM^RPNG:>!9S%9M;>R M/- +_9Z8*4WDLSQKZJ$03Z*O2:3(8J^.^7<1-$X0%VS4&9XC$.%*;VB7F6!$ M3'%S5>FS%_.+),,T]&>7\]V#J3+/YQV3-$!+!V6O2K_5J"VV,)0.)0<8;L[*L*79"SR!*,2ND&,Z):4NC6<\0L&>CU^%$UZ:KN-T MNBM2IMP!DT#RAI",WMBXAL)N>Z< MAZEHH\G.NC><3^U/WEBQRE1K9.$_. ,, <365I@'2=R.I>83P H3'W7UT MA0+0A-KQ,B>4@OZCN#(D(4E(,,0L,@&"R.UZO VVD@Q4MIL]O+)T?D;K$TG] M@[.?6DGQ>Y;-,C'JBQ$I15!,@?-OM!^*FZ#'84(Q*;.\HL!!3)N*L@#:D1T M",N4M#7] 16T]"BP2( 3RN'.A@SZQ%(CC1!*O9PL.[2:QZ4$\FUHI3SBDZ1K M4AN59%$M-^^%?KU6FFZ2/G%94\M!A>[']PZ=IN>H(57%1+7H**A0?+Y<#MM! M\" QC2C[+91&LD^0$>CJT$NNF=T[^1_T-)VC5UF,;[3F0E2$?Z/Z5@?*4!&R M_1TPP17SX/)*^CORI>6TJ^E1MYF9%L!.9(!+)!AZCKBDU(W4PKC+(?#3)ILZ M+>8Z+^ '(QP2X:&N]ZDL5UM6E!,=:W&>XM0\6S NC)V-.D/$\5'@P=!D]BJU ME9#-\I.Y]8#JF?B20^QVV$$%@A/5S2%E3!%.9Q$HL3CFFZ3[S= W _N.8)_#%3@/0L?#D"C18^#L0E)6BI(^QLVO#W>'\+HPLJU[ L[KITJ+'_2ZS\OGI M>63=>P%EW+H88O&CD[DN_][U%2G]'QD;%2^#?EEQ*$3CCQYK%"&QK M/!)^9MU9[2?I6\W]2P&'RWCP^C49^R@($C/%E(A:Z%0?Z.!/>, B>)1\:F9D M[_,$Q[\.P0:K3U)&;CB5QDY3_B!4WP3INP[DQWWXX>8Z;,2L"-'-81)]BTA< M&PCB1+?.0 Y"@PW6QO7&>!SCQW_%+1;C1V$ECM[T[(MBYPP&)2HXH:^9'OWV M0&DJ"^O.D=/W-J59?1)I'PX!:-J)HP3P'($ZC7\>FG-8)U?NWE;G*QQ(2-O@ M)0^W-1^E__E$&C_4YS-&J=>#ESJ<+B-04Z%=C*H';C;3YP1Y:%@RK97!@97$K$:R0:'W M*_J94$*6WMW*^F7G%N#T@NS)N&8)4T=A1Y93M;T3RLE1>Y M)@/.C)L#M8%[E+$WW-(XX@*)WA ;=^4D AI!>1%%8%$0ZJ"PL5R>VD)Y*;S$ MX@$S-UZJG*WTNG7T)**C,4C1\);UZQXG$SF(RS8,&!Z'KP"6]5G2WP=&#!:# M@%%W2I?G/P^<-=^2A16!,2X?UHNU5 M^RW#SD/LN(F'"XF>SSO-R^].3LE^1#K@LS94D6+.AS@. 6*C@WJ-4(^,+J]X M'R4TA[[TG//:^)\!7S'#,/5Q3T*.,1>(MJGWZ>$4=09WK#WE<;Y"?6G6J*UY MXK'[?IQJ-:IZ_JHWSO#!-+)PKRDGWJINT/MN:8_8 M?$L*FAU3B>>+BMYPTYN>MAI9*9"VES:D(,RST;R M=O*0OL@YAH!6+$9H'8. Y9WWIVNQL)?CN;+C \>2R]F'M*WUOA!4B"[6X+Q2 M>/SP00+D333K5)R B-A@-+D^ITDT[<%*,F8<;; M-,"C#Z">&S+*(U%=T_[WY]6XA2CVR^ 0G;+)W)FNDA!M95TO)R Z>Q#6A^A@ MC"23_=2SP;K8ZA=M&9[;MI652J?\&6UE M,8$L3';N\I/=CXZ*95W2H6N!4"^Q$8WYLZR5@4S+C#N(SM&3+:>E<-2]XW.> M?/Y1GRVX[P\]R.,0/%1Q?"BS1"(&[<@13O#9OZ,]X L$X%>9?=Q*)\,S#[5, M*T>M<8BWC.PM&\K#40ZO:EM"4_[B^^?;Z/\//*D2"O>/$ M,6*06IFN*^UN,18MI#?S98TD-JPQ-$2$EO4L8T;[RRWN!VTRL6]-(C4>"'2; M8J)&ET5)*3W)>%;+P3*HQ.!&R=+SQ.@GJN*#P9V&8U\,]MGR*GU%ZE9_:N?K M^4SR>K)V'>5L(E-\7%TD7-NYQ$H4PEI]?OM9/T:!FKFIL%KCP"=8\ M6+[4(O(?8_A3-[>TQ#A&?+LX>%MM3&UP(D(.CI*7.X]L)>E9;E(M$H.?'9[A M.94+X^T3*35(LIX"+\L3 $TSY.;@;"4N]-)*@X8>5EZK!6\"&4UN(U0<'RD)Q$$/E$6%LFBR$R+,QON1'6/$A5_EY46\ M\>OFQ-G3!T\WON=NED).?>;U*;ET)5IAVX^N-=AG33'9;2Z'YTAQ01\Q)J[0CC&+.N-Q<#_TXQ%D8^DZ(9],#@]KJ(^ M,5W6YQOH0V+KARD:>.DQA6,9 :+HOB!IT2/FMU8/@,E)9^X7#UH'+H1EF')B MC\0IA=[/&U1^PB0IR2BW:,3MDI2%>DSF^C33,S.@K"Z9)#PB82.W8I>BR(G"^\C@HF"AE/WM>&[7 JMQ,=++N0J MA%W;V]"48)N-"2GDPR;XT14&9F(32V[*_R12YGS6C2E="W=\ VJYI@V)6?_) M[T6)P?@7.-6=&I\Y#Q+:TMMR'+R=ZV0[FZ&O=/I#@!.GSBK@(X6 X' M0FN_7(8K$(*+_(\I@XF#L9@7"Z1@/68*=2![;Z(_6!#4$J8.Y.NXMJU)(L_] M8>6GIKTCX5I'K!];&3*O/,9N>>6LR')7\%I22TRI^DAK**QU57;[E^_+Z?<# MOAF=N'IY\>? $O166TAAT&XR7W@N*S9HN])H[:, *,8H?#7H/MUFR60UU3/Z M+(DFQWXJGC]AW*Y%"3XZ.7)HSDLN26J^^8#9:*[)7@KX"TAJR1GPPE3MP36= MZ6")?)@(E=BL@KQ@X.7KC0CE\YA65W\)IXHR@2*Z& M.ES1/YKP\??9/\>3#[AC;!8Y'_@PL7^E;!\!^#F_='YY-5,@7GY@J7[ZH=T1 M&SY_<7'V97GC".2YU3[48J_'>'OT8A1IG?VT1'^8..:H1=EP%YA@#-Z]>%T% M;!:D;<[_ZGTM')_(32IRY1Q[#]WYHQL@K6/_3:\6V:UCP!F='9V*X:PFO#[N M9PTDQ$Z:QPH(M#7?VT6'2]W Y5<36W/S2]B#5^>T!7\7L$DOO[@ZXUV4:_CD3-'T]EU=G--FC-A#')DD8CYUO_>S[(YU&!2^ M29ZOFVIZN6X]?EN&R^JOY8[V]+C<=$_$KG&BM+8K>O5B_OG+)U+R"!_Z=L(7_-_\#4$L#!!0 ( />#!5.OH?[, M^04 'L. 9 >&PO=V]R:W-H965TTV M;5\DDL#NGMT]NPN<;*S[Z%=2!KJMM?&G@U4(ZQ>CD2]7LA8^MVMIL+*PKA8! MKVXY\FLG116%:CV:%,7!J!;*#,Y.XK.?%/7PMU=2&TWIX/Q M8/OAK5JN G\8G9VLQ5)>R_!^?>7P-NJT5*J6QBMKR,G%Z>!\_.)BQOOCA@]* M;GSOF=B3N;4?^>5U=3HH&)#4L@RL0>#O1EY*K5D18'QJ=0XZDRS8?]YJ_R[Z M#E_FPLM+JW]555B=#HX&5,F%:'1X:S<_R-:??=976NWC+VW2WNET0&7C@ZU; M82"HE4G_XK:-0T_@J'A$8-(*3"+N9"BB?"6".#MQ=D..=T,;/T17HS3 *<-) MN0X.JPIRX>RB\?CB/96VGBLC.%0GHP#-O#XJ6RT72U[6L%-3I.UI8C0I69IGQWH<".F0M3M*&?_:+_ B$U9I-^I5PTI-=,)": M/P1;?DQ(!*V%HQNA&\D;]HJ\*(KQD(2I:#S.IYV2C7 .:'V&WN(#EH$E9T>R MN5P*0VA4KDVL,G0MUT'6<_C#_8E=7#M[HRI)1MZ&YTMIVMTDGS,HZ4I):RT" M-SKR5C>=*O87^$5TP$L./<,3^BZHT@\S1NK09] <2#2HV*07)M$X0F,DC>$2 MN[X61DF?TWN4"0)]?4E'!9+X(#N']([M+I&-)3(0'O85=XEJ*16(>OO3W$QFS5Y$( M4%SDX^,,J4BR0]*,#DFV/CR_U-8S@KA$HOH##8Z91J*V#?Y@I\B//[>^62F0 M/;(*"2J9V\B:+[E ^VKS&+$DE*&NC5](YQ*NK65E2MV@1]&LQRR[3KEFDC3( M+B>2@WL9,W;7^=SB"2LHC'!NI$>I#:G'R!A#Y/P6A%(>BUD/?B6#=.CBL-]$ M../\L$.1E'5@>J"1NQOI0O($3)>WP&B6DB(9.&IB#7;?JCJ5ZB2?'>5T7E6* M50FM[X99D<^^V-][.=YYW9A_X'?:*CSZ$5[F=UG/P)">B@D(U"'=FOH?HI*E MJ#!%NE:&LL51QH.!/E7YOZ@V^B:V"-MX1, S"G2>*-$504OO9R^RZY9!#Y-S MPX^Q [[ [3'J52[:GX MS.L]B!X,9_O'V95N@.B26T3?"/C#E7U?_U(AW*8FX_PQ\X]. MMRV#N8\T,0:5_X!N[-=P?=[:Y<6 M4F(68#W5##3L(M*ZKN/ 1S;DIT8%@/,\UTO9HDCSJ;2N2KM$UQ@P>E7U7"$( M8JT8MN!6#;>:%!!8!992RBIIP7 ^^-SX3F^:J([UVK9SOR%LS7 3XKQ(<[Z"(17[1B&8RR\-]VU MP"QUI[+$V'8Q>C'NB ;/ED4#NTQNA_=7=T;4F/-M5V16>79 D^J=CL X[A&V MS]ZH\WZ4>- B)YQN)V^D047RIO;H I%MH+;G#J:(U:J*&!<(C"D5EVO !Z:: MSQ\ZNHYZ%X)8@'SMX7Z.+I3N!MW7[F9UGBX4N^WI6H:3YE(AO%HN(%KDA_L# M#!5-=%/7KNPH *X: 9 >&PO=V]R:W-H965T7US8O!0U MMV/="(4W2VUJ[O#5K"YL8P0O_*:ZNLC2]/*BYE*=W%S[9Y_,S;5N7265^&28 M;>N:F\V=J/3]RY/)2??@LUR5CAYM^63P[:(_I9"U4%9JQ8Q8 MOCRYG3R_F]%ZO^ W*>[MX#,C2Q9:?Z)&T?+TA!5BR=O*?=;W?Q71GCF= ME^O*^O_9?5@[GY^PO+5.UW$S-*BE"G_Y0_3#8,/3],B&+&[(O-Y!D-?R-7?\ MYMKH>V9H-4ZC#]Y4OQO*245!^>(,WDKLW^8]66ND]I)?L*\^E8[\J?5^) M8B78.Y6/KR\>A<.S8X<>LD^:.5*R]ZH0A2[^R^@8*]EUFEYE_WT MP%]:-6;3=,2R-)O\Y+QI;_74GS<]?/Q$\ZP7/O.#9_]?=/S_THW8BF;$__>%I-LE>L/]"!ON;8A_X MAF7/@DM'S)6"G-%PM4&EX C"C9)TS\F.()>"CQS&R:5$T98Q^+C5:47O&*Y M5A9UP%6^P>=PS$'!9Z1EEK[P+_WGR8LG8_96MY0J.![ZI-DH;I:6\2@B:8Q> MRT(8DES(E71>;%T+DPMF==62P7;$K#!KJ5:Q>(3!$;G1B#6I^^W7$?NHC2O9 M+5[)G(]@M7)PJ*+SWK0&<#=B7!7LUDH^9E^QB6\=FO0.Y07IRQNH]2"!#J+: ML,G3E(FZJ?1&",C30Z_^V;(2H)G#4/?H6!1]53'>K@!W;F^7MPT2OP%Y*=0*RQ63SGK'"R<)YEBC^Y-=":_2F4#=[P+";XO"O^-5M0F1?ZQ* M9343BB\JL9,:L*D2:V& UTP);LYMJ8U(O@ J?)ZTUK\A+(ZK.(0ASJ$<$_G5Z-4\!>59'O*2I2Y55+GL^Y M+?HE"DEZ( EEX:M>=6*+H5SGP K\OSN>3R$HD!P MN[5[J7 Z'<\Z:<$B0+.LVYKQF@)-VQI4)P2$(ND%/=:>S)UOK0W''=4-JQN^ MH?@DU)0*YGOD6BC816:^N7OW]?4MJX5#EOM<7)#VI<2:@BVZZHS9,J_6('_ZA%@0A."?KYS.N8]#(QX:=&\< M UO!*+QV ))_(%QD!#;K42&51+]D5[T^825R#FDN Q^><0+$3!#O^T/L>Q35FWQJXF"J]$L,C!KXC M4=82DNS!.N*5RP8F1C_02X!VB,$C79'*&P MH0Y;&EWONSG9RF&1[2%1%GHM M@# 0AQ @.UC$GB/>9-&; 75@<$M(9ZC,*;H!?!X7BY>0! D]T Y3H$LM>SRW M IKL&PW9732"3E0VQ>_H)10,S59:%_YYT1(8)QY7H2F8@O=$ XS6Q2B H&T7 M%GW3ETC4%>[8ZM;7ESQ<)6A-:&R2 *A@7QS^D QOTWOJ:-0(:(\1)=%D9#4] M#C6\5P1]W\(SG_?)UET2K2L623#2NR?XH^<"Y*Y!(M+[MB8H&90Y7-P91]5D MJ7A)JZWS:1_I$LE'0N0C^"J4>TZD['#][OI_!ZB&?:9/@6W9]QBQ>Z[3/GH* MD\\V"PXFQ7]T@O1V+35$WEMVYL.I6XOE]LGSY"V9'YIO]$+RJD5U(RVB@%/V M;#29S9-/1#^,0U=N*DZO(8^(5^-S:W9YB8V!U02P(DPK96/99#*ZFEXE7PTO MT+5KP2:CR=5E\I<^IG*E0EW^KW"1/,:((Y$+39+LB'#A53F$$2,Z" 3U7G4 ZT)6AR;5%X<1 M@9\ZFW3M>9?U!AKB&TVD4'AM=+L*L"6I&5.%]FA#51] [Q4& M1J"=;AID4JLZY^R+HRQ,B-/'^0K-,"]#(/H.A PF$E-0TW0^*9:AB&V#W: G5'P0:;%H+: M>8&YF2"D(^A+5!?LYM7&2CM*J)3%\ISHQ+G1&UX1U)%;:N(AYZ%Y=G&E/NSG MG0')HG$+GA!@4O>ES$NRAE$6HD!R0LQ6Z05-3!$3FI9(%]SR'D&KDFG_""X' MQ_*@6XI&3KRWXH@>P\A)ZNFQ N#%FG\7VW;OYQ=?!TT@ MH\A#L S+*SHFI@Q\",^N)$VR,5?\-@<>[T43-.!=]%[XZI=TKH^/^D);M!B^ M87*RZ"X]H/OOX5*,'-&S0LQ&K:,;CSYR-@;'MRYTI-P7Y..I>,LN?"WF70I0 M/I+00).&&S"7E(BTKVR_&HN",.)Y@3-UPVE -;M35]:?'2=Q0VNHGK9,*A\R M)^*>*L<$EM@MA^HI[0&(&<>3NX'*6[4SZ9]FXWF/E:0VL8A8>@=6IX/5)#@Y MUI60-+^TJ+KNKBNX.G0IRHU6\1;#.TU$1C-_)PNQX6Z6>E('9-$)=+D5J-@! M#T)-^:A3#(DBXI/GK>_O<5I8"&0F%24M@WYIYRG(/1_.QIU$/VKY,2O MB?2\K91HI70=4W6ZQJ;3&]D=2%,G]T;M0/J";I>[RX%(V"G.":4)'W3MWN%F MIY_:,+,,9W5+I;GV (0S-&29'5P72T".%$BL;IY"(E>=L[?Y-70+I2IA=G^+ M$8RP!RP-H.WY\6,O=(:"12C+P_UVF%X'/ V+0O BP'4@!?"F$5X?"OWID ,$ M*52^R+@:K;0%X'*[O>R#E2*B3_!/(:+K@OJ6V-N^[MN40-(TW$2<\+>&Y-RU MZ!L7X(M&$\*_Z#@EJ#6$D46J0N9A0V0+!_,\"=UU@Y&3PK,53PF^YP*[S?AX M<='QEB+ KJ)T,B(<.%2&JUZ?X,F(I3VL=R4Q3K[(AYW[\>3L6U?53WS1^\I* M/D?PP6PP&SV=9?APE8YF699\!-94-/^!3(-JSD&F Z^^S)Z!5_O1$&)!?4A5 MO$G'Z32L2<>3*_;DT$7VQ> W!)#:E?^EA&(-< X_)_1/^Q]C;L-O$-OEX9>< M#Z&!L4HLL34=7\U/F F_CH0O3C?^%XF%=F#0_B/=C0I#"_!^J5&'\0L)Z'^B MNODW4$L#!!0 ( />#!5/1.0(:10, ,,& 9 >&PO=V]R:W-H965T M#J"V"5D4Y6'+A?27\V%NK9=SU=M& M2%QK,'W;-_:]VKW!?3Z9XRM48X8O M[,;8E!2+WEC5[L$T;H4<6_ZTWX=G@>$P#; ]C@>Q0:7+[BEB_G6NU NVAB M?#XCE1ZETD$J_7\V]BR9>YDST_$"%SX]/8/Z M$?WE7\JBE\'OOTU9S/Z $T$\$3RN>2=K4"AZ7,:"JL#6")5JZ(T*N84+(6E& M]8;BS>7,NS-6T O $E:&HKT/!JN^@7>B0KAX*^%OY-I< AT7#L?U"@ML-Z@A MB0/O5K5=;U&;4V? KC)X =,@2Z;4YD&:3KQ[7M24NQZSX#U=?[41#1K(((]B MR++8>]UK*6RO<8BIQ)/K&TBN)A '419#GB;>@ZKLCE-,!EF<$"[UWB&]WEHU M)8BVT^H1G0N'BQFD>00LR;TX#N(\(5-I$A' F!FLBJ)O^V;(OD3:_D+PL: X MAZW25GP?)RXF01IE< D769 S!I=>$DRR*;!@&KWT;GDG+&_$=^(Q!WU,_ ,3IYI$'J=.DP4L)7$O)A.,=H)-)]ZY._$",LHU MHC8-HI<9_.C.A\\*2XMZ.Y1/0TY[:<<:9#[HL62. ZNZH4QME*53'[HU_650NP!:KQ3=]_W "1S_6\M_ 5!+ P04 M " #W@P53D3=-Y-(" #3!0 &0 'AL+W=OO(+QA: &W/G,T2P*DQRZL1;'N>!CVH-AT+$R6/$E> MMOWZ47*:9<#:ESTD)BGRXT=*Y'RK]%?3(%KXT0II%F%C;3>+8U,VV#)SJCJ4 M=%(KW3)+JM[$IM/(*A_4BCA+DG'<,B[#Y=S;;O5RKGHKN,1;#:9O6Z9_GJ-0 MVT68AO>&=WS36&>(E_..;? .[8?N5I,6[U$JWJ(T7$G06"_"53H[+YR_=_C( M<6L.9'"5K)7ZZI37U2),'"$46%J'P.CS'2]0" =$-+[M,,-]2A=X*-^CO_"U M4RUK9O!"B4^\LLTBG(908*42QO_#=O =Y2&4O;&JW043 M@Y;+X!7S3RU/(DPBR)$L?P8>+W\ [Z52U98+ 4Q6<%#U MRE<-E]R40IE>(WQ>K8W5]%R^/)*VV*!.\UJU"R%J$X21,RCB=CR*-1D@0W2IZ4JNW0 M4C$;C4B+@)AG4!2)^P59&B73"4RC=%($;]&8&:S*LF][X?FR5FG+?WD*<#0I M1G ,1\49' AAA0R*59T?V[6RU%$O-K1U43L'.J\5W?Y. M<0GV>WSY&U!+ P04 " #W@P537:]B]?L" -!P &0 'AL+W=O&WSFV)J=-3@E:Z6^N\W;8A&.'"$4F%N'P.CU UZ7:-]CKF3B\7 GC MG]!VMAD9YXVQJNJ=B4'%9?=F=WT>=AQFHT<J!>VL M"2X=!_EVFJZY>1GEQ]MB9H":8W2@N!LS06W',T\M@3OC.*\ASKK MH-)'H([@0DE;&G@E"RQ^]X^)UL M?>!VENX%?-?(0\A&$:2C--F#EPU:,X^7 M[=7Z_I?&"%:]\*^G:V,UER0TZS)E:82!N9 M]Y*.H"UY7@(W9$P)L2]R06F16T"FY0N:@K_[18#&&=$4?EL_2 VA-M(VTVK MX728]:?=B/MEWOTH+IC>#!5-^UI^GS@8 %X1 9 M>&PO=V]R:W-H965TI>Q/+ KO:LO" >/ DSL34L0?;Z73X]7S'3C(9MJT66"%5K9/XW,_W';OG M:V-O7"V$9W>-TNYB4GN_^F8Z=44M&NY2LQ(:7RIC&^[Q:)=3M[*"ET&H4=,\ MRYY,&R[UY/(\O'MG+\]-ZY74XIUEKFT:;C?/A#+KB\ELTK]X+Y>UIQ?3R_,5 M7XIKX3^LWED\30]]E*O\>[/^5G3QG)"^PB@7?K-UW#N?3UC1.F^:3A@>-%+'O_RNR\-( MX#1[0"#O!/+@=S04O'S!/;\\MV;-+.V&-EJ$4(,TG).:BG+M+;Y*R/G+U[HP MC6">WPEW/O702.^G12?]+$KG#T@_83\8[6O'7NI2E+OR4W@RN)/W[CS+'U7X M7:M3-L\.69[ELT?TS8?PYD'?_/'P?N)W[(5TA3*NM8+]>K5PWJ(A?GO$Q/%@ MXCB8./Z7&7Q<^D?C17+*OOKB-)_E9VRLC/U4"_;<-"NN-^C_PECDF,EA!Q-W M@*83S%3LRSP]17LH%3I=]]L2VK806E32AVW[67IZ,&P$IIF'$5];(5@32RFH ME R%$$,A@D8L\&B%6XF )+5)QQZ&")Z>0;ZJX@;R,;'<"[;FCN6S>?ID+VIZ MFL[W/H]QA DJOY0D$IB$]M2.:Z(YK9DSS9;PZ"/M2'AY.P9Z77$'> M5)4#!2\V#) O;HZ(:*N$,ZQ44E3=E66DCZ2CL/@]0*KV/H6ZPT\+BUG<\?WA!- M"QM*2\!*UK4LZDYI@!1,?)FE)P,P2G"%%7X79F3N$WHI_53<)A&WV3VX91_A M=IZ>?(Q;)^\^$VJ3>\!#K;X_FX-9#B)NY\?I;.]S&+\7MS_0NVKG0"1J>3Q9.ZV=TLV^+9'[RE=(WQM0DH*KHI6T3LY'BUE&X#KZ'0% M4>DW20!72+XHN/.[;5S"D,7Q@_)<<\]<@_@['(8T"^^5Y=T0-NJY%JW7-T7:,%;1Z1!^RQJ0EGQQH;, M=VHV@MLC;X[*GK5 2[>2#I4INT95%;?$G=4_JPE^=SEL09G6HY\\$1\U-KF, ME@@U>_OSZQ='LZ_1,U#1R&*GE-N9^6"HR=]K&A.HC8]QE"+0HY*AK7L] 7TP MA!,NRAG:GR2H MO[RF\0#DH>2%T08A,3+:JI: 4=SP2,P$>D.LV<&R3T2R5&:! /M\=&W6*P9V M-.72H35OA<7&[<094>-00LP0O%9M&9O@AOZ _J&!5AST;C4/+8/FA9=-R">* M5-)DD$V#!70K(NH*,XFR>-9E-FA@)T?40&@T:S<+Q$=TK(%Y7(O@%>W!H=+% M[TCVFEOP3C]M?WS[O1OF[1+PIT#*I!MI+9$!,1ZF+'4[X,3>(CR M<1QN/VSG\B+V$O'16>POT5!E,*TW<&5!U9)_]NZB;]!]SO<4NH!RCRRW"@!' MHH4=,>]\__<#UO$/'=6?MR@.F?C.+%SL-^#)C.- ?2$EE30.T M[E$'GF3=W.KC2BC?0[K#8BECKOG=BF\$0@\X5UDFBCX@'FRL6K1L Y4 M !&:!*V/8C#3)R792FM[D1MAE^%F3\>!5OMX_1W>#O\\ MN(IWYNWV^)\'L.&2*$>)"J)9^O1DPFR\S<<';U;A!KTP'O?QL*P%1P_3!GRO M#&YQW0,9&/ZE#!5.#543B@PH +\; 9 >&PO M=V]R:W-H965T@%%?6KAJ/AJ.+)4M6 ME2S+N][8N\HJR3ZD\H A,2+6'( &0(V5K\_I!LCA7"1[*R_2$ 3ZWJ>[P?.E M=9]]I5007Q>U\6_VJA":U_O[OJC40OJQ;93!F[EU"QGPZ.[V?>.4+/G0HMZ? M3B;'^PNIS=[%.:_=N(MSVX9:&W7CA&\7"^D>WJK:+M_LY7O=PF_ZK@JTL']Q MWL@[=:O"/YL;AZ?]GDJI%\IX;8UP:OYF[S)__?:0]O.&?VFU](/?@C296?N9 M'CZ4;_8F))"J51&(@L2_>W6EZIH(08POB>9>SY(.#G]WU-^S[M!E)KVZLO7O MN@S5F[V3/5&JN6SK\)M=_J22/D=$K["UY[]B&?<>O-H31>N#7:3#D&"A3?PO MOR8[# Z<3!XY,$T'IBQW9,12OI-!7IP[NQ2.=H,:_6!5^32$TX:<WP1:?*UN7ROD?A/K2ZO!POA] F=[O%XG*VTAE^@B58_')FE!Y<6U*5:Z? MWX=$O5C33JRWTR<)_MR:L3B8C,1T,LV?H'?0JWG ] Z^2\UK5E/\8H,2_[Z< M^> 0'/]Y@LUAS^:0V1Q^!YN__N5DFK\Z>\*F3],BZ;)3P62F9^)QTN(?ETOK F\R0;B]%MU,-](E@L^%:)/)^, M)PCCNF;I*ND4\RV8CF Z8W$9Q%5M/909B4_2%94XXD! .*P+4T:R978T&9]\ MFRRO(;)4'UE;](X.QZ^^08BMDBV54P(@YP.L"$G'X@9PHIR#-.PJL,MP\ITJ MU&*FG#C(B65^*GY\]X%9Y3LM8:QHI!/WLH:Y5LM-1SS),. ,XX_0G?T!Y*;84=(9R#&,U6!6'\G.%H&E $X MQL/.*&L '\T%*N8C*6*7!H;I\G&';NLR,#4C4NA[UI$;".F%QP"VU5Z+4 MOK'X'XEHYM0H+H&=05H3=,TL!N]VZ,S"RZ+2ZI[LY;.(,#,\S%M'',6,BOM. MS2L)HO.VKI-6E6Z$HTKI$4!%W;+-609:)-O<$RJ3*1Q2AT0J];TNE2FC@5C% M#.K!;K,V&HZ6E$7%>+>]5:QOA5""C;=R!CJ;N=*AQ1M-;4)A72E-H6+ZD&R7 MZ$+*%"N_P6. 461Y WJP.2LJ/JI P3O7-?;U!V^OKY"2XF=I6G0\8GH<<>SQ M&%&UON-$)D. $[/D-P"&VIH[2I!>=,Z!1V+)BU@2_&MQ<'HZ.CT]/2B4Z]$!8X)R0$U2X\ MO!P<)3;:EB04P4U CSK>C?94L8PUZI%49K^2I:F4_CH(DU2=1IWG-@_&,Z1Y M)A\)C=UAP6QB29UV/%)0/,Y#[.21?0^/TW4F6\'V+2:/*Y)=1?R6BY MR502ZNRT/$=69_G?I0,+ !+DOD3,UB+OC4-P?QOD?-X1HHQ.E8,>4RF(6VX) M& 5@1* Y".$1&0Q5=ZV.:$B"DD6) MUTNG:@;!HA?%J3OI>C27Z]J[7GNB$@O2LE.:NTPN:^1B3%,$PT2DWZ%79B%% MD:K<]]32>SW7$(/:4N"'G.F:&N*%DKZE'@:$YU*G+F04<1D)^;*0OAJ\$;+\ M Z,6*>^3K-S@<#4$*T^$%$K@0)$( M& "0PSI^XQ-:;0&)B E)ZA&@D-^DT[ MJW6Q4BYVX?H>]EPMKMKYL.V@-:;H]ZF;Q_!0]OUZML%[)UO?C0^IK?,$O_#^ MJGC]&:[,8D.+S%?LU5EO#&H9*(Q\[RP*'=3FU:B1(FMH/O2C%OU0B6*1#/( MQXA8D[<@MRN7H1]W&*J8-!2FL)AK@Y"F]/*==M$/Z!6HVK6$$;$]B7&@^3W0 MN4X10!E.MP(BG[S\6ZKZUJQ-*_E8?(AQ'"JG,'SQA)Q%J>/&)'*^WK_.D$EF M,WQ2/5V/$B @FJ20$# )OY+X"ZH)+% _[!#Z[]E Z =QW(D5K)F MW*>="!NE%I):LR3V6-SJ!=!*&F5;#R-SXA /B+0ERF1\O&6KII9%1%R6C<*4 MCOO46 Z&HE%$GY2E+'T4JVN[6(_OE7M+M-Z-6302PVG"XE3WXMS'5W%8D7S7 MQB L&TWQT E=6\3N_R5GULMY#9VS9657LB/G@PYUNLZ(MR'4(S0MTDG2N+/M MU-234K>V:F&?Y3F:QT'M7R )K*DI^]"M*E=H'\$*\W04P;0,,SB2H@ MNNIK T1;PYTC\7Q.8Q-A)/PXI[$D>G#1U"HD#]+*VQ9]O?*>D&<&2*1W+WB. MQ-%:8\QB8[; )#;N4Y2F^J'VC.5G& M:\.^%:0>"(A;I+8@354B,>MO5K(UBS%PU0_Q-F45SG$R>*]FCJ><_-6NXL>] M,L+742;V+IZ;"B*S4= M',MB#:EMOUYUX^CV?4LTDH&W]XZ&R->-U67&Y2%5S,WJ2M$Y&1\+=JQ(:M36S(LNW>H7?NNL$ZE=(]I38TD%&C%RL/L:#P MZTS 'LY.VVS[]F\@R0\;5Z&[KO[W!Q]5%BB7_.F([]],B-]7^M7^ MZ]1E_"BSVAX_;0&>[S1FO5K-<70R?G6T%^^[NH=@&_Y$@R$AV 7_K!0"TM$& MO)];&[H'8M!_L[OX'U!+ P04 " #W@P53H4?NS.H/ !E+0 &0 'AL M+W=OOST_K^*=RF45Z+TJ\&2CRUS6N"RWY]6^5#+A M37EV'DVGR_-J'JK> M;T&2W&G]G2Y^33Z<3(DAE:FX)@H2_]VK:Y5E1 AL_&EIGK1'TL;^;T?]9Y8= MLMS)2EWK['_2I-Y].+DX$8G:R":KO^J'ORHKSX+HQ3JK^*]X,&OGLQ,1-U6M M<[L9'.1I8?Z7CU8/O0T7TR,;(KLA8K[-0JTYCRVE*X,I>@(I:7X M31?UKA*?BT0EP_WGX*IE+7*L744O$OQ;4P1B-O5%-(W"%^C-6E%G3&]V3-2= M+)45]48^P;-J<5F6LM@J_OU_EW=57<)-_O["8?/VL#D?-O\/Z/5E2K_K6GGA M5/SEORZB,'HGCE&&FL(+CY^*FTP6XI=/OWH[F0@$ZWVJFRI[$C+1^QK[I*AX MW9[6I6:KF-0[Q:=$TW=\HZ/%=\-W;P+Q!XQ;"EI9JS*OA-[PQ6B]+V)5UD@) M'LXCWK90W') MK.'AO:IJ/!38*:)@B3C+,GIDE&1$J"P#AFFGP($!8CC8%M0+,DR)Y7M=)*#K MI46,A%E!9[HOX%ZFR1F(Q7*?UK@&)Z=1L'#'!^*R79L]^4+6G112[%49PVN1 M.&D?TFU52SZ-I0&7,+]ATG,"L/8K5=>9$4(]@F-X/\L=RVH'MI%M$ZL97^R; MLFI@..+[FAJ$[6H2RY,-,B78CDE7)! 606B ,_ MVLOBB:-L]:XBR^:M"\A6:FL!%E8437X'%>B-IV2\@STA<9R"3-V2<9RX8XDC MHJ,>8;\49^_+-%8V,))_-"PNCMN7^AZ68#L=U3;V/&!MH8V'T7VXT= G=57# M<^HRO6MJ>9#"-=C+28^/* ME8TJNF/C@Q@8!XOO.:I5^N@RJ:+:+%!955M9WWI?K FO9,:*0J+YI&+%OCT+ M:56X%I&_FLV]:V0).J*IQ>0B6HLW'K#11J5T[B2DZQZ1WR3BRU*(IF("[1)' MNDL\G&AZ8KT1H7]QL?*NVYBU,MU9JG-_%LY[CUNAW8+97JPG,>D9CJ2'NCB[ZTY]=T1);U5RRF6&&5*;[T6<8OLC;:/G<7RRBEQ@;>!!TL_AAQD8[9R^R-5P\ M]Z-U*"Z?/_'AXF3P88SXGC0%@]9/@^E%5]>50]JBRC#ORJ37IC\)_1!L&)W'"4P,$QB5S#(%)HB'Y6$>=.)8%?=L M9QG$6LYGG#Y=CCG J<^LGL[7/:(MLQV>H#I!Z+S!:93?BJ3?J@) R1AY(@MTW+75^8@>8=C6*WRV')99SVD@JV^+ESTE M(?1)$+&4U!2>$:2GWC$%>2C?BP*D2LLV)0+O\Y\-E8%?"X)TZ%(-5Y\W&\5- MJV?"HEX1C+;HB,1D* _IT(2F>9,+N04FV1+,EKEN"E9-N.S9LI/*5#;K M"K[X71=GM[6L =W*I^%#,;%<_G[[I7(,^MY7)'LX*]F/E_MB? <-"O'LMG^] M_:/;;E=<0DTJ3HU?\!0"O-RHDB<_8U' ;B4U,Z]'$XCWLFA(^X)!-3 ME%;##K"336VRG7;)MJ;FJ1:D;JKK-6^^R3\1C(L-[AK!_H-"O M@6K"MLXYI4RB&55E^&AWB^KH3?]&")FM;N!1B^6R5S#;VB66TY7WK92)*T]4 M-\2D5,A.A4H\"Z;W6F<$L69A>)CS8>8+I_YZO311TYY)L+975<=FM0IW[">O MN8\YZ353R++?&'CUT /2W(UU7"/?M0EOD8K5V0;NB8)BPX<9Y=Z#UE.NQAK. MQT)N:CO>,&% 'J2+79EI\ MC]+;J[VN;7(IZ#;I(_0XA :FE^D4,NH7651PQ)62#)!S@;4-H1O F.TTM3'N M<)7)^/O9;;S3F:K.T-[6VM5A/I76H9E4F5'1=V6[>HLC3(L&U['!3,H8]\RC M)!%PJO(^I;0(VGQ*"7E-Q4\ NGO%)>1> QRD&7G@G!Y\3:OO9QM8CH 0[ _# MTMP*?H^XZ.UC/()3N::+):+"^^68N@:#A5,1SH/U!2O8U=BFX@G=/U6IW90' M&77 =*<)CEZ:E1S49[_=/G-:C646-QF7/R3XVQ8YC[S"ZZ/?0M=PH;LLC3,4 M"9-HVG:N-Q=A-Z7JV=]VB Z+L,S.!R16*$+J3AUT:[[Q:?H=@ M/,FBT0;A+9?T+%@8@&0CYC-J+(2B3>QL(.:<8BP\P'^M)%?U3N\>K2F1:N Y MB9G<2$'^1\M@:W5/OM^S$U3@!K@\9Z5T;SIPDL6%O1/$C7'LR*=;YVH89QT' MF%#[8X7PP,;!L/D@4+ OG] ?5&[ULR',R^,2,;&N/4('%@C>4,+T)N$;\0WJ M\R915ZWU#TP$)MP.4,VC.KV>1\@0%\'L0JR#*'H&( @_V S2/NOZ5$ '\8;W MA[,#D&$27^ 387]:TAB^PWT.-3(K+P-,9W-F_=\ MF .1$VU*N7M342N/7@3)DI3(O:?!&;;WM,L93MYKEI81906O0-VU434ZP^KL MBKM!4,]2U3@A;!, +>_-&]B*:7AIGJLD95@0B)_17KW2,?AFV/'(A1/4T(@L M#H[M4B EJJS[7GWI*]0RBZ04-]1ON,8TG(\S"Y-K!W94,MD-3Z-N-#2H2Q9' M42\F-"#(UB&N:6\VTLZOC74' TF*F?I!>SG7B+;Y;UE%$I0Y5=5T6QC0RRHR M81^^6OZH[?SQVL?8>=P1FYIG@NJ'JYLM'A'UEL-X7)E+ A <8)-U&-G^N%^V MUK9I?KU8A?YJO>YUK#^>RL2!5,9''LUCJ,+1\43FO9#(HF#EAH&]R=(@=7TI M[ @PZ=L MM"GI'8W.2B=NH'' >_*M"AE*J6R"JENE?T M0M Y95\6_$Y;-$PP]N>T(H1)=*UJH'9(2(T#?S?0>U'>OH=O"\C&['ZRNZ>' MV&AGB?;Z%^:Y&TK22! @YIK@";UEI6$[K+5-BQX%4T#_WZJ@H\0P!I M,MW43Y[K$">+Z9N?7(ZPMN[F8'U#C48T74F9I!L> F39FV&+HU"*S& 712<% M:[F]M"KQC$I>%->^]^XJ]H;8%_\Y]KW_/_LFB#JS"6.VT8<7WF!,V8$K&M-Q MQG:L:)N!PV6]$ZZ&2[G*?<&WP2:)*7EJNRE]38 GT679WHV&U(M#:1D M^'2BJAB"4(C>P;^'R<35,%(6,A-]G6/Z0;*++4&%%I3[R(2RL&\$3>:.>CR9 M86RUTV5-6(GP2G#XG5PO12$2*P[)]J5UKPX_&Z?;I&>^@K@S+[BL^]CC!UTS M;!Y%B['SD,*"HQ]+>38W]_/]\Y1I^'#F->]Y;;I?!M/6)7ZL<7S^AJIE@@C< M'*DN#IU''4YV8EWQ=.2Z7\<^6XK]>5*<0?MD;=#GJ7X+BMH:4!W[IHS>&C%; MYGT29-#//C'I2\$&("1J%>$=ZJ#)F)QLK2:''_Z9L^'G["*,CPWOZ"GKF\M3F;.G)JBY=3 M_(GX[W*U\#X72"U*E?S]%K6[%& 69F-GIO><%9;HI>?8%/KABA#,=+'T;J4; MA@"\?5<6*WJ:OUU//V/.H/L$Z%B_P_\Q?+N8D6^3/YDL:&X#B!2+?.QCY]M.D(4H_ MG8W \@"0'67".EAPZ+/,\]ZGKSE](T4?^!+J0(-BOH)M[[;?$%^:3V>[Y>8# M9)/\*Y&I#;9.@]7BQ'0[[J+6>_Z0]D[7M<[YYTY)Q! MP/.-UK6[H /:+ZL_ M_@M02P,$% @ ]X,%4_8IJS8>!@ E \ !D !X;"]W;W)K&ULI5=;;]LV%'[7KR"\86@ Q=;-EUR!).VP%6@1-.WZ,.R! MEHXCHA*IB52<_/N=0TJR?(E38(!A42+/=[YS)7FY5O4/G0,8]EP64E^-WR:TWB[X2\!:#\:,+%DJ]8->_LRN1@$1@@)20P@<'T]P!T5! M0$CCWQ9SU*LDP>&X0__=VHZV++F&.U5\%YG)KT:+$L/O)9"/FI6 88JYS5<3@SBTNPD;3%N M'4;T"L:,?5+2Y)I]D!EDV_(3Y-.3BCI2M]%1P(^-'+,X\%D41.$1O+@W,K9X M\5M&WJ.1#V0D^_MFJ4V-.?'/$?RDQT\L?O*_G'@4@XKO7%<\A:L15I>&^@E& MUY^5 2\,V6^_+*(PNF#[BMC7'+P[559$$047'^X?["B\ M.&%"HHBDRA;F!1//Y,SDP,Q:G:8%UYJ58'*58?']VX@:<7$IJWAM1"HJ;E # MTY VM3 "]-C[)C.!3A7+;0Z\*%3*Z9-1KTHSXJB;I8T)::I5R20V)2'1*B"J M&1A I@0ZG.'&J>3+ JDK#S^66.Y8.>F/7!49U'I,7F*=ES9\6H0EF#6 9,)H MUDISF3$,PPIJ,MMZL,5B2A8OUA'D*O2O4)EVX\UZTNVM.2YNC#8(AIQ]MLY% MFC/Z_)'+!EL@"VV*!^283[S&R<1]L(31(;16JEWD(:ISE!.>;M"P@H JR*,* M&K,;Q[#S ,&B0[EU8Z$PT)72PG;)7<,ZW[S%V'KL. W? O> Y+9JL2QWLU")E:]N4(3OE3U#C'L-D4RZQ)-1J2\E6 MG,;LO2AL!F.I,*$W5;5\89EX$K3(&R;@$Q=%FWV'N),<67Z$3,=B0VLOSAG: MBH]-;$@];L,:,@_UX@M9[US6&\,=A#O6+E M=&(GPA!AP,@)Z!_<2X<1R'GF65FA=0/9F-V_(= 1'NIJK:Z(LO:Q[5 WL>W MS3022]0G^^UI1*:P/8$P6/X2W6L$Q6-0-YLV97M!SPA6*SP?D%O>LA S >'H M-&$[AUO390GZK,Z5U4A,,FINI1SIJ&X-5A-CGW;96D]S8K5 M:6L$HK=S5)9V\2D=03*;DW@RK,">@8H7ZP1OI;#\UC:K;/IJ MP :(FMIMP.5]3]Q5%.D:6KZ;3YP0"%:S=^@5)-]HE-%4GE"9P8:4X7'EY-S[ MFM< K'0'"* #1-\UV(-X/CQC^XGK,OW(^]R46%<&/47>VJ?K&EVGW_O<-:)? MV;O03Q8Q.Z%AY(>SF1O&_C29NN',G\\B=N*]!ZEP"_IY+=]WBWZ_X;C=/;PX M #9-_"0.67+FSZ(9F\9^D"0L/O/G<;CAOU%V:P&0;C .6G-PE/2C>3<*YV1+ MJ^0GUQ],F1KL844:O=-Y7(SIW/#$"SM_O)FY/@1[?=PF(B_2IN@3L76.)_<< ML'L68 ?. MCA4MYH:!M02Z,<]D#L91@%_!EQNM,HQBY?O;VL]-I\/3SC]=W0 MV]YWJ$9L^&<701#H$W8HL>\.U[:MM^YDN/L,,546WL.PH=KC5X,[-':0[:*= M^3/,^9D?!E/\G\]CMO"G\]#[!7BU@A:+!>#X=L=K= =V+496]=RV5P5N<'>9X;8::%N#\2F%2M"^DH+^( M7_\'4$L#!!0 ( />#!5,;M88#H , .,' 9 >&PO=V]R:W-H965T M LM1DC9H;0-)NF$;EB%HU_5A MV ,EG2PN%*F2E%W_^WU'*8XSK,8>]F*+Q[OOON]X/"YWSC^&ECG2U\[8L,K: M&/NW>1ZJECL5YJYGBYW&^4Y%+/TF#[UG5:>@SN3%8O$Z[Y2VV7J9; ]^O71# M--KR@Z]::,8\O6R5QO^R/%3_^"QR@\HM>[8!NTL M>6Y6VA:-O$B6E90LAQ(:K* @*?UN^8V,$"#2^ M3)C9(:4$'G\_H?^0M$-+J0+?.?-9U[%=9=<9U=RHP<0/;O+B^LYUG8ZH<@RD;$V5LU';#=M*U [_BB=]M<1+PY\'.Z6)Q1L6B.#^!=W'0 M>Y'P+OZCWKMCO?1>A\JX,'BF/V[*$#V:YL\362\/62]3ULO_J\JGX7YUD6?G M!7WWZKHX+][127CZA3?*S.Y5C.P#_=;R#/Z]LGO2 9>Q_ L7A*(C(W[4>U 2A@2GK4WXD/CH3D3_8B6Z4T]2V92\U!?U1K!PU-4.4KJU< MB&,Q#ST0(4Z56A0RP+OG4RG9:-[RT^':_6Q"457E!V5P!#JVPK)_IH-B58,7 M!JCVHW4[^X]VVZ6"6!=/%$5D->@>1,".^%J+]C-0_3)H+/8SD:!"2PV>#:E0 MBID:=RY=#)X[^;&.5.<&Z7W/B/9<3_V!^2[#'^NQ984Z"NR,KI58GQF$",-X M?SR;M F(%[KF_S8&\J/!V['?I.&ULI5;;+'B)NY#7TC<]NSE["YPLM/FDZV8'=TTM;*GL\JY]ME\;HN* M&V$3W;+"SD:;1CA,S79N6\.B#$)-/<_3]&C>"*EF9R=A[C.U5+QE2'; M-8TPMQ=L'/$7?.W)W '6;\Z+ >*BA\B_ W%$ M;[5RE:67JN3R:_DYS)ELRD>;+O(' =]T*J%%&E.>YMD#>(O)QT7 6_RWCR^# MC_3'^=HZ@XSX\P'XPPG^,, ?_I\0/@SQ3CN.L@4]^N$XS_+G]"](^E!QM-)- M*]0MM6Q\-7))$COVWEEJC2ZX[ Q;'3](X73P=A*( B8WU+;TVLJ07MTHTLK D5 GSLL-E MG!_E=RJFTP4;A]Y%:!2U-RGHJW1=LK$Q"0?[6R,+A$H'[R87Z"!;)NG"L]'# M)M&'$$W1Z,Y3-A@[ZD1<2^I:N,0W; J)DU"[Z>K:@WGH#BR8G9$.JG\DW8:V M!;5M9XI*>.2RE'[1,Q) $WJ37"6H/[,5BJZYZ" MV<;1Y>4JIH\2/HF&+FHA M#3T23?M\9">FR^0R624A/BN]8S6,QMW+%06J?=M$6(2EO[1$=OD&^]AT2OG5 M1BAT;F-!L0DNC,PF](ZYK$03W=<*W*!(* >95]+]#0"!T(P'D_MZ"_WX 3T? M]C*N!/%*.UP6!:/74R@67PU[HE+/RFE+4).1-YUG]@H(/#89R=;)YM0<%-=\$WKZ]'V MH3AX+(<)C"I<1BL-SHFGY+$VI39HD!O<[^AV7,:VD0V1Q MB<<$=4,7&CL[;CKD_KHWDGT[0[6YRG\@$:@^2!/T!5]A@_:>C?L6@<-HL$BL M0>Y>U88ZS9)E>E>G,13B 6/1SD*&P7@G0A&*%AS?!#(0WX-%ECR=8H5:;=&E M(8.S4RK [Z_:322! J_VH[P?X'V3[X)(4Q#O<>;[-+ M!5G67_[3ZO1T.N]?#'?'^W?76V&V$JE8\P:B:?)D.2/3OV7ZB=-M>#^LM<-K M) PK//_8^ /8WVC$99AX!=.#\NP?4$L#!!0 ( />#!5, '=UJM"$ #-I M 9 >&PO=V]R:W-H965TVZX4*+8=FI?$DLB M#P[._0;TM[=U\]EOK6WUW:ZL_'%C MLWGD]XTU!;VT*Q\M9K-GCW;&50^^_Y:^^ZWY_MNZ:TM7V=\:[;O=SC2'-[:L M;[][,'\0OGCO-ML6OWCT_;=[L['7MOVX_ZV!3X\BE,+M;.5=7>G&KK][<#5_ M]68QPQ?HB7\Y>^NS?VO/% %W9MNK)]7]_^S?/GN@5YUOZYV\#!CL7,7_-W="B.R%%[,S+RSDA07AS0L1EC^8 MUGS_;5/?Z@:?!FCX#]HJO0W(N0JY^,-!/PQ?7GS[J(7E\*5'*P']AD$OSH!^IG^IJW;K]8]588O^^X\ S8CK M(N#Z9C$*\.]=-=6/9Q.]F"WF(_ >Q[T_)GB/OWSO^G^NEKYM0%;^=V2!)W&! M)[3 DS,+?*Q,5[C6%OI=U=K&[?1/KC+5RIE27[>FM2#>K1^B["A-C?V05I,C2VF/VRM,K#QW=Y4!]QZ%Y%-/"<0QU;U4T!3UL0XW:K-[:RC2G+ _YB]PC-1**K?>, M[KX$LL.[[=;JCQ4A0NAZ_? __O)BL9B]_CB]GNJ?KZY^H\_SUQ<:K!&\PKM, MZ+F*K11I>S6($"[2=+@B/* :N^E*>M[K>DT_7MM5U[C6\1/ZQ[O5UE0;J]_6 MNYWS9(L"6M<_O@T(3?45+02[*@\3!'301:VKN@4D5F576 U4"&MD>"I<9%W7 M+3P*2S;V]\XA+4$#XZYIM\BPTK9VD!M3Y.J?8R308(T6DO"K$*V2-MX@'1J4 M#U-\ C/$7&^W!IYL["0PK-Z["FDB.WO+8H5DF3]_[<%056#:\=V)KNS*>@^6 MG_:#3Z^-:Q0)<-4RUP0,? 5&E7@"[J<1#H77 N/A%U<7L/E?^1G -;P8'FVW MC;6T'^_N]([-D45SI,&86#0F"HT)[HFX%9!T(+*N*MS*H-,XQHO(L#,'4 !M M[_9 /J2NK'FPIL$U$)\? -QN:1O]>,Y6BSCEXQ[4H&[Y;=V5!0)'/XND!C9^ MZBKV8R3'/__PMTCDP/5!6,=8P7,Y4KC[69#1(G#UF(VFJCH "XI>-ZT&'- A MZOGL\K^8%-D[@$4)@**R@9+@"[^89K753P,11FSKTVA;GX[:UC?&.Y*07("& M3.DHF&%32K#5$6RRG&\Z#P"\Q^TN@=[,$>.#61,YP"^ 7#>V\ M/KT&%\HF=.6:5;<#D83-^E?J/_[R\MGSEZ]IV6U=%J"/=V!K2,V2N=!-C48Z M2&\0+H0'U"$%*MR-*T L/2DO,&H/1L(M2QO?*LSALJTOX7\JF9'7.091PM$@ M@T;4M^"OQ+D1R4VSL;[%P*L&KW#0-S7;&8SU_)&Z),@_-?5.!*#JV/XL@^!$ M3%!+JV)?.S2.@0EQ4536%E?$-8 O).J-+=D>>?>''=[(M:GT>P.6;J+?7NDM MV(_?.].TN"LD$\+O?=DWW*_)+0:X'\38DM7 J*BUF\/1&R"^X#C /@%=8*LY M*OD;10/< L)9M'O@][V]+($ZI2['U'.B(1DA6B,"?@MDH&T3R2W0!""!HK9D_D#R89D=<:=>?3[: M[$1#I*-1ZJWZ9C8%I.;HA1CH!.WV;15TOZ_S$Q%=\#*0:1GO+;NWJ..(B&@8 MQ$BMWCI H '_@\3U("&TQZK6F[HND.8*A+P&@!0(08A"DB^ 876P+K:8GC<% M8-D*\G4(YFB3 =5>\""@\;?2F:4K*4A2'"L,N6O@,NIAS;#+VB/Y'^;^R \X M)' 0\Y>T"OSC142%?;U>HV+]W8 W:@Z*7>H,E\C=R^Q")!W-!/-Y&NB 0LR&O%H9O^5U*:!H(!9"J-^\>#J=JQTP(G)WF Q!Q!(EQ8&_ U9L M7%4A6>HJIQ+)]TDHW3G^9/9[R%4,LIN)"]OLV5B*/S5&DF ^0 F[5=L!#EL0 M PK8 <_6M!*PD_("WQLV+!)3J6Y_S#G(+D'$XI MB8ZJ$Y0I5R((LCO(86 A)!%]B6X";14'0I4]4OH3_TJVQ-!3X$[!$'6K+1-% ML"2W5#?L,\@L" 0-EK/#J!B? E%YOB$'1M@UB/$#I1H;1O26(*8&8Z>] ]& M#2F#:FS;U%R>@+ SL$<9'_ 5DB.BQ-J0E)",:7Q^63J_30'S&'4] M&XVZ?DLI&[ ZB?69V&L4V'#LE590QRN9Y',L8@2YR0WQ;<,Q%D<5N:4I2 MTHS]MG0[Y!& ZD >^WL>Y=KSR+7GXW4(MH0@*&Z'F?40JT8AG*DX>*MRL,0? M+@?THL*>];N79>=CXY >^QX#0<=VYK--:)#R@H'O=GNF.[-QO0Y62Y1<\IFD M-5]3_Z UG8*#D(4O"L0H)(#[3 MP-)3?>TVE5N#X8?@.+V=51?J6Q8L\+"P_,JZ&_01X T@AEA)F0,Y E@W8&'[ M?N_(@J(RH!A75+LI,%(#EP:(UNOVEF,=M'*7G H@%8!N$NAP++@!*F&,!LH4 MXMV].2!&DYAIQ+6P$,">8*([;]=="=C="'$PF('XC)$]"&I' 0\^%P*C(_B< MQM4WCFHW7#@"A,$HF#M9 <)(B/\,2H&YTY!$.9*;4=5[$57OQ:CJO17(/F,? MA+^?CU9&+@QIY2CP8:V4%=47K$@1?M C1\;O$RE)S6],1+Y0OI==2Q42-%;B M KD\#1DA\'D%_&Z2!*2/["C 1[I6<[&KL8"9QO(2"/N!5YKJ]^A*@\/TXN.7 MV#7@1+AN@P& M#I Q$-$SSBG(JL7T0BC7A?@'$P2(J8#@LG>('V"IYM)5E_L29&HB1.#8IK$$ M(D="D,_3_V@I=Z;Y;%MTAA*C@V>(I(KTBYP9BADE>_8I'SE^(N;4(?WTDN#8 M.ZR$%%&.3R5?99$,5(XP7MK"A:M'0@S6I>J1NA9V>MT,[!R&34F M9!JJL'O.@8"(GZW=2X@'YA#3/TOE@F,I9V%HNY!@;*TD]B=1=U@-\BRN3C4] M=X8>QX%K(!> N@-P;CE]!:JA;:WAN79L7P!+[#)ESB5E!A %VP-[NXA"3Q0R MWUU_!F5'\UYJ"9,P]"^L*;-%CQF0JJA2M[051L! .PSA[&Y?U@?+TH ]049E M"WA,I(APN+P%OZ0]!&/-(03OT8: N8L1P!2GZT@(T#/A'X"O1^F-I9TO:4L5: MD^I2UI/1^3\S71%WRC8%J[&3'D= J0-\=/=Q(U2% (+=D$6QA@U)V-,)]8A8 M?0).>]ZF KL.'F=M5B&KJ??D>2T:/Y CB"!\YGX"4U&3D!S2.O%;L'QFPUB: M$NVZY-*?ZF6T0M0=*3EF"LH=C(J]0W@D*I3[#VM\O\H%#Z=P4@723@8K .ST MHLYAC.FXQ.63 B)$K,@X08S-@L>]0(IMFQI\E+VIRYM06JVQ= =T1BEF!JG3 MG)MRDD3#5UP4[3*\@-?[R.&PV=SKDY""=-E;M (FQ&3P&>(U"$PA%'X-D1<( M5$5='D4F V*P*&_D:ZA.%12!PO&4_N #1%ZL3$$@3\4_*>?:8_O\.O&-&7"$ M.U*,9(*DHZRKS27&@J$1*9X7GHM\& _S7L8P[^5XF'ZNI+5Z=\+2@DUPP]6="8*Z<\0EPH&'ML[V3YA>;^#W@LD,N46Y7$ M^YB5<(-T *8:A@F>*/6.P2;ML9."&5=3>W^/LT,KV-08$E$QJ!;T))Y :X!- MP?B\2JT$6,O>K:Q%ES*?_?5<-6N(/)+7HS&$MT)S47-SL3JI<2YF4_5KE;#0 M]R(Q3*&VOG^9?D=L0P$DUGY-E2\,+M@>]VL'^[1I M [7)8L1".V8LE+IW#<0#'M3V[?'B:"2DDFW:T"4A'V[V8 #N MI$22B@M@A,!6N1T7/ :N%D,.03/I:D^>VKKLX:HM2W$ D$RUC54,X'D=]QC MS+/)J_DH>\]8Q&0U20B+NENV6!$)5F>0^:,K#3,_+*^^;GD]\-[DR-P/OSGI MMPXL9JQ43.+T(69V^$:&A=G@=^V@O0[Z'4II M!?J,)?T$6;*W%'M!4L:!,R4Z]!Q&0CDN Y&U=NL<8> :#ZD<5C6FX1( M?2@*(1&4.B08K0Y3^:-")_'-AVQ!92W[7K45S1"Z>G;^69X;BEQ93C8H@@V% MX,T&L]+U.E)1!F 0"NNH= OD!&'!M9 >E0Y*G%B M18FC9JK\HD3XNF(VN,^V=-NZ+J)8["66C[17PR(:G'%AL6XAE8!O9M.%EH;= MH./D/EA\^,G1PR=C,U-UA3^H"*7WQ$-B)@3N(,3^0GUH3&$')?$;O7@Y63Q] M!O^8/Y\\GKU05_=HX,/%[*F^T ^?S%]H@%RWG'L.PY^0IM$BLZ=S7.39Y,7+ MV:@)6R03MKAGP/$T;!BT3Z-@SLTS,NR\F*U_#D%AO]9'^0/*TI+RM.C^<72E ME(IB<^/Z?96 #/0/.B^#_(=L/KX3>,SH&3'1*LR=E549^N;15$=.2 MP4"JL3)(%,-C9&Q$"<#0_ F%+S3ZDP!/8N'U8'E[B"\:H(&5TD(^:W2D$35V MU_(:5SU(+R5&^R*$^AT:19Z34DU,JFE2)4PC#A B=K^H*_[-D^DL*1F _F8^ M?3&JHL>1M/K:V"N-!L\?CTKVS])-&)3FT5>'I3G T^$?ZHA7&'-X'FB3D =[ MR"!^*'-Q7#+YR=-9DI!RHX^029*I_K4BG\@#?$N<:YODU0)JG6'%[W?XW;4\ M!( @O=])623.A6F'+5)T=U3V)/M\X/ 9Y3-. I[BR8TV'C8F"(KB!7H5PZ^5 M:1IJHK' Y@6(T-69ZG?]OFU$RW_5RA2IJ)&56S8FH@),&9S$$M) ''L (K[F MFL:M\VA@Z^CHLI$XY]/(ZQ0GF0BA')K"4I1KB-")YOUZG#@E_V7[ W;U=B4] MM2%RYA%^YV4!JOYQTL9S+]A^V5GP8T4:7J;N&85E9L7Y"=?9TG<]J;D'<86( M1^[>NT,.S1G;_C8'E +^YS95J/*#D""(220""B*-:!,;;,$EWHR;+<8R6%7. M3&)$]2M7/[<3]27;)IGH#1NRE&+19E.Y/X ?$FVB'H<%V:1,\I8=)=EUFG3! M%"N2 \.J5>J*F/8("]AZ%%CL,$%L2.-B6< 81R, 0IB?H6KTL2D_[=6!P\7Q M^1,Z<3TTS:9RF\+2P':8T:YYDC'IT[@72.4)6>2\)O2F2R!HS)HB)6.G9\GFF"T0!A@=P:^IE&\ILO[*T<(TE5*%@>=@X=&1T0F14+L9,"+#$<'_ MCY%(!Q'FXR<1WLN8MQCC<[-PXU"&S82 5AGHGN..^1Z-2*0XG(3*I.HR*IF> M7TBKI*$2G'B#^ XE1N3";VS1_XGJ,#3&N@-/TO)XIGC$U+'.)*M>EFYC9!)A M<=&'Y@KD]!IQL!@M($)9IYQ'ZQN[,72>BMY%%T6F(:0H(I0\-4XCF!/]^/PZ MO.\#A[0T31_J/R>0]0#D)Q?'I/(*:6$;'@OKEFPY.(!X>I'7.W VEG_''BY6 MH;F3F ]&=8WO#$?;_1WX6)7J!VSP*JMY&^''PO .7IP)E?%_S*7[= M&8_E?+-IK,SHM;6T)KF_3%,&&#.5X(RB(' :',MPXD%2^[)!?T< 5?!X^=)$ MR-;G1;5_'X=JI#Y)&>D,!)\U,/H7QOHZ2-]50#_RX9?KJ\"(B0JYX7&+;(?5 M'YEOB@O=.(-R$(86<6\T#A$/,/[Z[\AB-L[V#F?+74N^,DXC(E# @MIU4EV4 M;X^4IK#H?2CO_,FF)HI/(NW#L3DI=5*.A33'V@O OPP#CZ23:W=GB\LU'N%+ M;/!<^]V93WPDYTR3+HP/9802KXQ>]'BY#$%I(32Q4-+1_/NV[AHD"TV8GB0X MH:XC$QD#T7#.&2%/MD:_&(.#(*W;2UB7IE,)PXFJK%2%$',9&V%!\=7PTC'GX'$*&KGM3SW2<3A3E4J3RZ'$(ZM=425/FDX0D@%8,*V%P2.>B5@5 M%_C"/&WT,V'"A8^3%-:O&K=$2B_!GO1'6B(Q,IN<.Q:.WQP/_/04U3L(X<%# MV+KS'*;:,/Y*,[3=3O1M"7*\I@Y]OS4@A/#ZW8?,6,>EV8(&I(Z,:,0B.!4. M<4,G+OH<&J)E>T^T&U@GC>HQ#(:8G[6(80<8?D )E8I;)%4A=4VP.S4.&&?; M2_-&Y,>;&FRD3\/!1S1G=36ATR SRJZ"Y$=*&4P.,BX:CY:7D6 M]'<$8K 8$!@UYW1Y+,(_!S<=GXX%#47E"!JR%_T/Q?W>W-<9@)R9I=-A/M.% MO@:=4XQ^NQ*\6\V1&BA;78)VQ\(;N3VP7V2;VK9DQQU_G>I_'3]O:& 8!X#Z MN#2X7SQ*(./@@?,H=C1C2 UX3T=PI_K'LTN2'^%#6=EH/TLQ59,GWD4)S4-?>,YY.8N6!;YLAM'41YZ$"FTN$'55'M+#*2L.[EA.$,7U ME/C2[%B.5-G[[LOU8N_[O)E48##Q:?JYX!^V2+VI>@4*KFY#=-CSP /U@#/" M2%[7U^6-V,O>81)T87)()C],'8[(R'P_EIX_=<4FG60Y.4.3Q00\:$>TA)]: MGJI!M:>1T[@+]H4G'6G8+I=2:]H'UIRJ+^4)Q4?AL'F>K3Q,3?;45 ^'"U88 M41<7S#2BEK24@>D@S"/.E]FR,>_%]L MPI\K,:%II_)Y"FRG*A[]SV5\"4&UO0EM#LY13#A)8M1IAL10'+3S.=[_^CO>ROE1W).I5-UG734<3Y^UO%]+*T-^Z;!(L^?./$8UU%GXMFK MZ[?JV>Q9?OSMZ-(-M-8E!JB4BVPV6#UI;59>&S!XHAZ]HO\P EZED=W8B4;. MX,"WAV2P&&K6(H]IQMG+N1/JB-&\AQQSAZ5>J?E%GGM1W:I*(V-Y?%-7+02FCA3*K.T/%G6+0%>[#(L<(H/AL. M/QON^V2M*)FB(C&VY*J;VJWLF1[[1#V^N"?HHA,.&"5Q*FD F[HDXYLX<$9V M^!!R>$/UWF#?2VHEU2YX,$9(&YJ\:5*DA(3E+ ,K=A3GW9.(#1SF!%G6(,N7 M\]GEXNGE_,G#Y<5$]0D,&18I/+Z>/?YX3MHU/[$ MV>!L'36TCK[W 9PS"+V$GEYM0%C;RZ(_$!BGW_#$O.S/W)JFX.1W;5W+1]\: M>U0P"7E7/T9/GDDN A'.#"_..2>N_Z8TL*WKU1;OK[G\!>0"E7 ?#2\^MZL+ MRQUX_F!B' MS_;BO38-7>I EQW(LXKFI?'P2;^X$?IW/C38(A*=S-@,_0D/Z+8@C%B( M?#3JX(T=C2OT#X?*[-PJT-_U+BCJR<-*;JB0<9E*__/J^H>K M_PX_BQ!Q5A,7CKD8=TEE7XF[JB]:6#C.M]63V+#',*@3SBIEM4C@+YUM.IHI MBU.HG ,3(,3;J('N;)9_IL(O90HRIL! N;IA!"VY/ 2G XOX8/#]X;POI5'D M)@0_E8XI/;33S73"%5/>NT"Y&*C!G_:5(6-HW+(C4#)(PB58M.S/YR_D4[3^ MF5_MFP5J>2-I1AO7,MSP=01_Z*86MAAAQ+?5T=MB8TJ#1^'XF@-PR9>1K" ] MJVWJ0B/PB^/#F^?*+E*37Y=UW4A5GL]5[V&M.H5\*:8[)4]*>7(#1]W5 \D^ M!7PX.8 [Z,V*#-JUX,QP@Q@PR)&:?'^L92:I%F% PR&GPA!,>[]L'!!+,V$1 M(77&RO/28;MT,1I(L*!IVH21E#CSF1DPFC04+!E2Q"0@AWH@)%)"HL$)G; : M\2,[O_[/NL4+JXBA\\5K?=;CCAUK'_/UZ>J!^?C= ^^RBPX&_?J?N%V 82J^ M/"%O2?+5;]$]V+9WN=(AFR++[I0[OHYAJC]R?V9+WA_?P.LN MX@DBA&1 M_71(]%,'84HAMQA,(01.'U$3&>\P(32)RNSQ9IXP[L]' "WF(US*/&4Z7A/- M= .(8.EWV+O BU&D\YA?>AKN3,&?2,Q8Q+@22I<&USRDDG*V6[F(*]ZDQGF$ MT&;G[KC^(_=+9??" &P4N1X5*/C(KJ\)C6PNS&':"F^IANPO7AQ&DZ0A'@U' M;.+E*5&;X72W7TSOW1*7'S#!/E@\!(6$?6!Y;)I_8 ?UC)_ M&<*!MAZK=I9"4YRS6(*TR$TM-U:.)//=&W0L)6@=4B%LP^@!'K&W#,/2U]CL M"XNDNC+?Y179Q54J<>5X37K1\9P[5X35,9%[%^VD^;!U1]>RP1.T-]:G"9N= M)2014HX0<0WXW-L M0W,=]RF#B5PJM/WMGHC]80@S(1.W U]$X@Y3:/(TLZL]5?0O" MM8E)2)Q>R<*%?E"9-TM55@%$K\7MX]2=B;B&7FI39'>0^E8/OQ\"K]X1VJ>S MOP:2X&$$BU(8M!O,%SZ7]9=D0JVW]UYF%I.G/=]$'Z_\)K2JXA%\YG*=(S\5 MC[E10B%]*#H+WW-HSG-%CMO\.< ,FJNRET)@.!Z4I8L"YN,W!;RGVX>P&5'4 M1Q>BIYMDSMX+/P[\7'V95U3WKHC79-+D+9 HW;I&X[O9'8,R9I1NE\_NT;_& M>U8I&WY34VJ5I38_75V_B9-,Q\6Y(1CJX[[H701_=?W1)PAB5@)8$A;(*OOY M/6J2E;$:4M(:JS%X=T;P4&1>J+6.15!6![:TBMUWYWE^TO"-O;@MYT-+E.G"QX__L45L1C5WA!ZR12/M!A@'^:V0<) MT91>NIPO)EIRD@^DC \_U'L@P_,GLXM7^MI!;.K6AS U<-5/$WHOCOTQB72\ M?C%^O#YJHFSAJQ3Q"V&K^V /GK27^89PTRO';B1>\6(J] 6H#E/ZK]S,1@DI MWYG&%PJ35Q;1/+G?VSJ*B^!5E=TIB_%;8WMG!JGFCM$4_G& @$(<2KNO%P>R M\Y-=-GAE+XK!LP'9N?X8A.39)I G[^)7IA_GB2V:)WV&/N:.G+ MMWP)RC_X/+<(V^/%LXN8F_^2U0;Q,C=Z0?TC'@ ?A O*65!F1DK];D<3TW'B ME%91L,H9K.+:/>R^ZN%\*Z_4!W352/X/R7Z]QY[Q^@Q0@=G?;$X=H;]\]>+) MXH*XR)4B"H M+[DT+1(#2;MA*U @:+OM8=B#;-.Q4%GR)+GI_GZ4G+@9T.3%UH4\YY 4N=@I M_6(J1 MOM9!F&536-C=A:/(*:V8N58.2;DJE:V9IJ[>A:32RPCO5(DRB:!;6 MC,L@7?BSC4X7JK6"2]QH,&U=,_UWC4+MED$<' X>^;:R[B!,%PW;XA/:[\U& MTR[L40I>HS1<2=!8+H-5?+.>.'MO\(/CSARMP462*?7B-M^*91 Y02@PMPZ! MT>\5;U$(!T0R_NPQ@Y[2.1ZO#^A??.P42\8,WBKQDQ>V6@;S HL62OLH]I] MQ7T\4X>7*V'\%W:=[149YZVQJMX[DX*:R^[/WO9Y.'*81R<F\1QZ8KR9#7=%;R4N>,VDIC;EJI>5R"XT2/.=H8/C,,H'F8A%:DN2 PWQ/O^[HDQ/T,WA0 MTE8&/LL"B__]0PJECRM_(2QM$(DBB)S^"-^_R,/=[X!-[J/=S- M(=Q?J\Q83>_I]QF"24\P\023$P1/U&9%*]#E>9];0Z\]1_[JDNI+P03U#I,Y M G4A%*K-;-F*WORCM)\E=9U^8QJ6XS+P==>O&*0K]PX&E$#T";PC#76&&L;Q M:##D$FRE6D-RS,7@6;,"/Y3["9+K43*=T2*^&HVC^6!U7CP,DV@*%S"] MFW>SZ8'I+9<&!);D&EU>30/07;]W&ZL:WV.9LM2Q?EG1B$3M#.B^5,H>-HZ@ M'[KI/U!+ P04 " #W@P534TG5XI$" "6!0 &0 'AL+W=OR0EN*B6RV()R[OJ>-W9SEA5.,+=[:QG,1:5Y5N!: M@JKRG,F_2^1BMW#ZSG[C+MNFVFRXP;QD6]R@_EZN)5ENRQ)G.18J$P5(3!;. M57^V'!I_Z_"0X4X=K,%D$@KQ:(R;>.%X)B#D&&G#P.CWA"ODW!!1&'\:3J>5 M-,##]9[]D\V=<@F9PI7@/[)8IPOGTH$8$U9Q?2=V7[#)9V3X(L&5_<*N]AV1 M8E0I+?(&3':>%?6?/3=U. !<>D< ?@/P;=RUD(WRFFD6S*78@33>Q&86-E6+ MIN"RPES*1DLZS0BG@V6E:$9@6SI3J_9R%'=3%W-4D81S=JZ)8UG7^$ M;@RWHM"I@H]%C/%KO$NAM?'Y^_B6_DG"KU71@X'7!=_S^R?X!FV^ \LW^%^^ MJY=\%?R\"I66]$)^G9 8MA)#*S$\(K&AQHDKCB 2JBH]WQAE75?J(0C?*?A[ M=3ZI85IUIDH6X<*A7E0HG] )-BFC-5 BA4I02HR!:5AQ08I;\"==:M3.-]*> MP5HH_6%_H@P.6/R;GAOUFX;SR]$$+CKW0C->GQYG'7?[PVGG@?$*H439D)U! MW^OUIX<4;VIQ1M!Q=SB:=M:\HHA63*6O1+2 S]] K%FXF@KF-JM!UV[2[[="YJGOMQ;V>6+=,;C-Z M/1P3@GJ]R<@!64^!VM"BM)T7"DU];)&ULC59+;^,V$+[[5PR$'!Q M5ZVG 2V 2?I=M/N%D$>VT/1 RV-+"(4 MJ26I..FO[Y"RO5YLXN[%YF-FOGE\,]1LH_23J1$MO#1"FGE06]M>1)$I:FR8 M&:D6)=U42C?,TE:O(]-J9*57:D24QG$>-8S+8#'S9[=Z,5.=%5SBK0;3-0W3 MKY),'NX(ZO:^L.HL6L96N\1_O8WFK:17LK)6]0&JXD:*SFP3*YN,R= MO!?XPG%C#M;@(EDI]>0V-^4\B)U#*+"PS@*COV>\0B&<(7+CZ]9FL(=TBH?K MG?4//G:*9<4,7BGQ%R]M/0_. BBQ8IVP=VKS$;?Q3)R]0@GC?V'3RTZS (K. M6-5LE#G-RS4TAE.DTPM_+E;&::/3/$>#Q M'GCL@!! MLQ(E:Q"2,)GF@]^4*C=<"*IHF,?9X$%9)GZ(^@3&69BDT\&R*%0GZ:IEKXZ5 M'I\5A>Y("E]H5AETS@ZS,)].X'1PC15J9\*R%[H9IN$DCNF\QSG(I,/L&H\U MS,DUIWS;Z:*FGH=6\X*PA%!%SY$3R/+P?)+"$2Y,]ER8_#07OC' [3BERO** M^TBYM$RNN0_:I^>MVA]%>KOVPQM)3%.=H52:4_!4^.(]>#18=0(^\0IAV2AM M^;\^^O=*?+(M,B0IO"+3!@B >6AN=)=JP"^;X"^4]78+4;">Q@#+1:@7\!R9'^):33M_+_/SC\Y;N) M.!@^2M:5G$(^]2/-_<2#.WQ&2?FGGAN'9^.4%M,X'*?IX$_J3QI'GN&4Z@F1 MM.=KGIX37S^Y*VI/,#733G\8C^*LEXE'R11.WTI6=/!\4%'7_I$TX!NM?TGV MI_MW>-D_/]_$^T?\,]-K+@T(K$@U'DV)C[I_&/N-5:U_C%;*$H/\LJ9O"=1. M@.XKI>QNXP#V7R>+_P!02P,$% @ ]X,%4R@6,54N P : 8 !D !X M;"]W;W)K&ULA57;;MLX$'W75PR$/B2 $DG4Q6Y@ M&W#2%&W1 $:SW451](&61C91BE1)*D[[]3N4;*\#)-D7\:*9<\Z,9D:SG38_ M[1;1P6,KE9V'6^>ZJSBVU19;;B]UAXK>--JTW-'1;&+;&>3UX-3*F"5)&;=< MJ' Q&^Y69C'3O9-"X*+V&R=OX@7LXYO\![=UVYE MZ!0?46K1HK)"*S#8S,-E>G6=>_O!X&^!.WNR!Q_)6NN?_O"QGH>)%X02*^<1 M."T/>(-2>B"2\6N/&1XIO>/I_H#^?HB=8EESBS=:_B-JMYV'TQ!J;'@OW1>] M^X#[> J/5VEIAR?L1MN<&*O>.MWNG>G<"C6N_'&?AQ.':?*" ]L[L$'W2#2H M?,<=7\R,WH'QUH3F-T.H@S>)$\I_E'MGZ*T@/[=8&?J^QOT&KFJX_=6+CC+N M(E!4#V=_\;5$>SZ+'3%Y^[C:HUZ/J.P%U!+NM');"[>JQOJI?TP*CS+90>8U M>Q7P4Z\N(4LB8 E+7\'+CF%G U[V/V%'L))F4[7N$\I%:T:!XP7-Q:)ZA,L8:E M);+@J\6FE_!9- AG'Q5\0V[L.5 J<4CE.ZRP7:.!+(V"&]UVO4-CGTH#=E' M&YA&13:EM8SR?!+<\6I+@LP8!N^I1O5:4*5 6620E&DP?O>*.%Z@X--(Q[] MWD)V,8$T2HH4RCP+[G7C=IQL"BC2C/SRX#-2BVVUK$&TE*T']"J\7\H@+Q-@ M61FD:926&8G*LX0:CTI;DL(L,\HBE)624 MF?09$4\Y"3S-/2>+6$[D04HB&&6"32?!ZMFB&%OP#104:T)K'B5O"WBN'N.3 M[F_1;(899TEIK]PX"(ZWQS&Z'*?'?^;C#+[C9B.4!8D-N2:7DR($,\ZU\>!T M-\R2M7;TU8?MEGX%:+P!O6^T=H>#)SC^7!;_ E!+ P04 " #W@P53&>)F M*+8" ""!0 &0 'AL+W=OBE^UAV(-B,XE06?(DN>GV]:/D),NPI@^) M19H\/(*R'-.%A96P^CR!0KK)@Y4S5*>K-0NF*63+V,3*V1 ME3ZI$E$:Q[VH8EP&DY'WW>G)2#56<(EW&DQ354S_FJ%0ZW&0!%O'/5^NK'-$ MDU'-EOB ]JF^TV1%.Y225R@-5Q(T+L;!-!G.G7%= MCH/8$4*!A74(C!XO>(%".""B\7.#&>Q*NL3]\Q;]@]=.6N;,X(42WWAI5^-@ M$$")"]8(>Z_6GW"CI^OP"B6,_X=U&]O- B@:8U6U228&%9?MD[UN^K"7,(@/ M)*2;A-3S;@MYEI?,LLE(JS5H%TUH[N"E^FPBQZ7[* ]6TUM.>79R+2V32SX7 M",P8M"8$2:-P_,C(94Y&D:4B+C0J-H"S%C ] -B#6R7MRL"5++'\-S\B=@#OHU+EF@L!3):P)W_JY<,E-X50 MIM$(WZ=S8S7-S8]WRN:[LKDOFQ\H^T#K5#941RW@OZ:_U>9WX=RN#DW-"AP' MM(P&]0L&DRMC.0TJEB2&ZG2>#"X: 3=\@4!M1-_&2RRPFJ.&+ D[%W["R- H MF%L3L^*U@<%IDL(1)-WPO)_0(0_3+.\\:E:B9!5"?IK$Y.SU>Y"%W3CN?%'R MM%!5C98D+34B[2TU,X4\C]VODR9A/.C#($SZ>><&C1G"M"B:JA&>+ZN4MORW MIP#'_;P+)W"#!5.+$GNG:@( #4% 9 >&PO M=V]R:W-H965T:4P]#P*=EU!1/90U"#S92U51@Z8Z!+I60 L75/$@#L-)4%$FO'3A]K8J M75QZD7?:N&>'TMB-(%W4] [,#_JK4(KZ%$*5H'0 M3 JB8+_T5M%\/;+^SN$G@Z,^6Q.;22;EHS6^%DLOM(* 0VXL L7I"3; N05" M&7\[3*^GM('GZQ/Z9Y<[YI)1#1O)?['"E$MOYI$"]K3AYEX>OT"7S]CBY9)K M-Y)CZYN@<]YH(ZLN&!543+0S?>[J/]",@_ZP" SR M6.\@[S#7+69\ 7-"[J0PI2:?1 '%__$!ZNM%QB>1Z_@JX&TCAB0)?1*'<70% M+^F33AQ>#W*M-&X5OY#;8X$4R<;"2MSP-5R#^=)<*ES- M!RE%64&M2UDS!:N3R9G_[CPC>DOP5PEW>N>;D2=+*6]I\4=Q,O'((!"0&Y+ M\6\+%R $"4(SOO8R)X-*8MS]?I3^F_4=?5ER#1=2_%T69G,R64Q8 2O>"G,E M[WZ'WI^8Y.52:/O+[GI:;\+R5AM9] M\*4 ?70\-ZB&B.=Y+_*\$QF\(#)AGV1M-II]J LH]OGG:-Y@8_!HXWDP*O#/ MMIZQT'-9X 7^B+QP\#FT\L*7?-YP!;W/E_P!4\RP,Z5XO0;[_<_94AN%^?+O MB+)H4!999=%+RK",BE8 DRL$N-Z"LOF,*[,!M@5MT I>%ZRM^X5L* #Z$/"C MJJA^W^F&YW RP0+5H+8P.?W<27/.N>!U#HP;]AYRJ):@6.@3IG[& C<-(^>" M8QZA_M:PZ2+(V)&#B;^"DHR:^K3>$?*)JWS32P@\-FU4*14SDL%]OB$HF:)$ MVO'YB/GN8I$Z%W:'A/8.+WNID1OZT<[Q@,@C09A$WYJ0#!9(;;YC0.0FZ<+Y M< \J+RGZ9=WS!HM=;^<7I$*(78K80XH>3/:Y-=I@T,IZS;BF8#[#%#E0E^?M MZ_K:0&F<]&"BX>"BY^=<$M)5<%?12EPC$@E6:\:93;6H;H;U7BX[LZVO!340AE.3F>-W<4X>WO,[KD',B?#,O$'X"P956 0 M4IBOKK\\;5%@+G XN?"6(G%,'0K:J)+#02-'G/?EMBPPG]E#":)@'GN#Q=)@^E#'D@*; MBJ"LB>C@JM2W;U<* ),(RP"MI:X#S)LA%#M\>%91N3P QQQ,9@CI1^M/0=0K M7BJVY:+MIT15X830-)G9S\R/9MEB#-9T@#5]-:S%OH] MF&XRO<56GV,4#F$^:L%AS.TTUNP2A8(S]8_8#6+E3(.GQ)6OZ+93^G4NL7XI M9;,H0.06LW#!LED0?%-+5$H]LL,9# T1JX@=67X_/% ]."RB_CR.1XQ\WD;) MS$<#%VF& K*9GZ*4=+1J%D-X%Z^OFJH1\@% __+3(O#37ZG$F5R*Q[6KBT-491XU7_X MQ+$06,2'+[Q<88=")Q1LH<9V0T5 F9AX^!/8WR2-G0_U&NT"A<"ZC,R@&X1K MKZD%<@K9V(MR@ND;(9/O^BFA[<6)<\VI7Q E/O)NP5!LHCA$#0%2!%%$40E3 MYR/4H+BPE+S ETU)=VX[A6,WBA-,D#@,.M]Y.E6 B!H%M[7I7E'#[O &/>N>7D_DW0,6 MKUF(FF8"5LCJS5*\-:CN4=@MC&SL0VPI#3[K[.<&W]&@B #/5U*:QP4I&%[F MI_\#4$L#!!0 ( />#!5-'8LHZK@, *@( 9 >&PO=V]R:W-H965T MQ#22[6[0%=A'$:?-0 M](&6QA81B51)*D[_OD-*5F+$Z^9%'))S.3,\Y&B^D^I)UP"&O+2-T N_-J:[ M"@)=UM R?2$[$+BSD:IE!J=J&^A. :N<4=L$<1CF0<>VL +S1W>G@M!<"J)@ ML_!OHJO;S.H[A3\Y[/0;F=A,UE(^VK.!2 M==8(C@M[*"NC<)>CG5E^84IPL=6D SRJFBD@9P]LW8 ^GP<& UBUH!R=W0[. MXN\XR\E7*4RMR1=1075H'R"P"5V\1W<;GW3X>R\N2!)2$H=Q=,)?,F6;.'_) M_V5[A]FN7+9_W:RU44B.OT_X3R?_J?.??L?_"N],U3= Y(:4LNUZPQSW<(K4 MX25AHB(5;WH#%8%WI3]6\=,!'VH%0-JAZF"K3K!FX&JVXB_'=SQ;35O2D$R2 M]ZUO03$C%<&;?@1M(_4;I-XW?"_#F- LS08QIT4> MDW/O,PB)'/YXE$=WJ:#ZF3TCN"T,RYK@ZZ(-VF'YR$\_S.(HNC[B+$MIFD0D MO:1YG),LH6&:DN22%DGTBO\UV*US@'##BW!,!Z5TDHJ]%!4VES'(!_5/D"N; MR)5]F%S[% 6FP052#8(SF\[YFWO,C%%\C13$VTR,M(1$.A!\4LJG6C85*'V, M<"=!V!YQI3M6PL+')J!!/8,_L-![QS5O9.'Q'>].&A"&L\;;(QL.]XR+X5#S MZS ,,:5C=/TD!5+"<)L; MF 4NC;Y388Q]?OQ@@),/-63D=V]F)J6Y>N5V6- M#_M!@4A. M9 \?&MD-M\=K](\A=HIEQBQ.M/C!"U<-HJ,("IRS1KBO>G&&;3P]CY=K M8<,;%JNSO>,(\L8Z+5MC8B"Y6GW90ZO#EL%1\H)!UAID@??*46 Y98X-^T8O MP/C3A.8'(=1@3>2X\DFY=H9V.=FYX9CEMZ71C2J T:.8:PR"G@.EW3 OG(6= M*3K&A=WMQXY<>L,X;^''*_CL!?@+9KJ0]/8@2[+DJ7E,3#=TLPW=+. =O(2' MID0#H](@4FDX^'6!E?1_RL@-3/JW=OTL/DI+?7\2F '5*AP41T6P)V%V7,$%]Q5<&IX =.E8I+G M%LZ50[/:9F*/IGD7=EJ'I]/SM;-.W1C;,,J@T\'O8TJ]^%>"*2]]F^]MUG^7 MP"/](I"]U/>A)"#=]V67'C^Q7NO@^J7@_8)=RADUE(WX M/R_;2#M>X@4SAO2W/@&4# K'8C![XHGY? ^H,DY[=>&Y^%.O$W3;B\!NAE@ M*T;WQ#__S.='MV7TW V*M[J:_T%0-9><[J# .15\TGW?B\"LFNYJXG0=&MU, M.VJ;85C1?PJ-/T#[N)[Y^;/-_P#4$L#!!0 ( />#!5,CZ7[MH 0 M -<6 9 >&PO=V]R:W-H965TKVX6@?3&+ JF,SVRD]TG[\["3$ 8*A4S?!!\C% M[^/GO?AYC8<;(5_5BA -WE/&U:BUTGI]&P0J7I$4JQNQ)MR\60B98FUNY3)0 M:TEPDANE+$!AV U23'EK/,R?/)5!9FF+Y?4*8V(Q:L+5]\$27 M*VT?!./A&B_),]$OZT=I[H(*):$IX8H*#B19C%IW\'86(6N0C_B=DHVJ70/K MRER(5WMSGXQ:H65$&(FUA<#FYXU,"6,6R?#XJP1M57-:P_KU%OVGW'GCS!PK M,A7L#YKHU:C5;X&$+'#&])/8_$Q*ASH6+Q9,Y=]@4XX-6R#.E!9I:6P8I)07 MO_B]#$3-(()'#%!I@/8,8/N(050:1.?.T"X-VGED"E?R.,RPQN.A%!L@[6B# M9B_R8.;6QGW*;=Z?M31OJ;'3XPE65 &Q *9J%.$:%]G@R;82[#M%EYPN:(RY M-HF*1<8UY4NP%HS&E"AP-2,:4Z:NAX$VG"QR$)?S3XKYT9'YN^!!<+U2X$>> MD*3!?N:WA\@#$)A@5!%!VXA,D!?QEXS?@"C\"E"(X,OS#%Q]N?X" J!6V(2H M@>'T?+RPR4&_^8S$QAP6YB?H[/@;5140Y1-$_TL%@&^_&GQPKTFJ_O2P:U?L MVCF[]A%V4Y&FAHY9!_'KUS66X VSC( KRL%,,(:E FLBBVA<@[^!-U.38JY> M/I=5Q+=Q>!.&(1P&;_6,G!RVXTJG[<9M>C@B M:F;6JYCUO,Q>^)PR1A+386)"W_"09BBP:!7CU*1Y<-QL#<8'(UF MO^+<]W(V"]8T8$4 9J:I8AX38-HS2$0VUXN,;;-]VH_^8;QWDUVX<3BL[:F) M0>7%X/,C/SB(:$%EG_+A.-CW<(:A:V:AE_4]CTWY HW?K2K$5LV6I+$I^7$Z M=KW_X)$O6.NOT MUMTWW4Q5(\.V!V!7GTT>(W 3H O4;NO8"H\]0EQ*E63S* MG8!OR"X[UU[@J?[";9G((FJ2JM=3E>/'@PV54[+_N.&N3Z[/0'^CJ=;N4VWM MGE-SKF' [B76G&L;T-\WSJVYWD%![6\%&H80$&\$+K&WD]!ZASZCM$L6W76L8 MCK]%X:[/KD>@?S2_$ Y3;/TK#)S(HTZEUAF3N*1 M_T_!O:'$E]1N5[!2Q&Q@,D7L_I7117,B_7@(?"=XOU1WN3EY1WYY?\#O9R?$ MJ3+J7V)"G#0COS1_/"%^/'@Z(Y'3X>D)7)R'%VB'$=.CB._''_N M 44YV5J>S=_F9Y-[S";R=%F>L#J8X\GW M+X30VQL[0766 M/?X'4$L#!!0 ( />#!5.2VC5:@ ( '(& 9 >&PO=V]R:W-H965T MP[G'%N7="O5LZX #'FIN= SKS*FN?%] MG5=04WTA&Q"X4TI54X-3M?9UHX 6#E1S/PJ"J5]3)KPL=6OW*DME:S@3<*^( M;NN:JM]WP.5VYH7>;N&!K2MC%_PL;>@:EF">FGN%,W]@*5@-0C,IB()RYMV& M-_/$UKN";PRV>F],K).5E,]V\KF8>8$5!!QR8QDHOC8P!\XM$Y/83]'Z@R&RI:8<+P\5.1"\ MAJ20[E@MR\N&4?"!,D,=*MAIQ.O4-6K;"_;RW=]?9BP[8^]** M"Q('9R0*HG $/C\.7T".\-#!@]=P'X,>THZ&M"/'%Q_@^Q_A_+A=::/P^O\\ M(B@>!,5.T.2 H$=%"QB3,A9U1S5U5+8[;++H.DJFJ;_93_1]57@9!U=#U2N= MDT'GY*C.V^.AC*GM"),]'>=1D+P1.U(T"0]H30:MR?%,I:&1[#=^"M5:R8TX5 B+KBX1!K5=;AN8F3CFL1* M&FPY;ECA3P&4+<#]4DJSF]B^,_QFLC]02P,$% @ ]X,%4VM;OXXM!@ M"1, !D !X;"]W;W)K&ULO5A;;]LV%'[WKR#< MH&@!3Y9\3^L82.VNS= ,0;-N#\4>:.G8XDJ1*DG9"= ?OT-2EN7 5M*BZ(LM M4CRW[URIZ5:J+SH%,.0NXT)?M%-C\E?=KHY3R*@.9 X"WZRDRJC!I5IW=:Z M)HXHX]U>&(ZZ&66B/9NZO1LUF\K"<";@1A%=9!E5]V^ R^U%.VKO-CZR=6KL M1GD:;L%\RF\4KKH5EX1E(#23@BA87;0OHU>+:&P)W(F_&6QU[9E84Y92 M?K&+J^2B'5J-@$-L+ N*?QN8 ^>6$^KQM63:KF1:POKSCOOOSG@T9DDUS"7_ MAR4FO6A/VB2!%2VX^2BW[Z$T:&CYQ9)K]TNVY=FP3>)"&YF5Q*A!QH3_IW+$ 0QG7+\D9Z1*=4@6:,$$^"69T MI[9QS3A' MP[JR^G78.J60'=N%3CC5>C=T*-:ZH"$@X[I!?VPB/D\V;R/PH1 MD'[HR*-/MPORXNSE7G7_>X3KHIGK+>0[KN'HD+R+,%=8]RJL>XY?_\>P_OP! MWY(K YG^MT%:OY+6=](&WR&M@RFA8\5RNSCFI6:6\Y3>@EHC1^'JA(&$8$20 MY3'#MLRDY-WBBN2%T@45AAA)3 KD&EF (I=K!8 5Q 3D*LL@8 MJ&70%WH%2GGE=N*9B'F1X-[@H?ND"W!M(PZC+TZQ,3BL$>*<5Q&TB1WO'9[)T#&QT]5F%F%%F78W1T0/*]'#1M&WE+OJY-SR6+&>-_/Z M"+ETZ)5!;IT(5 F$5I,JL0G=8/>A2Y2+(9-*CO7)%8K'@J9#M7G.&E]ENL2]T+4EM_.R*6!&E==&S5[;69#8AI:0;^3DQ#'WG,YK M48,Y<3QHQI7X<:/X#]A=N',OFKY"1%QU("LXKH%G%H4U%0;!^+@*DTJ%R7?/ M&OBLS6,AW,SV2K2P"(CRBN#:^.FA OB0='"B,.69 F74A08TQ@_:^JKS$K) M#)M9+XS&>//X6C#M:BJ&AZ'<$I_U@\&NM[9\N8MCO*PH'[46:\I<**X*E(MA M]4[A>G$O:,9B76:,33-M#>"$U4:<>N)4U<[R=((4Q%(E/LXMA"U,1@4;$#BX MV$-XY;,Y@21PA[<_[2=QR\H.")*SQ.FX0F!$S# 07*K9]JR;@OV\R(QQ*459>Y9[+/;*:?+X&6U:;)MLHW%]:PE\P24>U2U+4 M:/2-8C'4BN:WVL7HZ&W%LYL<-(>@=R+1H_T%(NH]4M.3PB<#XG^C9 R0/ W: M_:TAZO\*:/?--FKNMM]9O4IN#\K7*6#W?3=J;I;O0&!6>3TN$QQ9<-"V68;M MZZW/LB>AO.\8T>A7H+QO$=%/[1'1D281!J,'*'=KGQWL1R*\Q*\9ICJ'%5*% MP1@Q5_Z[BU\8F;LO$4MIC,S<8PH4)PY[ -^OI#2[A?VX47W]FOT/4$L#!!0 M ( />#!5/TX/MS^0( $$( 9 >&PO=V]R:W-H965TBT"SC="9!%7E.Y-\) M96([\D)OMW"3K5-M%OSQ<$/6=$[UW68F<>975I(LIUQE@H.DJY%W$9Y/PL H M6(G[C&[5WAA,* LA'LSD*AEY@2&BC"ZU,4'P]4BGE#%C"3G^E$:]RJ=1W!_O MK'^VP6,P"Z+H5+ ?6:+3D=?W(*$K4C!]([9?:1E0U]A;"J;L$[:E;.#!LE!: MY*4R$N09=V_R5"9B3Z'=.Z 0E0J1Y7:.+.4ET60\E&(+TDBC-3.PH5IMA,NX MV96YEO@U0ST]GA0*5Y2"I<@7&275).,J1,X@SG605(P"F*%,K@;"95. M"DL"%G7J1^"#2HFD"C(.=SS3ZA07<7R;BD(1GJBAKQ'>(/C+$G3B0*,#H#%< M"ZY3!9]X0I/7^CX&744>[2*?1(T&OQ6\!>W@%*(@"N_FEW!\=/)"[IX-;MI5 M@MO63?N FP_D[^?%0FF)]?JKP7^G\M^Q_CN'_+N-0'ME6.-U&G.\8[#G,A-)G.P9+ "3YC=6. MYUTW0G7?0)WUN[UZIKABBAN9;H4F;%>Q'TA4_#91<=@9U$/U*JA>(]0]806% M#95E?I[WCE4=A+/6WX,(@U9X *)?0?3?FYG_BA=QZBBL*+^*NN5X3 MNI@)Z?J5FVBQL3UB(31V'#M,L<=3:03P^TH(O9L8!]6_AO$_ M4$L#!!0 ( />#!5..UQE[!P, ($' 9 >&PO=V]R:W-H965T9!A8B2..Y%!>,R& _]V9T>#U5E!9=XI\%41<'T MWRD*M1X%%\'VX)XO<^L.HO&P9$M\0/M4WFG:10U+Q@N4ABL)&A>C8')Q-1TX M>V_PD^/:[*S!13)7ZMEM;K)1$#N'4&!J'0.COQ7.4 A'1&Z\;#B#1M(!=]=; M]L\^=HIES@S.E/C%,YN/@D$ &2Y8)>R]6G_%33Q=QY[UK(>WG-+!L/M5J#=M;$YA8^5(\FY[AT M17FPFFXYX>QXDKY4W'"?(;6 1Y9R"]^E6@O,E@@W,@WA[!HMX\*X^/R/'&^V3K_31I)?Q6R1 Z M\0=(XN3BZ>$:SD[/6V@[35(ZGK9SA'9:&3HQ!F:JF'/)?'9V,W7-32J4J33" M[\G<6$W-]:=%^+(1OO3"ET>$9\SDD%)N>8;:RWZ@%C.IYJ5VNT,I;V=\S!&L MLDQ 6>DTI_Y]SP_ZR;D*MQ$H>]8;0ZH-AK%'NMBO>X0EGA(;T:^'%7+NP>5NLW:OU6M1_T M-%!#J.*@8']/,#XF.&@$!^U? 56,ABJC"BX0#\Z9P7Y:][,:[8S% O72#W]# M#4$]4T_(YK1Y7R;U6'TSKQ^G6Z:77!H0N"!H'/:IKKH>^/7&JM(/V;FR-++] M,J&ULC5;;3N,P$/T5*^(!)""W M-FU16PFHV$4KI(K"[K.;3!H+)PZVT\O?[S@)H= DNR^)'7O..3/C&6>Z$_)- M)0":[%.>J9F5:)W?V+8*$TBINA8Y9+@2"YE2C5.YL54N@4:E4BT)QEL)1$%6E*Y>$.N-C-+-?Z^/#,-HDV'^SY-*<;6(%^S9<2 M9W:#$K$4,L5$1B3$,^O6O;ES/6-0[OC-8*>.QL2XLA;BS4P>HYGE&$7 (=0& M@N)K"_? N4%"'>\UJ-5P&L/C\0?Z0^D\.K.F"NX%_\,BG!5QN4@; KHE+E M@FHZGTJQ(]+L1C0S*%TMK5$S&91F&!>(2$R9)%O*"U!F02= J%*@ M%48=\25NH5E$.*-KQI$,MYT1EI&71!0*5]34UNB,D62'M?"[2KC7(?R)'H@W MN22>X[FOJP4Y/[OX"F)C))IP>$TXO!+5[T!],([@\7S#>JC\Z0'U&U"_!!UT M@-X74D*FZY"TN5K9!Z6]J:/M?.(.AE-[V\(Z:%@'O:Q+B:4K]>&2Y)P:=DP M8#)RK"G=)J*"&QZ)& 1!NX9AHV'X#\_- 0:)]PA]"1#O&>1O?Z(3/1WPG#?NDE_TV#$61(7-.#W2-3<&<,1J&LL""ASW> M'.I[ 55J)B=JKOQ@U''@7>>SESF]>A80@S3-1M-].W$-\(79&SI.!_-1%W7_ M(P_'_0US4J3MN:BQOH@(W$[W/WN7Z_57?"'#!&\HDDL68C(X%V%9=:TBO).> MXP>3H?=-A'UTM9AK^HG*#BR$_IB8"ZSY_YC_!5!+ P04 " #W@P53:COMDR4# E"P &0 M 'AL+W=O0-A*GI074 M5J*P:=V&A'C9/B ^N,FEL7#L8CLM[-?O[(2TVTI "&GB2^.W>_SG10)56< EGFIBR*)A^&(-0RV% @\>%/Z)^]\^C,E!DX5N(G3VT^#/8#DD+&2F'/ MU?(+U [M.;Q$">-_R;(^&P4D*8U516V,# HNJR^[KP.Q9A#3)PSBVB#VO*N+ M/,L39MEHH-62:'<:T=S N^JMD1R7+BL75N,N1SL[.DKN2FZXCY#*R"5+N"7? MI%H*2&= )C+9)=LG8!D79H=\)!M@%]+N4LZT0<21S&]NC@AVUL[+;"=)B<=#]OYWSFY_HXWDXF%PMRT\.XV MO+N>=_<)WN-2UOEC:QZL&&W*6(78\XBN@BQ&-#Z@G4&XV$!DKR&RUTKDV/]O M0&/9$,R+*.?SE9!:7.TU-_3>58KZ#>_^FZ>H_V^*:+_3WYRB_8;(_C-$-O H M#62E(()G&XFT(]*8/ #3IB5*!PVY@U=$B15*6_[+"XH48'.5;F+9#HUCYAZ* MCVZCA2J-5@4\:D6LM(>P*1#)"GB)S.G:\T#?E=!IO&(>O[G4:\B_M-[;+'6Z MJN>T\^9B?P:R^ZS8Z:ILT]?4[1?*_1GLHR3!#DSC"[_QP0W7.A\*CJ?%;'JP;RE.D9QW9!0(:FT6X?WPA=]635Q*JY[X.FRN+K MX(#!5/?AUPG(@, / * M 9 >&PO=V]R:W-H965T':@\F.<"J8S/;@>Z_G^VD*840H>YAV@O$E^^[^\YW MCJ^_YN))+@ 4>LXHDP-GH=3RU'5ELH ,RQ9? M-O9EQD6.FEF+MR*0"GEI11 M-_"\V,TP8,[+X9[,E\H8W"'_26> MPP34P_).Z)5;>4E)!DP2SI" V< Y\T^O>@9O =\)K.7&,S*93#E_,HOK=.!X M1A!02)3Q@/7?"BZ 4N-(R_A5^G2JD(:X^?SB?6QSU[E,L80+3G^05"T&3M=! M*"@A*@G1H81V26@?FD-<$N)#(W1*0L<6J]A=6YH15GC8%WR- MA$%K;^;!UM>R=44(,YTX44*_)9JGAF?)KYQ(8MN"S] WG!"%OC"^II#. 5VS MI(6.1J PH?(8G:")/@II3L& I[G4WJ34_?3J9"DXL@<$$58<%&,]00^3$3KZ M<-QWE59M8KM)J?"\4!CL41BB6\[40J)+ED):PQ\W\^,&OJMWJ]JRX&7+SH-& MAY]SUD*A]Q$%7N#7Z+EHIM]BH>G^7OKH\.A>#?WR\.AU]/'?Y7[U;O%O2A%6 MW1M:?^&_[=['&XU$UPHR^;-!=52ICJSJ:(_JK_J"H5S*NK-0,&/+-+?(:NA' MW=#S]&ZM-GML%Q=X<;"#&]7@_#C>P5WNXJ)V[PWN3:KM*M5V8ZHW.DVT!'WU M+; =$08&G%*L=BPUGT3QH7;[H:>$Z_EA6]57]6B_$Z]YKC2'#=JKNDB]'@+ MV11$4_4[E?O.?]2SW4IUMW%3[F$%+(>Z4G5W6J<7=:-@JU2[J(X7!4%]J7J5 MJMY[3]*XMQ/PQ.^TVUNR:E!Q'/2V9+D;%VP&8FYG)XD2GC-5?*TJ:S6>G=FI M9,M^[I]>^C7VL1[GBNGKU7TQ"^H/]IPPB2C,="BOU=$]+XKYJE@HOK37^Y0K M/2S8QX4>24$8@'X_XUR]+$R :L@=_@%02P,$% @ ]X,%4WV)K-FM!0 M0"( !D !X;"]W;W)K&ULO9IM3]LZ%,>_BE7M M!9,8B9_2=BJ5-F"Z7(&$QKA75]-]81J76DOB+G8H3/?#7R+#0>OG1\]1LP6.FCN22)^:7N4QCILUI M>N>I9/ )?CRAX]RAL/A+ M\)7:.@9Y5VZE_)&?G(?' S]7Q",^TWD(9O[=\Q,>17DDH^/G)NB@;#-WW#Y^ MBOZEZ+SIS"U3_$1&?XM0+XX'HP$(^9QED?XJ5W_P38=H'F\F(U7\!:N-K3\ MLTQI&6^G7#,1J??@ [@VXR?,(@[D'"RW??B3CS&ZN3X%!^_>@W= ).#;0F;*6*B) MIXW0O#EOMA'U>2T*[1 5@$N9Z(4"9TG(P^?^GNE@V4OTU,O/R!GPSRPY M@_ M!,A'L$'/B=O]E,^,.RSY1Y\OS#FX%SS6/WK M:(R4C9&B,;*CL1.V%)I%XA!4_XTE=^+6S)7FB5), MKB;)04T,'M)117'="(W\<;/@82EX^)OI;LONL)XW-(*DHK7)"A':+'94BATY MQ9XGNF-^1S4YD/BHHKG!"(V&S9+'I>2Q4_+5[^DBHBKO8IA5P=(>BB&!3MTD_U, M:1$7B+E1?)Y%X$+,.3@X3\ _G*7J?6,9W"$I>,Q=7?(LN:$;W2\8*T%MK 0^ MK Z5.KTIA3M&BJ4W=./[2Y8F0F=&:5Z\N7C(C_<;)A:Z<-3#,+' A&YBOJ . MX_JNQ:>U0M3Q&1#<7 ADZ8G<]+Q^4KI'ZI'%)>H!E\CB$KEQV66&MH1LGZ'( M8A&YL=A]9&P"!\_6U>IN=F/T?(:2'0/#0A:Y]^ 7W-QI+F04 A&;3BD3$6;Q/ZK$E)^Z!G-B2$[\^.5M" MHE9RXJV'#BT;RDJ*P7_@!=M];.&'>]AA8LM!_/H[S):0>U3![[ M-VS)AX<]%,%"#[MOTCL5P1T2MQ?!0A*[(=E0A.Y+-+&0(WX/S_TL_@A\]2*T MA&PO K&X)&ZV-?'HU=9G8K%(^G@8N_4TUKT5[%04=\AV/!%+3^)&W25[V'<= M)I9Y).@AQ99UQ+W+ZY1B=TBX1XXM'(F;9-4M2 MAI:0[3>2U-*1NE'64(7N"S&UU*.HAR)8NE'WIJ]3$=PAA^U%L#2D;G0U%*'[ M0DRW7B_U<*],+?^H>\_7J0CND'L B5I@4C?=FH#T:BLQM5RD/=PI4XM#ZMX$ M=JJ*.Z1C>^1MO:./>7I7?+J@3!JS1*]?UY=7R\\C/A4?!7C6?/UMQ25+[T2B M0,3GQM4_&IK!GJX_5UB?:+DLWOC?2JUE7!PN. MYFAN8W^=2ZJ>3O('RHY'I M_U!+ P04 " #W@P5314NTWQ\$ #M$P &0 'AL+W=O M&'( :Q*;M9W26>W^]W5"B%,(ANXB;B ?YQR_?GWR0-Q?"?E=+0 T>DT3K@;> M0NOEE>^KZ0)2JB[%$KBY,Q,RI=J)%)9FE+YXP82L1IXV-M<>&3SA-KT9AE"<4$;\R6*G:,WYR%P^\(%<$"4QU7H*:KQ<8 M09+DE8R./\NB7C5FGE@_WE3_6DS>3&9"%8Q$\AN+]6+@=3T4PXQFB7X4JY^@ MG% KKS<5B2H^T:J,#3PTS906:9EL%*2,K[_I:VE$+<'4:4X@90+93HCV)(1E M0EA,=*VLF-8MU738EV*%9!YMJN4'A3=%MID-X_DR/FEI[C*3IX=W7%,^9Y,$ M$%4*M/J,N&F>C[>@*4O4)W2!GDSKQ)D)$#.T$V[N/S_=HH\?/J$/B''T;2$R M17FL^KXV\O)!_&DIY68MA>R1TD9CP?5"H2\\AOAMOF^F5J@MZ(;%4B6TZ1]Z#4%;J>3K,T2Z@VOM!42,W^HODSWJ1U7:]54W'1 MB5I;4AN"HEZSTG:EM.U4VOR<-"EL[PQ.@C B6Q)WH[J8M)HU=BJ-':?&48$+ MD.@1DL) M6!+TUAC2"<@74W5K4;HGJ&%>]5HO5.U<&_'3MSJ=?"6Z;M1$0GW MM# .+$$#MTQ)8^ TA8W3_SCFCFM@QF?P&A,['CF5VV6E.@NB=J>]Y7895;<[ M; 7!'KLM17'HU/F+X!4P^? '+:/\NAH2UM]ISO-:&EEFA^\7V>+O==7"PWVZ_MJ%B MNG5>[#,I-!49U^N]E>IJM9=U7>S@^#9\O1$VIG+.N$()S$QJ<-DQ9)/KO:7U MB1;+8GMF(K1Y-(K#!9B5DGF N3\30F].\@&J';[AOU!+ P04 " #W@P53 MC+$U*'@" "6!@ &0 'AL+W=OFL!06@E:3=ND:8C"]F+:"S>Y-A:.G=D7"M]^MA.BT*85 M;Q(_W/_N=V?GDFVE>M(E )*7B@L]]4K$^MKW=5Y"1?6%K$&8G;54%44S51M? MUPIHX405]Z,@2/V*,N'-,K=VIV:9;) S 7>*Z*:JJ'J]!2ZW4R_TWA;NV:9$ MN^#/LIIN8 GX6-\I,_-[+P6K0&@F!5&PGGHWX?4\M?;.X!>#K1Z,B63 MG7PKIEY@@8!#CM8#-:]GF /GUI'!^-?Y]/J05C@3:/9DENBK+7Q9@>N-DYMLF'"GN(2E=EE1H>S MGUB",H&4 H&$,[IBG"$#34X7@)1Q?4;.R=)GW=4MRU5=(#J>R,N2!Q\(E$0A2/R^7'Y G(C#YT\ M>"_W37WZ(D5]D2+G+S[@[V/I_[E9:53F7OX]$C+N0\8NY.1 R+D[>A.I@%IJ MAJ-%;%VDSH7]7)]GE^EEYC\/*S5B$X>]S3NV2<\V.ZXC#&FNQCQ)-=UGVC M\// Z!ULVL.F1V$?)%)^^$J-L:9[YWD5)>$.Z[Y1' 7I#JL_Z!JV8_^@:L.$ M)AS61A9<7)I<5=L%VPG*VC62E41S-]VP-#\.4-; [*^EQ+>)[4W]KVCV'U!+ M P04 " #W@P53HUX/9X,$ #,# &0 'AL+W=OO(+QV2(#$NOFVQC&0YK86ZQ8D[?8P[(&2CFPV ME*B15)STU^\<2E;M3E&#+0@B4CK?=ZX\/%ELE+XW:P#+'G-9F-/AVMKRC>>9 M9 TY-R-50H%?,J5S;G&K5YXI-?#4@7+IA;X_]7(NBN%RX=[=Z.5"55:* FXT M,U6><_WT%J3:G Z#X?;%K5BM+;WPEHN2K^ .[*?R1N/.:UE2D4-AA"J8ANQT M>!:\N9Z3O!/X7<#&[*P9>1(K=4^;=^GIT">#0$)BB8'CXP'.04HB0C/^;CB' MK4H"[JZW[%?.=_0EY@;.E?Q#I'9].IP/60H9KZ2]59N?H?%G0GR)DL;]99M: M=CP;LJ0R5N4-&"W(15$_^6,3AQU ,'X&$#: \!O W'\&$#6 Z*4:Q@U@_%+ MI %,7@J8-H#I2P&S!C!SR:JCZU)SP2U?+K3:,$W2R$8+EU^'QHR(@BKQSFK\ M*A!GE^^*1.7 +'\$PPXNP'(AS2$[9I_N+MC!JT/VBHF"?1!28N&8A6=1)R&] MI.%_6_.'S_"?E7K$_."(A7X8=<#/^^$?.,+#F8/['?"+?OC[JABQR'?PH -^ M^7)XE_:K_Z?]^C]K]S#+;:K#-M6AXXOZ4_V1/[(+81*I3*6!_7D6&ZNQ(_S5 MHR)J541.Q?B[U<3@$9NE >\@A@(R80^[LE>S!;ZCHZ;YL Q'\X7WL)NC#J%C M_UNIJUIJNLNT+W'=Q1.-)JW4GL?CUN-QK\>760:NFSJG-;=PQ$K0"106&WF7 MS_U\81"-IO[KKEK]#G VBCIQ5_VX@R#"D/NON_)SW0^-QJ/@6Y5[09RT09ST M$ITK72J*71O$+C_Z.<+)R.\U9MH:,^TENM$*R]5@ 2< J2A6K%15D7;VOIII MLEMT$Q]_NFMJUEHPZ[6 3J<&NW>.NBII]N^"]I^KYWFK>]Z?BK/;RSMVEEB\ MS]$*4=+ T-6W^VD^KH%]I4H4G@91&&;@ 327^&*;Y0."8\A2RIO(J8P5./;A@(=6D0QV1U-_QVEOPW6*M^.//\S#T#_Y M];=?C%L&)X=LA=V-'$D'>$V2&41LL&4'I:^'U"AU!.U"#Q1#A MN2,0&;B-A!2YL-R-:?A;62'%EV:;(4898&0 $YDS3T#*R(.!5>BA4'K'"-S4 M>)39LRZ&E2A<,&- ]\!=4"?./ LY948+C)X4,65+?-F:*PH,/1BJC;3"KA87)(17O56RH+(Y8C%B.*6_H>?H9 M!QXT]OF09%KE>"=BU!2;X"/;=7A \6[#[18K4<>:/Y;\"=!UTM/.P6A=Y;37 MP&?4DXZRPH(U."(A!%^6E:UAJ&8;E,%>4$9=G&UL[1QK;]LX\KM^!9$-]EK 52S)=NP^ J1)TV:OO>8VM[L?%O>!ENB8N[*D MDE3<+.['WPQ)O6Q95KJ'X [G%&@LB<-Y<-ZC^/4Z%;_+)6.*?%W%B7QSM%0J M>WER(L,E6U'IIAE+X,DB%2NJX%+W+$[7;XZ\H^+&C_QNJ?#&R=GKC-ZQ6Z9^RFX$7)V4 MNT1\Q1+)TX0(MGAS=.Z]O!YI +WB9\[6LO:9("OS-/T=+ZZC-T=#I(C%+%2X M!85?]^R"Q3'N!'1\L9L>E3@1L/ZYV/U*,P_,S*ED%VG\"X_4\LW1](A$;$'S M6/V8KC\PR] 8]PO36.K_R=JL/9T*,= +X% M\/L"!!8@Z LPL@"CO@!C"S#> )@.=P!,+,"D+X93"W#:%V!J :9] 6868*;5 MP9R?/OQ+JNC9:Y&NB<#5L!M^T!JDH>',>8+*?JL$/.4 I\YN51K^ODSCB GY M%\*^Y%P]D&>73%$>R^?D!?GI]I(\.WY.CLD)D4LJF"0\(3\E7,D!W(3/GW@< M@][*UR<*",)M3T*+_*U![N] _HD*EPS] ?&'OM<"?M$#W)_M!+_L!O^!)@ ^ MW G^;@]X#N#!;O"K/P?^OAO\BLU=XIWN!/_0#7[)0L#N:?!A"_AUGX,;MX&? M@ *66NB76NCK_8)OT\)?/\)Z<-S<_KD_OZJ?=>^:'/R@9_HY*_T>/YXU+F M[;R-MN@8CT[]Z7@ZV6"M[\(/+0N'TU/XMX.Q<T=% LP4?-TSJ5H/[.UDBX!1BWY=[%CF-9==;B\+ M9OBS(9[M9=YXMZJ>ECR?=O+\"Q6")FKO*9YN8V^QO7VK&B1.2Q*GCR;1GE&; MUY]N2]WOL.E92<6LDXIK,%^:A(RD"Y()?D\5(UE,0P:)I^H@9[9%SJ2#&F]8 MI0W#3GINZUZ%@%&&:7(/WAL36""1ZAP7)172C"L:MP;(8?MY[2*NEM-XG<3= M" Z2RI@P@B'/($NY3..8"EG=?=X:\LW&TX93=L<;>K9O59/L*@AZ?A]-P_/] M5O+]+<*&[J;%7^U;U22_BJI>=UB]V5++M36=5E*WP]^TZ_"KX.=U1[]W7\,E M3>X8:&05+>HR;)>(957JL] M=._UCR4C18RPYK=FH!XRG_\&I2-1*5$@;KD %8&'"K0(,4%JDT1$ 7"Z3L!" MT3S5]E9AFL>1DZ3@3*#R')1;#4@J2 H 8LTE(Q&762J9W81K3!G3%6L1N/)$ M\5BCJ#UC%ELFTGLN-5F:>!HN.;L'%T*E8\0SAXM%+A CF6,Q[G:D?%X57+WN MZ'I9R1Z)C]A<01VE&QDT7"IA&R8'N9C$KB,4[;W,)V*4D MD 3->4+QV7-]. :"Q!Q2Z4BO[91B%:Z][GC]_O*:_/J) MK>9,=&7B7A5D39/Y>%4:][CAZ(Q@H-4C):NN 9%20>QKGC_*S!LEITX-N MY597^] Q!ZV-R#LP-Y!9CU/QJP#J>T]P*GZM_.N.?)]K MJ566SV,>@@V!!XJ OR*(['/A[RV.A@N?N*,=HJ["FM\=UGIKQ7N[4?.T@]%T M!P551/-[U7/Z4'J=_/%3G'/EA/UNA_D-E;??4GAXFXG_GD5-:BMGYW<[ MN\?5T==VMUFC,'1WG7[E(?WN^N-;BEZ[98.4D7NZ*;4]JYH$5R[6[W:QS3IV ML"_KV;/;N7(P_%W$*<2_NX&.A2"2C"8/9$DCXKG^]]]YD^&KE6E#EA):-!- M6ZE@,&X41+&N9:YI@%OHFSN4V52),%"AB1%_)Y'+(F,@#2+#K '5' M.#$,L\XM9%<29*X9)1^9PE0-@C!&J +P]MT%EL(_T"2GXH'X$],@W:TC+.9W M''-$% 1@,KDBTT23.(4J1M1(UX:P0Y.:/A< 9 MQRN]M;GPMFA!)3,$<*.%H3$W6XI:U;1FAZKOG;Z23?N"#[@& )*09Q2S75.' M.?!DO>2A$9%D(:;CKW M'5M>CKTQW*M"\J"FU_'# ,\9I.]@%H&<1/0![-D0DC# A&HQQTP[09H0ZCE) M[V$W"H1RH1Y>U$ 1#4\C) H=C^(KYAI!GTL'Q',)RHMAV0K?-M8'@"1A.RQ; M'[-I\KGD&UVGC^06]!R#A9VDPOM],]#2-PD1QC'V"B:U[,"_\WY11FN M[&\=V'80V(QLF]3K0('.,6%K"!9KCQF6I AV1T7I^FF3 M>U%RC[N8Z%7F_&H)%J=C()YX'BOTV;A)N8)78D%&P:1UUS&F4O(%!S) '2CX M&3J'@@FRVQ6C,L?Z#S9>4&YKOX%QXF"N+T(JE[4GA$:_Y5(A\]+2"L! !89. M0"5Q(X:-@(H1XRR, *W3= 2[YVQM5:,F F1Z#J&+<-C?U#X5&>D>@U6CV.#" MD4M]JO-2&)A?H!K)\K!0=2"0EZ03JUEU\4$MGT+R%$%0L0+!5@HQ ;SPRN6D MLXBMNO4#AT1C[;[TUL PJL6")Z#2:%ZRX,Z< R06&!5S,P''7,;H =?/P7?' M5@/0PO%%#.(-7_S5I@AITFC[>"ZY-GJLEH(Q F%4+:5CJ#8++,^.=@R4E MF^ICXVY32\ A0D:EK$.TQ%<4?X%8 Q* ,GN;Z+\[-:(?R,227(]W/^0)L[%N M6*,3A&O21_#5BFI?BYWE9H*^16H]']=9BNN3<4:.D93V ML]9)VX"X9R94$AVG-/ES=#H%G49HYG]LSSKK95JQ 7Y!<14S74,0T_C M"++ MP>0HUD_;AVSS6\S\JG3X&.<]D-B7T7D%AI(F,5IHT?PU#LT!MC4)2:Y=$0#; M@@Q-MX[")7^#ZD10G=2@=&R>B*UCV-4*7G=Y"PR%H OS<,G_5$O:'!.$#J?P M;RC&$#.)1HQ'2=5VV3@*]#"Z#"C8UE@IOBT%!KC253DNWS,>OV%Q4%5/Q+E0S7NKT&K198/)%WHLTS\C'CQ<0$Q.' M%CUT72Z -; DX: OGVA"[PSE9FGA* Q!V5H>]JK=UW+MV],>*KJ"Q.2 M(/J#J>D(#9*AQ7-2SC//[^"(-5GUW;8?5PD\% CXUD IZNVU@[HC+"KVR-&! MPT;5S0B,>JK;VL-:JVV? 8!)N:QK!!54HX^@>_3Q[<-]N_&DWB6>;O1$N]_Y,^>9SGR;ZJ)KVC89/T$0?5:.Z4?]179_O3O"V9.C[K=\+T6>EH?FD]FTN M^(5#$*WN.)3',5L Z- ]A3V$^0X?@/MB:$H]%V; B!;,3W@+RPTFO@"L%W+X"GA3P^@J,I$!6C09OXD$50)@U['L0BV!\XA:'Q->$X"-D)>H\>'Z[1\;L3] Z-$%MC2A@* M8O08!YR=PH_P^=LZ21F.%^QLQ,$JH7OD2PL^YA98+1;<83I$AG6*+,,R&\2O M^HB[F;C1('ZM%_\]#8?(]%IG_]1C=FO:*OZY8W8<@[C1*G[393R(V^WBLU\3 MO^TOON?Y$41A$8I6$8I6IL]^>RC^\6^00;><1.R_FAGM8D8[F]%IF?$[81PF M2S9B&H8@%S .01S$*W0,0?V0A?I)DV-SO6ZF5^23YPMS;(B_L]%S@T%.89"C M->@Q?GZS24[=)(U%;F&1J[5H3A.?D 5#2YI$B(DM*HPCKX3Z 6Q7DSFY6J]D MCF-ZA2UY?-7'N--F<[W"7$]K;NX?P%"^7I-P49B(-C3P29<+O;H+[787C@N; MQEJ;+E..(Z M"4-,&=H0FJ-ZHT]RM9/R'@VG;K,QT\*8J=:86\92\$:Z@<,M EY$M\PK^AWZ M.*WMD%,-\ART6X:9U6&?Z\/LJ?BK#IO5AYEN>UB8ADJ]1N]@32!8>0*X]PR[ MT1&F4JV[%R"M!I6X@*DUZ!M^125BRE #_;7 7DFD?QZ#Y_CE!S=@,/X&L$4V?AY:3;X'"0+!,DI M>T2)**W$25X*\]'?9_[1SYLO'E9V[B[;N>$__V%ZQK]T@:$RM:E/U9>+12!4 MXW#?DV6Y]?,CP_D-DM7UJ$QN M=J3R-CI(7L5G$7$A;LF@4G49I;QV%ZM$;NHS>682JIO4C0)ZO=_6Y.@*].%X MB_P0,Q8L P@H_((I,*] 9LMX0?)3R-H\LPDQT#(,S.S/-.#;(?J6<(C/1N_M MCC1?4T)0!(=ES8X(S+% 0.Q)?E)VQ4%VR@7-1R^@_9TW'$,M&H99MP*>O+-+ M/T#<;TC6P@BW0UTD*.IBZKG+8TR)GZSBX']@7.OBY<(:W3^IA8.MR5J*QIAZ M'O/EX2OZXXX(,-.5(Y9B!)9QH!+(4DG?TB?]KY+-:PBI54_ZIMGB/:M4[NG3 M]$,)-AF2A8\(IY\H>N04%:8W:4=32^5]2Y_W?YJT2WT58F2WF:&RC*7/,O?@ M%2#LPHP/! ('T#M+:@X)S1J-$.OST);(FJKB4169%IH@;=, MYS6%AY8>#^=KB$*HQDM9'AW/>T>$@C=K>JB&C$) 6U\35;"^"=\;JQ*IM )0 MUK0M+&R%C;8>&[.4]RE+IN@V%GP6TAJ:0YHM/(W^CW[YD-H*,^V#]B@)3M$F M[;2CH1^E*0T=!:J.'E3?W,1UZKC:VHET%*HZ>E2M[92T 3^%72W:&ZFZ0OC, MAA;@K,? JOD*@QT];[T$7H!79+^WW+Z<7HW6&SEKN=-J#UUG?UD=HZIK4ACO MZ#$^+Q3+Q+L7 ,V<^D6(8^N\7+H)T>/\K>C>Q"SP<^K=Z#&G'IU3NQX)7<.J M%JIDX>B;'?=%Q\L7K2;L\Q1\V$88.Y2-)6'T)&'4I!9'I19'GUJ^D*P;)H$P MIFK1V9GG1Q:4=E#4>?-=KH!-"Z.]A< MT9/NP3 FR-JW#=/12W=A7NNGK<_86ML?NDBZY15;,5.+M=)+RS+M*YIW3Y?"@^ M[BK0=/6@V2/QN'7$-$VSEG@ZAU4M5-#J_GW0VJ%J!ZVFN<-6R^L"5U>!JZL' M5Q4:5E%P&U%4YH"XIQ?$JOT!ZVJ+RN#G>9C]? MBG;\J0I[V(94/&#H*U]GK7D(?]E-/44W>5L35II?E)TB%5C?16"=HLLH24$O M/)>MG/ZW\G*9E="::CSDJ63AZ9-%S@33-]7\7D.YT-J%\50B\/2)0+PND%UK M 9?)0ZCG7=M'J;A<^AK#EI<7/)4H/'T!\&OHYZGDX-D'0C]/(;NG1_9Y2@==QN=BK&=?S3L8KO5'D'6H7%,)[>ECNOI.Y\1K> M$FJ[D_$48GM==/@@#4]/ ;9W*+X\5A XUD-@#^^/ZTAG[3M_5'HK5[PXGK^# MP%!(EB!D#,<0[C1_%SO_PI--]J+N4\)Y$F4?UP0O"!4#X/DR2?CNBWCWMW@C M_N(O4$L#!!0 ( />#!5,_UK_GK0, '@- 9 >&PO=V]R:W-H965T MD[?3M.Z04^42Y<=H;6Z3F'WXS)(?4<"?DD\H -'DN"ZY&7J;U M^L[W59)!R=2M6 /'-TLA2Z:Q*5>^6DM@J165A1\&0=^EXW.^RK3I\,?#-5O!(^@OZP>)+;_QDN8E<)4+ M3B0L1]X]O9O3CA%8BZ\Y[-3!,S&A+(1X,HU_TI$7&"(H(-'&!<._+4RA*(PG MY/A>._6:,8WP\/G%^U\V> QFP11,1?$M3W4V\OH>26')-H7^+'9_0QU0;/PE MHE#VE^QJV\ CR49I4=9B)"AS7OVSYSH1!P+TXQ:$M2 \%71:!%$MB%X[0J<6 M=%XKB&N!#=VO8K>)FS'-QD,I=D0::_1F'FSVK1KSE7.S4!ZUQ+""WL-3[10K MJ-(X7,Y7'[#N%(PG0!:PRCG'+M=D57YCZ]<4X^TX[$6=H;]UT,0-37P]S93A MYDY-GPLC/L.XZ8<#-T:WP>A>CX%5>0DY3H0_->FG3/>2AM<"IFE\W@ MV&;FL(F.3>8.DSAP1]YK(N^]?3F ;;N"[IV1=.(X/(G(810.J)NWW_#V7\7[ M:<^+&Y3VR0,B_QI\WC]GZ@8M.1PT3(/K,K M(-(@/3'>WF6VA]-63/:\9CC==K]_"OC_(Z!M. MLJ-MUW)OF-/SH^PF/.7Q#VZ8)VD^Z9_0NVGU M$;!W4WV38';QO%6D@"6Z#&Y[2"2K:W[5T&)M[[$+H?%6;!\S_#0":0SP_5(( M_=(P S0?6^.?4$L#!!0 ( />#!5->KT:GVP( #T( 9 >&PO=V]R M:W-H965TU ^^UW=D*@A2"QOBGVQ??W[^YL7Z.UD$\J!=#D)<^X M&CJIUL6-ZZHXA9RJ*U$ QR\+(7.J<2J7KBHDT,0ZY9D;>%[HYI1Q9Q19VU2. M(E'JC'&82J+*/*?R=0*96 \=W]D8'M@RU<;@CJ*"+F$&^K&82IRYC4K"#*3;\G0\0P19!!K(T'Q9P6WD&5& M"3F>:U&GV=,X[HXWZE]L\!C,G"JX%=EOENATZ/0=DL""EIE^$.NO4 ?4-7JQ MR)3]2];U6L\A<:FTR&MG),@9KW[I2YV('8>@S2&H'0++76UD*>^HIJ-(BC61 M9C6JF8$-U7HC'..F*C,M\2M#/SV::1$_79JX$A*+'(NMJ$W7V1UHRC)U3B[) M#,]"4F9 Q(+,!96)&21,8F:%5(06A10K%*"EX%R3P E^E M5((ZHMIILM>QJIVV['TP,>3/>*ZTQ*/Y]PC-=4-S;6FN6VC&*RP8G2,.WE:R ME)3K"[(USF').&=\>:@+H-3_=TGA^%.5ZJFKXO M;<72W6.Y##HM+&'#$I[.\C![/,81[G/T#E/T&HK>Z133+04Y\SWO$]%4+D&? M'V+J[3-UP_ P5;^AZO]_G="T -:2H?X>3>BUI&C0P Q.A_DI*3X#UJ+I"RAR M)D&7DJ--"Z)3O$U"9 <3-MA#]#M^RV'RO>VKZ7WDJ@%/6NY9K?N&QQL,WE?0 MW7G1<\#38/J6PA>ZY+IZW!MKTQO'54?8+J\:ZST>)H:%S&"!KMY5#_>65:^J M)EH4MC_,A<9N8X09@%^7PBA-Q.S0?,?P^@?4$L#!!0 ( />#!5, MV@D"O0( !D' 9 >&PO=V]R:W-H965T&'(A%HZ=V0X/WWYG)V1T@FQ[ M [;C^]_OSN?S:*OTVF2(%G:YD&8<9-86=V%HEAGFS'14@9*^I$KGS-)4KT)3 M:&2)-\I%&$?1(,P9E\%DY->>]62D2BNXQ&<-ILQSIO=3%&H[#KK!8>&%KS+K M%L+)J& KG*/]4CQKFH6-2L)SE(8K"1K3<7#?O9L.W7Z_X2O'K3D:@XMDH=3: M33XEXR!R0"AP:9T"H[\-/J 03H@P?M::0>/2&1Z/#^KO?>P4RX(9?%#B&T]L M-@Z& 228LE+8%[7]B'4\UTYOJ83QO["M]T8!+$MC55X;$T'.9?7/=G4>C@SB M_AF#N#:(/7?ER%/.F&63D59;T&XWJ;F!#]5;$QR7[E#F5M-73G9V,K=JN;YR M<26P5#F=M6$^71HLD) M"O;(],FKT:XSJ RA"[F[(G +"=NW%?*P 1RV"G_P)9M0DB!E7,.&B=)7-;4" M<@7&=0>X(/*9$L(A%*BK>W1Y*HS*V]![<\_!9M+M=VZ'HW!S#!D>M:L<])<]"\AI-?4$L#!!0 ( />#!5,G^_+:X , /D. M 9 >&PO=V]R:W-H965TXY>)5+@$4>LM9(4?>4JG5O>_+= DYD1V^@D+?F7.1$Z4OQ<*7*P$D MLT$Y\\,@Z/LYH84W'MJQ)S$>\K5BM( G@>0ZSXEX?P3&MR,/>[N!9[I8*C/@ MCX0_X?H)C$V!G_$UA*P_.D9$RX_S5 M7/R>C;S , (&J3(01/]M8 *,&23-XUL%ZM5KFL##\QWZKU:\%C,C$B:<_4,S MM1QYL8!6L&.2W*?_)6&7$0 MT.M=" BK@/ D $<7 J(J(+)"2V96UD>BR'@H^!8),UNCF1/KC8W6:FAA'N-4 M"7V7ZC@UGBJ>OMX9(S*4\EQGAR36WY\_@B*4R5_0'9KJY,G6#!"?HXQN: 9% MAMXIL P1J1-@92-T3B'"&)HQHB%UPG$&$DFS .)VRMU*T)06BZ&O-'5#P$\K MFH\ES? "S3[ZP@NUE.A3D4%V'.]KR;7N<*?[,70"?EX7'10%'U 8A/@GY".Y M) )D>73@1[6OD<6/+OGZ@RU#+P\SJ83.^J\.=MV:7=>RZUY@]X?%EDB_UU*1 M(M,+?$!3JQW]BYI,*#TM47L6U7P@-F.<=,.AOVG@TJNY]&[G\J15@Z:R?S)- M=$K@^(!.W(GBX."':VXV8N*F\H)=YO9K0?W;!?T)(F^2X(9*T#L0(5&(\C+] M<8(R\MYDQL2-]!*ZI UJ:8-6TA:"% JR5CDS.,N9,,+-*1/7-.+;:+1+E_@L M77"WD\0G*>)>VITB22T@:24 WD"D5+9T,CES\@X'S4[B8/_]#VZETL[-"O?X M[<.1Z^V[0L7M+3XH:;B5)/UUG0-MFZ<5Z)&]8=R]X&^X)Q/>2J:EOV&#O[V> MTU\WE2O^[DL;COZ7ZE'!'I6/>)!<<'A?R_!W%+.6'G?//$XZ>'!JJWO]*[;N MZR#^CD)XJ6Y0V3B!B_J^VN KW_Q3"RJB[J@#HF# M!5.K2*8BE0( )T& 9 >&PO=V]R:W-H965T?;1*6 M-:35]@9L__]GG(]T(^:AJ (V>&.5JYM5:-Y>^K_(:&%;GH@%NOI1",JS- M5%:^:B3@PCDQZD=!$/L,$^YEJ5M;R"P5K::$PT(BU3*&Y?,P!/W0+*29^7V4@C#@B@B.))0S[RJ\G$^LO3/X1F"C]L;(9K(2 MXM%.OA0S+[""@$*N;01L7FNX!DIM("/CUS:FUR.MX_YX%_VSR]WDLL(*K@7] M3@I=S[R)APHH<4OUO=C[ SF5-UCC+)5B@Z2U-M'LP*7JO(TXPNVA++4T7XGQT]E2 MB_SQS.95H%PP<]8*N^TZN0&-"56GZ PM32D4+04D2@2LH>(90+U_-XG"Y"/2 M^ F)%265\U.IKXTL&]S/MQ+FG83HB(08W0FN:X4^\0**O_U]DTZ?4[3+:1Z] M&O!KR\_1*/B HB *58TEJ%>BCOJ=&KFHHV,[]0^;@'Y->V_AM;97$7+\\NHXY/F FP\"X!\9O Z6YU;9DAXCQ ?%L M&D;#T*2')F]!D6F )9 C:2:'T&@:#D,G/73R/\=NJAOZZA[2,CG0$B;3Z0LM M_E[+8" KUQB5:0$MUUWWZ%?[WGO5M9P_YEWCOL.R(J;F*93&-3A/#%IVS;"; M:-&X!K02VK0S-ZS-_P.D-3#?2R'T;F(!_1\I^PU02P,$% @ ]X,%4Z)' M:/Y/ P L H !D !X;"]W;W)K&ULI9;;;MLX M$(9?A1!ZT0))=):V.+U#_#^8;D:*8'+IYE :#(M[IB[N!8[UL!DR1D1L)DYM_[-:J+U1O"YA(,\>B:: MY(GS9SWX.Y\YG@X(*LB4]D#Q;P\+J"KM",/XK_/I]$MJP^/G%^]_&'9D>:(2 M%KSZ4N:JF#D3A^2PH4VE/O'#7]#QQ-I?QBMI?LFATWH.R1JI>-T98P1UR=I_ M^JW+PY$!^ADW"#J#8&@0G3 (.X/PK2M$G4'TUA7BSL"@NRV[2=R2*CJ?"GX@ M0JO1FWXPV3?6F*^2Z7.R5@+?EFBGYFO%L^=+G>J<9+S&XR>IV<'W2U"TK.0' M#KSI@+"-P3J7<6_ Q!YRE) QK>L_('SE^1QO23OWWT@[TC)R$/!&TE9 M+J>NPMAU!&[6Q7G7QAFA>.D6_>T"^WCY) M);!:_'LFBJB/(C)11">B6'"I= 0"]L :&#MDK8/$.- E=#_WH^NINS_>.%N3 M>*\E2UL2##6K$3=IW&M> <8]8'P6<,6V. .B9-L+I)1 159<$+Q16!OW6/-W M6,'5&'?K-SX.QD\'W+8FLL!MC>^G_H!\1.3%R3AZTJ,G9]'7M )I2/%S]@P* M4S#&F=@,<3C@M#6)%PPX;8T?1-& 1R)+PU1; M1_O9OKVZ-5W%8/[.OUGX(_-+;,?:[NF7^[:7^T@%E@5)*MC@4MY5BALDVOZH M'2B^,PW $U?83IC' EM*$%J [S>!7J!O4N<_ 5!+ P04 " #W@P53 M98T?[$P# #""@ &0 'AL+W=O:9L6B+*$5Z22IN_[Y#2E9EA5&- M;?U@D]2<,S-GQM3,#D)^404A>M&5=SK]!Z?^/[:E.0$JMKL2<W MW--=H^_"F]74V%N#?RDYJ,X: MF4R>A/AB-N_SN1>8@ @C&VT8,/P\DUO"F"&",/YK.+W6I0%VUT?VOVWND,L3 M5N16L$>:ZV+N33R4DRVNF+X7AW](D\_(\&T$4_8;'1K;P$.;2FE1-F"(H*2\ M_L5?&QTZ .!Q Z(&$/4!R2N N '$YWI(&D!RKH=1 ["I^W7N5K@,:[R827% MTE@#FUE8]2T:]*+<],E:2WA* :<7*RPYY3N%]@2ZI\"2H(N,:$R9ND17: U] MF5>,(+%%&U'N*XUM?6$+Y:$;A'F.7*(WR*_/%*(< M/7"JU5LXA/7G0E0*>-3,UY"1BBBU? M_ K?IZHD$FLA$=QGCGYA0G5Z9):-3JY7#*AVG46MUDN^HS704J#9_C_HS__F$1A^)ED4/BE$=,E6@V;=#LKN [ZO>RVZLF1N:W&PX$IZ>E;#;JI^PV^HG"3M!+Q+V.R]EN =W=AI2\!:MN*[O MT/:T';C>V3FC=[X,;VY#QWD& UH]3_V@KZ>[CUCN*%>(D2VX"J['T."RGICJ MC19[.Q(\"0T#AET6,&02:0S@^58(?=P8!^W8NO@.4$L#!!0 ( />#!5-Q M&DZ(@@, $<, 9 >&PO=V]R:W-H965TME(;O@V.;$N)3=566BE*MMV'J@]CN#:CP R=&>SMO^\=P&P,A*3M M-@^!&ZNK5ME>904G4C*N#XY"!D234N MY=%6E02:-:2RL#W'6=@E9=S:K)J]![E9B5H7C,.#)*HN2RK_NH="G->6:UTV M'MDQUV;#WJPJ>H0GT+]6#Q)7=J^2L1*X8H(3"8>U=>?>)DN#;P"_,3BK%_?$ M.-D+\6P6/V=KRS$)00&I-@H4+R?80E$8(4SCST[3ZD,:XLO[B_J/C7?TLJ<* MMJ+XS#*=KZW8(AD<:%WH1W'^"3H_H=%+1:&:_^3<81V+I+72HNS(F$')>'NE M7[HZO""@SC3!ZPC>D!"\0O [@O_>"$%'"-X;(>P(C76[]=X4;D7J34,D9/RI2 79/3B60#SO0E!7J._(#><*^ MS.H"B#B0C!6UAHQP[%[&4U&"_:$0"G%?N51KR?:UIGOD:$$056([H(WT.1=% M!E*A:H-5EPOCY%,N:D5YIE:V1E,F-3OM#-RW!KQ7#/CDH^ Z5R3A&603_-T\ M?S'#M[&8?46]2T7OO5G!7VI^0WSG>^(YGCN1S_;]=&?*SG^+GOSKZ%?%\/OV M\AL]_Q6]_Z-_?K_;*RWQA/EC)L&@3S!H$@Q>27 K^ FD9B8>'K0'D!)3;.)- M]>*LF#G3;U5%4UA;J*5 GL#:D*D>^$8ZNV^DD[0Z8:-C/BVGC>L$\1?@Y(Q* XC=]K\HC>_F#7_"-BC+-679B(U9WKR>%N,HGM^[ [,3H"6?C P M.P;YCN,-S+ZA=&4VZLU&LV8?0#83"T_A+;?1N-&\:&!D.P5:#HSLQB O\@9- MDKRA=.4V[MW&LVX_4RDIU_^LI>-1(L%R,6C$[1CDNGX0#8R_"Y6\A;JRONRM M+V>M?Q*:%E/VEN-HH1&ULM5;+;MLZ$/T50N@B 5J)U,-V"MM 8J>/BP8-:J1=%%W0TM@F0HDJ2<6Y M?U]24B0ED56W1;R0^#HS9V:HXYGNA;Q5.P"-[E.>J9FSTSI_ZWDJWD%*E2MR MR,S.1LB4:C.56T_E$FA2@E+N^1B/O)2RS)E/R[5K.9^*0G.6P;5$JDA3*O^_ M "[V,X#?6*)W,V?BH 0VM.#ZB]A_@#J@R-J+!5?E$^WKL]A!<:&T M2&NP89"RK'K3^SH1'8"QTP_P:X#_%! > 0U(#@6$-: L,Q,%4J9AR75=#Z5 M8H^D/6VLV4&9S!)MPF>9K?M*2[/+#$[/5\5:P<\",HW@SCP5.EF"IHRK4_0& M=78O[2[Z?@7I&N0/LW>S6J*35Z?H%?*0VE$)"K$,W61,J]=FT8RO&.>FMFKJ M:ORL.OX$ MVU\_BTG#8C+(XEOELE.=7++X#VJTF#RK$78/79FSAM79(*N%2%/S7[+2(KYM MI&K@(R"X54G\TE\2E-&M!>D2+N-&!G+:B17ZC M6G\D%\O:VM%Z05K9(L.Z]5X*97(@10R0_%8[%[6U1^(9$/?I_?8ZG4\*E[V9EY[O&IQKZC[8)$%676,UT2(O^ZBU MT*8K*X<[TVF#M ?,_D8(_3"Q#IK>??X+4$L#!!0 ( />#!5.+0G6%)@, M &H2 - >&POEJ:.96DHS(OW6%/G;EWQ$NND'$GFZB3O M9^_/SCKW[ZX.[><.>$?B(&G_!-*+CKU09H=B].EI],?(,>K+?>IFN67:>&*. M@Y,T'9'DB..F:.-AH>2V=@GQ!AN9EBQZH&)$)E3PJ>;@5="2B[4W]\ P4T+I MR-BFL5*Z8*D?/=SU,^BGAJ?D4FD7VT?P?Z?-\@-@,P.!7(A68(]XPWA846.8 MEM=VXA8[XQ,H:L9WZ\HJG&NZ[O;Z9.O@;C;(5.FU 164[M(*:H:?Q M$^#?9?/F#9\MFOYI6EUQU9FTTZK M?<>X6: M_VZ>YTPR3<6N:-O[+SG+SU:<7/XKR>Z_RJ'@H,;F!'WI(ONO063Z&D2^BIX< MO$B1<7,V[AS >\=O:XW@-6=$OL,+E=@&C:9++@R7S6S!\YS))Z>PI3=T:E^D M]_CM^IP5="G,70N.R';\C>5\66;MJAM(1+-J._X*V^NF[3N6C<5ESE8LGS13 M/9^Z860'-FIS@<,A"R, (;%P11@/MX+B_,_[6> [L=CF+9!$!F@ M/@/4QWN%D(G[8''"/IF]PCO-LB1)4RRCDTE0P03+6YK"-\R&:0,/+ Y$^K-< MX]7&.^1X'V U/=8AV$[Q3L1VBN<:D'#>P"/+PM7&XH '5@6L=R!^. [T5-@G M2:"JF#;L"<:1+,,0Z,5PCZ8IDIT4/N'Z8$])DF19& $LK"!), 2>1AS!%( & M#$D2=PX>G$?QYIR*M[\NC7\#4$L#!!0 ( />#!5.7BKL

M-8?20$3;8T.P6BP^0"X99K>]9!:GU0#M;$N6T M05V@2[+-:+$&==?7@I9HFPA%>B25-/WU/4KU1M7V82]7/QBV*)KZ=*+X'2F] M>K#N;F7M'?O2:N/GV3:$W>5DXNNM;(7_U>ZD@3UKZUH18--M)G[GI&C\5LK0 MZDDQG_UJW]:MFZ0;-L@Z*&N@,!9\4O+!_[<_;K)[Y=5*:14>YUG_ M6\N,MW6C5 E$ 6"&1Q1LC/10)9(I#E.2'+!)(CD/PG0NXO0%X@D!>TD+^)^FX#8R ,0 (^1H3.26;7#!IU(B20+Q#( M%]207OD(!7[R4+6OT?/ZKFU% OD2@7Q)#-EY9:3WK+;M2IF#$7R*#>%36K8W M]3\='+0/&X3QHZA58&^-?="RV4B68J*F(58-)!30ZT""\=+> /(N_N$9,S+M MB#GFF9Q8- OH?683#\J$]Y ?'-!A@LF)#?,^;*5C=>=4S9,(3FQ0WJVYRL1 MW0&1@Y;\P<""V2,GUL>-< :R9\_@O@4DX=)\,,>4D1,[X\JVK0JQDN^'DQHF M%T J3?W#[8 I(R=VQK);>>AP\6:5]Q$US:8Q813DPJ@A)X@!8[>0K\28/6.K MQV'C,15&@0FC(!8&FAB,\L "G9P02^-8:L">P(142_\TA<3<41"[ \T1QK'$ M#%(0&P3)$6)(4TQ,*@6Q5([G"4.4F'LXL7M.)Y@]:8J)/ILA=@^* M...8>_C-6U$YBCAYT8>[A9UI<&S!317+,/?QLDY^(F2J28^[AQ.[!,5-% M0)/]2R&-7,-DI?D+FO=07@M=WT*N %_#(RI>Q87E=:?U%92] M-^^L:/;OF.S?CWG]#5!+ P04 " #W@P53?'[I&]0! #&'P &@ 'AL M+U]R96QS+W=O )/[F/!00D5# MB]B %28/D<269Q#)[HE"$8Y%08/F5-;8\O5?6)^L\?PE[=JR[0YYL^WSY+C? M'?*BV932/X20EYNT;_--UZ?#^C;Y7N[3D>UD8?LYH'N<_ M9TY>3WWZR\1NM=HNTU.W_-BG0_EE\2:DTD]=V6*>R:,)Q=SV=P^4@ M-^?)S>3Y;=$,SV_2A-I!"D%:/\@@R.H'.01Y_: (0;%^T R"9O6#;B'HMG[0 M'03=U0^ZAZ#[^D$R11FG!$DCK FT%N1:"+P6!%L(Q!8D6PC,%D1;"-069%L( MW!:$6PCD%J1;".P6Q%L(]%;46PGT5M1;"?36T<BN!WHIZ*X'>BGHK M@=Z*>BN!WHIZ*X'>BGHK@=Z*>BN!WH9Z&X'>AGH;@=Z&>AN!WC;:+"'0VU!O M(]#;4&\CT-M0;R/0VU!O(]#;4&\CT-M0;R/0VU%O)]#;46\GT-M1;R?0VU%O M)]#;1YO=!'H[ZNT$>COJ[01Z.^KM!'H[ZNT$>COJ[01Z1]0[$N@=4>](H'=$ MO2.!WA'UCO^I=RZG7]/U\9?E]\G1JW+!.#!5,J9-*FR@$ )L? 3 6T-O;G1E;G1?5'EP97-=+GAM M;,W9R6[",!0%T%]!V5;$> @=!&S:;EL6_0$W>4!$$ENVH?#W=<(@M:*HB$J] MFT2)[7=?;.EL,GK;6O*]35TU?IPL0K /C/E\0;7VJ;'4Q)&9<;4.\='-F=7Y M4L^)B<%@R'+3!&I"/[0UDLGHB69Z587>\R:^]J5IQHFCRB>]Q]W$-FN<:&NK M,M\3TKBRF^,7I?4W<4+"3B:T(S\'[->]KLFYLJ#>5+OPHNLX MBVTJYL.V(I^>+W&B1S.;E3D5)E_5<4GJK2-=^ 51J*MT5_3F?'*(.TR[*[\Z MORMS+C#.G#IC?3PQ1Y?''8ZD7=VWL1"Y4)[_Q&-B+'WU]U%[V@45O\R.V_MA MW+([#\^ZV_5[_/6,C_4O[$. ]"%!^E @?60@?0Q!^K@%Z>,.I(][D#[X *41 M%%$Y"JD&PO=&AE;64O=&AE;64Q+GAM;%!+ 0(4 Q0 ( /:#!5.G(YWZ<04 ,D6 M 8 " @0T( !X;"]W;W)K&PO=V]R:W-H965T&UL4$L! A0#% @ ]H,%4X*1PZ'* M @ B@< !@ ("!FQ, 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ ]H,%4WMP!J]% @ Q@0 !@ M ("!YB< 'AL+W=O#!5-DDBJ-G < *,? 8 " @6$J !X;"]W;W)K&PO=V]R:W-H965T&UL4$L! A0# M% @ ]X,%4V0_W6AW( SE\ !@ ("!4C< 'AL+W=O M#!5.OH?[,^04 'L. M 9 " @?]7 !X;"]W;W)K&UL M4$L! A0#% @ ]X,%4UT4]>N["@ KAH !D ("!+UX M 'AL+W=O&PO=V]R:W-H965T#!5.1-TWDT@( -,% 9 M " @9UL !X;"]W;W)K&UL4$L! A0#% @ M]X,%4UVO8O7[ @ #0< !D ("!IF\ 'AL+W=O&PO=V]R:W-H965T#!5.#543B@PH +\; 9 " @=UY !X;"]W M;W)K&UL4$L! A0#% @ ]X,%4Z%'[LSJ#P M92T !D ("!EX0 'AL+W=O&PO=V]R:W-H965T#!5,; MM88#H , .,' 9 " @0V; !X;"]W;W)K&UL4$L! A0#% @ ]X,%4^ ZDOW.! 7 H !D M ("!Y)X 'AL+W=O&PO=V]R:W-H M965T#!5.GDA&!B@( ( % 9 M " @=3% !X;"]W;W)K&UL4$L! M A0#% @ ]X,%4U-)U>*1 @ E@4 !D ("!E<@ 'AL M+W=O8# M "I" &0 @(%=RP >&PO=V]R:W-H965T#!5,H%C%5+@, &@& 9 " M@7K/ !X;"]W;W)K&UL4$L! A0#% @ ]X,% M4QGB9BBV @ @@4 !D ("!W]( 'AL+W=O&PO=V]R:W-H965T#!5/BK:]QO 4 *4/ 9 " @6W8 !X;"]W;W)K M&UL4$L! A0#% @ ]X,%4T=BRCJN P J @ M !D ("!8-X 'AL+W=O&PO=V]R:W-H965T#!5,CZ7[M MH 0 -<6 9 " @:KE !X;"]W;W)K&UL4$L! A0#% @ ]X,%4Y+:-5J @ <@8 !D M ("!@>H 'AL+W=O&PO=V]R:W-H965T M#!5/TX/MS^0( $$( 9 M " @9SS !X;"]W;W)K&UL4$L! A0# M% @ ]X,%4X[7&7L' P @0< !D ("!S/8 'AL+W=O M&PO=V]R:W-H965T#!5-J.^V3)0, "4+ 9 " @5W] M !X;"]W;W)K&UL4$L! A0#% @ ]X,%4]^' M7"&PO=V]R:W-H965T#!5-%2[3?'P0 .T3 9 " @?8) 0!X;"]W;W)K&UL4$L! A0#% @ ]X,%4XRQ-2AX @ E@8 !D M ("!3 X! 'AL+W=O&PO M=V]R:W-H965T#!5/-E$9.%PX M %5) 9 " @;45 0!X;"]W;W)K&UL4$L! A0#% @ ]X,%4P>#?:UM"0 '2\ !D ("! M R0! 'AL+W=O&PO=V]R:W-H965T#!5->KT:GVP( #T( 9 M " @8LQ 0!X;"]W;W)K&UL4$L! A0#% M @ ]X,%4P#:"0*] @ &0< !D ("!G30! 'AL+W=O&PO=V]R:W-H965T# M!5-Q&DZ(@@, $<, 9 " @7U% 0!X;"]W;W)K&UL4$L! A0#% @ ]X,%4[FRR!%L P QPL !D M ("!-DD! 'AL+W=O&PO#!5.7BKL

CMM RG."GP@PWO\-TKG4$\>6(' M86#U:!4PDIY(L./"TT0>5YP^5VV!/CT&4%9NDR00 !TG RBBD+LFR)%9 !(@ M=U(YRRIS*^U$G;&R#E=&CBJ3HVJX,:HVL:;4Y8W66&*K_K@V"@859YW6186) MMUMT[8VG*%K5GEC8;RQDLPSD%QGV/('E:\77516O#F!9P+X \D_Y\T%>W=F:%\7Z@6<* =TI3$> ME]R6%O[LM"5)Q."35)-(F9V ]F1OS$^J5+=E%C!26( A6(#TV+2W\/.T3_FH M4Y:!^3$$@F1OSCX(U+RV8&!^QV+R)W(_N1&RU'2G@/M

_R9><*+R!SL_.< ME'@^G\BGI5@F3H-7IK''_3U+)]#(Y34\-0GP9@_(K^ ./AK?+$E!?5*&Y7+- M3[#(L!.R*"MHO56:_\T9*[9B&6*[X V&!'83UK($[X;49YEEEL)7DN0GP?%C MX\8)Z&X#+8,;)T5.%,=.R*]% $,KMUS\_)2-HYTZK9I&YU_CZ,9'GOGF[*_ MFB9^^IH(E5,^,,@[3NW,0> M=,YFKTN""?BIE_%? W_FI]SU:\#20?\/@H5RF58GVZB0<)+0<@2D51$*OX=8 MB-C\!VR]%\T$ST_,,_S4:;_]_1_TP7[[6LBW8&&PD'N)1>T*\])-.5:FCJI\ M^"D>NG@>Q7@L?Q&2CV;OUT*FX3$EHXPY J>+"-[>1!B\QX M;6389PHD (B ]$*DETLX>('9MHDRN@ B7D9PL8A82O&FEA]6PO\OC M0V:PY"P6B_[]'[#]@% B$^<.EU?A X>SW2_\"L#8T*XW<'QI.&RH7+7,KW74 MB\3SLK-ZT[T!RS,VI?1NJ__Z(1="I\JQ^MZ ]>^?,L<:[^8TE409*:O+SF_'^O%1[AKZDT)N"RR4@4^2. M(,FP>$9T KS/<,9HB9!XF@#/Y6%T3H+,#UY!1BE4&V24^2UB!-3&11193D%& MW!OO ?%_7;'C(7!U>$#^26P2%H$KLGA0&M:7P&"T,8 AQB,SABN2<#! %/(5 MD,"@A4V"Z%98%\4RS.(M@65<,T*$/L%J.\?-@..'J;(YM& 1CF(41 LFC$P):A2+ORLV))>/&6J)4R?V0*\D?F2 Z/=!ZDZR.*1G M:\!1, D#DS%(5\[1;1EWM\ \0-[AU.CAFJ% G(C5%;@D8;ZZ3H-OD2,HA=U$ M09:;J6E.&$0$$E=+ZX49^4X#DXUS8I-8*VG>U<&>46QP3"O7!"4Z],,;,$<$ MY<:E6,CEM8Q9X#/TKE(P* $MJ(+6-8^D81_R370"TH"2*6,4,_=RH/A%3(H/ M*PM[2S7L<8:W@2('4_VWZ);C&: F?A1-%:]&9*T\#SY81D@/-3)9"'( M?8GMP:!I0:WX-&/7JA\'GX43%R$ICM,"/,O@"B2^.P9JR<;_A3WBK*0@XRQ- M?(_5\A#B&E$@_,.PB"C%P9P;Q^=A%9%DY8Z+'43H.YBB:C!@9J%S15#1B4A- M, ATX,3A R<&IQXXT=&!$Z=^2M9KI)>Y3%P.,"A+XJGC$0FG;'25<&AC=>Q"QLS&+Q>S<;=!^W3*_"$G"A[;, MEQ?*Q0E>+TR!!G(NK;A.OJ.$A$V A5,076A^RY+$=RSS]^L8;PXM\VL$>H)' M^S3&'_#MSPR5EH W??K]']A'XLYW(_C?*/"B&W@*(?\.,#IS5(QRN P>YF O MJ1FU@%TF7*FK$RQ.DC 4;DO:LZ*S8A(.AA_F[N $%8<,LTC0+5U&'%< A 8% M8H5'=Q,&*U%)^B<(LBSA*".=8I*A*J"HCX6>60E#(<\,=$*%$7FA0ZF*QFSN MP&+Y4.2$17]2R_RXM"5XC>%[?!T@]-%C@@_F.H<*M]2@2E20.WEI_2CWF7!M M\Z^C>"9N<*BC'G<_P7$>D,6DRM[Z"2,J653H#,CZX$R1"30%6B&8T$T% M\(2Y.F)5"W[:?EC-V FOD[6TFI.A)%J*JR :K5@4U\!C/[E.+*G:XARXN(2A M-4%1G2Q.81:#M+;R;I)NF0_'E3]0 A:M>6"-USB0"T$G6@ MN+HORX9/^6 +\\A98T8!.M'#$(GKXM5\P)<70R5#3C7<@.0G*5F@Y+4'J@*V M <(!&?#VA.( OW[_'3Z@]P(.:C:/0H.[VM%?X+A2T7#4,<2EG/1XY+8^OS0L M>1&Y:S-E3'I[QA&()/S#\V/&G7$H//V)C]H)25W.@;?=$5\"IMI6=.ADZJ"3A@8!-I:) M[9!@&NKD."6\VZ]\&1DHZ3"H5Y,OY 98Z$M;G2Q70J6B1[=BBN*CN(I)_5G- M4L>GEEUP2\ -E]='W#M8X*O?$ Y:(O!@Q QWO\;H*\3?.46TS-^5/9 (P',W*]WK-31FFG_L,X'_(8NHPHNI&(BB*7(Q"+BUPO M)U68G& @ TE5S9R M%\YNK(05$,M,XF6MKC?>27VQ! G2 4J!RB2\>-I&G#G M%/KX+.[L)R!SN\'D<1<H!1Y/B4E:%6RX5#]/*9L M>?11_(KW&AC%PN\23PO.T\0>L .#VP+K1?.+'Y,6-?_D.>INYQ;]/ M7#9_0-F\Q'C-!H*'VL-6\(&FL2Q/]DYX&U<]7:UY2A.7^UYSYH(__V2B5H97 M1$_8]_HL"YW,0^^<18LCA2S*$O2YOZXYRQ6K?N[MPU';W:X&[\J:GZH(H,96 M%;8VK51X0@W>+P:[;6[[F,0O$(->:MC$T?2H*B. MGG9*1-V.U:^MM/QDQ*-QH.+ MNS:"O<-.+\/41/VIAHH0:WZO&]":T-KM']B MTSA0.UITK%%G#YVX'V4;W'^D=V_Z?:!T0[RY8GOBHLXNUOK-7O2;MC4<#;1^L[)@C%VP5@XSK>,L+[ @RKO[ MD5=W9:)%VC[T&;MC7?0V;4&EE9K3HX!>Q[*'HR81P'YUFOWR/TJ'UYRO 70_ MN+!&%]J:>[X$8'>Z5GO8*-%7W87OI /]GK 08GZ1?IE[S*G:*5_1BK_=P$C\ MBLOW30.WRX5,+Y2"X91,K*0?\(JD9^W6Z'6YT")Z^RO*+8FZRS!1T2)$=$$B M"(I5B\XI9SR3G?ICT!,>F\?,Q4Q545NF5/R3RE'5U'LSW"FV)TE>\U#W:[;( M"SW)?5&+FE:O9UW]+W4#*_IS5+:@*=J.\'!YL1E%;9!8:3(FVZ'DC4+4LNI% MH5.870S#%RW20T^W@I7_R\?\#OE2N5/*V["5[IR-FCOG>VO?*YD-6';NK-MI M]$41?%$ -%EN=FC(RK?E=)!DE#@+EB^0F8I-A**I\4A(3 MSWXR'.KRU#(_"U K;I37 #?LK"89W=/TJ1(TRF#,:T_E=97^*FMLO2M:6^F, MXR>$:JL*01>G7B&HJRL$Z5/RQ'E[[Z*\V*3QI>#E.GOO6*"J+.VGUE(H+!N> M3%M2^\R$Q3=80],!DT-4P5,D.F5&8ZD&6742LWMC7@P&1".\MU*)P>#%P.OK M[YCS+(;A<"7Y*@)8@FC8P=."8U@ZIN&[V$Z<- E9[U(7>3@*J#Z#&0^$-V?$ M67+\(K+3Q1P=XV0SA>P6:]&$889?+-<@7:T4(NFO1*54HZ!4-I<:#US)$KU4 MY BK%1E8 M1/1 4NB1+).1S\FJ#[<8,R,^'U3*Y]:L1.Q4!$7P&%LW"&]/W#.S/.9".S M#68R(\[%0%93G>6"@BV#T:Z4:QA3N7IN38NZ^51_;DG>:\9V%%!=)H9:Y]H) MG6"1^++FNE=7OQC+,KJBZ+*LBXQ^EVQHFV!> M L?@%.V8-PY(6W1 RU9&)I:23!=Y5Y1_?_R0MT6AUFCD (VY+[]42!O$;34 M%06VR7%O\'*<-&S@<]\V>GYDH6N8FF;PDU1Q4LF:DK*D9,X3J#([G.2$UZ@" M5(#*@8]S3RX=RS%CH"GJ3U[ZWO8.I<7G[%AD?X MF".KYO&V:*OC2UUCJ1P/\NF9<\U@[[TKL1!91)-S/."AV6S.X>.='( MNJGH M?H,J%?-$H>?E2\B\VYY9PXA%KPM#*#Y4IGBB:C#5[RU;><3#/48M0&0[1CRN M$J8")*K0GP,DU"Y7GO3;*6S[F8URJ.X-GS>_"]@=H@5X/*TY+G;7X5VL/8;N M$(2F6 1"<=9Y33N7<9^$[':6*OMOU.\_0!9X0O\K+%F!D*A&/&[1EJ*Z_8DA M-TC=V[E@A620KW;%Z- ]3IIL-?NI,9_39*D@&S_,&$Y[9?P61[? CF3S-T54 M?@CX79T6E<<"E6BA:-CMSMGX-;)!(4[^#OP'3BG8SEC8-;_2_(Y?9?.$>A92 M:S2[DVOU?__RU^_X0Z[:LSL&7"PQF2 =ZIZ$?:?ROH5T:#4M?Q;AS>W%OL-:"8WSF3H<'U#1'$(>I= MPU*-?*FE3F)\ROF<=];",*CZS>:ZSH(W%&#BK/+7MEN=(4-,0/N)88S,PWIHYK+B I@# MFYJ@KP$[;W+F@U*5;+IX9JQ9^ZGQK=/DQB!EO\DFL9=>-"4?F;]Y@7F%84[1)ZUZG;C];^3VV'[Z$;^H]C^MY? M7CC_?[L]PO AYY?C!AG8QD= I[A,;QG_RK#W"O:\ON$V.7P1R+_?YV8WB,IQ ME*7F)R>^9JGYS4^N-2,Y%JC*/B[>.)P75':2-&_F4^JFA&X/=C>/1)\HT4L( M%X_H)YV#WWE1%Z(-@BJ4'J$ SQ.OSRYF$29'BQ+MQD8=YXB3>[=!=4#"3A M/A)T9+FND_ODX'6'.@>QF.MD& DM2H90@+:X6(ASGPFP.N2M<:Z0*=!LT-F) M#\E5-HP44)IYQ:662'QW%#"Y/X?:SL :(AA3:4MI&2WD9 M8V23-,8MB_-=X5VAV%46R,5P/V0:^ZYH1?"=,5'U7^CS?AK PH1F_;/_"QYL MXU?>D99GA7"MFMJ$%LTW_9!:8>@+BT:%JPY//5RUI\-5]2EY^MB?7[GL,=Y) MV?-!5J3ZAHXBKOSH@)_=I;:4G1[D64*'4^K]8_2E7)A$P''=F0G2GQPLW##@MQ38]X M-8Q"#NK,T6N:9X,H@PAU"6;Z\/NW+Y;Y5_1845?TC)J84G-(!R%((E <1 /) M$-2@;!,%9N.=6FJ.7K%#Y8UI&?_!2S+$R"U&:6 ;]\0?!VS9M87]O,E?!6H$ MNAAE%[[5_>3JC>P6;TED\7@3'_? 6<3PI&Q0Q*ZNN&=X91SA'$#'Y!XZ=*/HD^GS(.EM S AU"K!<$M;P;J MWTZ0X&VC&\V8&@2M:N'%YN/DO"M3[M3$QJ&A20KX$GGP;J*"0@R@$-.Y0K=B MNKI#8F^YZ]BE&]8BT3!1G8W8GQ/6ALY#OGV%%JPS_0Z4Z?>1-\I+IWBUO)*A MMMP#NMQ.J]-O=5]9IFVW1J\(SQ>MWJO:/L8O>P.E/2?OYCDFI[L;):FQ=,_/ M6X$588/Y8:<\98^A(23#H:K/E25ZYX9FG!$SH09>H(T"2_PSB+!AK0A0!)Z, M8=YTXQ@[_$_+R!->EPXX775P7QHZO=#**>W*"'8#-J73&O!-L=OXJ7978!,' MC]\5L0F;H+&B(^7S.'&T#!]=EP!HVIU5WNEK3Z>I![:PV MM5/KZRW!BUMUSUJMT2_IMF*OMQFYI@/ KD;?(:AT8#&B^;+?ZYNRE'4(:X6X=MR'>6]X&#G895\:RJ S0$8E &0>[OM9E3#51*; M>96A>TH,;<0W-^<_FL-J#JLY[.;_[N6PJCWPY/RUVS#^2E!OP5Y[U>P5$U*V M7(9FK]I0R>U1;:AH,:K%Z%&+T3T;*EUSES(T'V3;M3S(1NF9%?)37>96J]#R M4_-5S5=/EJ_NU3SI-(>K;FN9=#53?5[WE97U-#>]K>S)V\IU]W+#"^5 +-_+ MP1?&:=Q6VNW6!>Y*'S;#DO>5[37[,NBWVCN[K[P?C?JV\NB= !NP M'UI_U?KK;O77AJBI>S;_1PWSHV_I [!;]G[N*9^COJJ9J&:BV@GP<-ZZ%$+Q M>.ZZ]5X\]I;R0@>![,5 V0M46R6SC4X]F:U_RLEL#3XEVFK7%_=:M]2ZY>GI MEB6G\],;[LVY88JW--D[^H9)'J6YMJFNFVK1K^R:5G>*% MTQDF_E.]R1NL+B!3S<550^B)8Y;PDN5XISUFKI,E#.M'595GQTOHV$?+V5JI M(94?95%R$RA2O4BO.POQ%CJ! O28^TRJHV?&"%S69)@^30L>Y)A#[ULG/B>CU]5 MA%U0_(>93+%I$:\K82F=SZ(0V#6LI*8:27&4J/@$PW,"!PX6<4L0\QK&> :O M?%'OHU3!XKE1=[D6I-T^N5J0O99!G3JC@)?Y^(J]BCTL+Z?K'!T+5%AYGQ]D M4=:P*.!I:N0>.51?LM@HN+95E*/'&E*^Z\\=6<@(^]*\F_IL8GZX8VY&I5R_ M3":^RV+>N)!^^S6O\"M^LW@9="$)/%[0?3+A48I4J9R/K79C<56JFN=499[! M2%0Z'OM]85$DI2;[-^Q8QW%D=YUSNW_&7O,_81#Q?=]3O^?=[F ]_,^B@+N1 M5V83/0;L4;=G4=&J&7=TGR$4HKZE^K#L._ :'Y;5Z[&*)O\HBM:[T0V+>8MX MJOC^1P9[S6)J+$HM/=X#3@#B/8C+T(<2-%N?@%FI=#(-WEJM8P_%JB697S!()!#O?OPA3.#7[]8 M*"$F?CSCI2<6Y)WX MUJT?!,:0]ECV&U6NK7O/S"+,.>!FP2,-%M<^+( M?2618'#.F\!.NKP%58IY:MC!4_35+'6%RC>?QAVSO&LF\_)JQ\)A[\>4(): M^<.]\Q(D7QQT[N[D!QU5%2<(EE:?T-87]E)I!>I.RTTUE_94'9(:Y'!DHTM? M=&B?<*P#36*SZX5E%"(2^U"C@*+F;$GUNF4%9F$<.*(E*4V>-^-$"2MU[/.9 M<\T]O"%NW\3) LSTXWL-+U' GA?=PI;@(Q$8"[&\WN (3GSL',II%\_ S$^P MFQ?0;=YZ(5A8Y7U"1/DQV!U(^M)418B J_A>1KWO.((3O(@#:D[HFG"\ #LQ M"#)9OC>]C6C*B'R\T9P;/S":XBG&XQ<3^9

D'+R#[X=@!=+=-* MN)"K0T:!QK/+9.-85,1Y#AB[J)GQUO. MD]#<4A"#+G51RAF8E0<&%QIG"JX5!4WI_P$[;O!#+YO#4C\_O^CKFW=5!=PH MECW.1[W5_0B9U4;GDE_43TXY8CJ@YR2S4)XMKLZL_=^=<8I;\*U"F>?,5>(EL&U+CQJ@PW43!#5<1 M4?&_XD8*.?4#QY]ARQ0_X69N*N_U_67FOR>_+8+N&M-O#F"L3+?@%[--3(KB7<0$>>I\G6T8PL.TS;$'T1 MD2I[P]$$B>.[\%"6'.@6S!*+TPT;W"MG(3RW=DV9C3[67]&[)G^98O:E^K) MT&CFLU_1W.8+AZ+.RM'Q#VT:@1*#4,MX1G' MY) )Q&4TK(NB-TL%]$$N,/N58M4FA]0G#^B0RIX\NV")LH67<9S/IO-XJA\W M50]!7H482/T.9N ;.D;H.X_^EPTS*\*3(21+7SZJV_:-8/5\E"XICV-"I-CW M4(H6.^6S62M&=;-UR0H@:&MO_KQD:5RM4;VRMH<);']*,FFG;J3)-#I;01L%EN!"X)@ 3N MGN3;3MX1OZ8#H)>#^TW37C>8+3G0#$,03G:5+^,;5UM_,'OA+ZF 93#XYB/< M0J[UUG27::YP MXVZU /\%+>EUY;.2NCX\0GKQ4DY7@V=G,HUTQ[&1_Y39YS_$DR^KM-:\D[P> M.46#SV.GJ22W\%!C+Q7&H$D<2@D^"Y>I:JZ=_I%3)_MDB??15>W8 QQJ/M7Q04HC.N&2E\@"SAC8?=OAV!F><3 M3PM<"TGY(>AS/9<3J\3U9I35>JP93Z7G3!8=2A1 -,!?^M:/4_?>%F].WX6' MO0\'910X]7-S_MQ&.K>1_F>&^?H.W9+J MNF)7E=!W1:))K$%)C]WM\]O?_GI3K39L57JT&<%3KU90ZAU\:=VQB;'>G:YE MUEDQ4/ ]?9>IN=]LJ.XP B<554YCM2P,ZS1AQ$76OB>[Z>^F+AD]M:4X1FRO M=O4&-G3E9K:[V>C-1N]#-WJ:XQT9^<2FQN #M:%%>&-?=NTU1>^('QED@7RE M-JH 8\&?YFK#.+2Z_1!V-87IB8ZW8)LL9QIE/07PTK@Z-^21MC1H,G2V.;/- MF6W.?0P3H=RM=[P2T??BN'%=B>?UD\3B\TU5H)NQX"NSV(_"YLL7) M7-EL56>K.EO5^QCFCYL[N'(6ADE*__D/_WSY]:,G7RYH+&2MJA4W!%OP%H=W MD24!H( 1]G>W(V0MN$F3R5M\4B_F,N("]QP?SE9EMBKGZ*O!3SKFF)D31IL: M?>;H"FQ7B:(2^)B>D0/E69;0-S&,W1W$B>-+M1TGVQF$!'B0A^1HR>[HT;Q#][=WWRG;7)V-^Z_2!FQVPVH;,) MO?=AWB7%!A0*=S\"Y8?ZH!O8 ,R[=]Z]\^Z]CV%^76R+RSOL8&5[Z=QNE'Z[ MTP4PA3/C)Y>ND1*A'/3<$NGA8//>G_?^O/<_].!G750U:NVTFT,%',G78>@* M<)QL*A"&EA0CU>TN7VS;H;J:;'F-F?HW50V\IR]AW25%ZXF:BZ1.]C.BCGP. M.V;C-1NO7X/Q.I*$M7)_[T"%6.\M+8)DS1KX'U#I*4I=2EG6#M>[IFJ[A3-" MNSO8#AB<-VZ_0 ]:NW>_]BK]ARO3]NF3ATXJ\,5#)A6XEUWR7D@%YB-U/E+O M:YC?B(M_IV1 418[QN4R\P_W-;O5IFGK%OSZ.9B_-FWI_XD#\ 9C!ZKIBRZ MD@_E.Z.4_YW*0SY#/68[--NA#\L.*0_Z'2P!G)'5!M=4>C;-5G"+I5 FYH$= M(*F :D*S<<-UV[W1!(,8A#O59".Z1^&&6U>EDJO%3.)L "&OXM!22S>O*T_[ M()#AZZAK^=8#B V=49M;@I8S-NAUGBW:;-%FBW8?P_Q'8[R!M]_2?;L>F/1& M&1Y!CK("#XI2P(*GT*RY6,#SY MU"*9DW4'LS9[8[/MFFW7O0[SV>I?8]4KD^L=S)>*K*VT,7PKK+9 J35D-C;5 MCNU240L-;,1"D;1[BA.UWFMC UT1E[W#.)@U2@A1P(?=# <$4KGY@Y-PL:R8 MGYEQNINV1D.]J(724.Z0\CW6IO .#%P:B#(/&BP\\Z!)R]E=#+B+;B? 8WLS MP@>LI"[*4^[IT93?>Z#5(2S.+.Y7,&/+'>9?1&TLVRZN+W.O"=]<'A]+_&5Z M&72"X!\]MR#SJ::PQF@(=SS"3J(4POL.SU8"821 M(+LM(\'[)QJH_C0OV'-Y*EJJ?.ZNVY%UB&@%/GW\^/.8]NL6:U@Q_#[OO@\5 MZ^GBK?J NKT21T87G=!^V:K/$XX]W1(^PR\=G[U*P;$PQ1"E_:$5K3 @=OHN M%L_"29[;LA81O] IE6W=T+&@=C=Q 96.5#8!;2'HNBU>5:A6^@=EL82H\"#J M3-.]S,FW@MORA9H(_*8R?9DO1H"Y] JTJ9>T7T%QAR^X;NM[*\+L#J;F0>\8 M,@L^WMVVI9-=BS^?\.KHYZKLX!\WBQX7NBT8HX[5*X/;[2>:-' 384B6X'A5 MG1==&=*M,9.YG<53O=Y4M8/TT!YDA6L[RB.M-"P% M+L:!D?@*+(HQ6"XPYB+":E9MMV-]C07%0WC@RRS=2XTJY;A2UY(VA",@,^&< M=.WW3'RY]V%+?+3UZ)@2+95H3*QXY&D8*["AE9?H,8(&J>TX"*8$AD[LO(G8 MI1R_%S3?%6?Z,3V[HA\B-SZR.>"Q5JG94U_)E"A9"@=F-VYA M!3V)1JFO3H_!WJE M?*&"/K1B0VR.$2C'G+A%\%]&.7PNLI>>8<"$UI.V_RX\?^GHB\UA^.8[WF)= M&%U-1B\'5=)-M1[ZPPG.PE%VIW:R"=7EM249IF'Y3'9Y)D_UK,\*/N&8?A;; M%$CB<5GSTE)>P\@MCG8[[,NDD&S;6<'\Q$K6^,G==M@\+%NG:L!G?MK/,3EKL;JX%C3%XT M08M]T'\!K Q.#;POE>$?!?'1-UDBC+)AQSC0MN"F%8O%.3?6E:.@,P'N0/^ MVY)N=C4J!'N%W/:^A24UI^D=O10]M/%8:5Y"\GB+%:L.==A+UUY2(+HQ;\S[ MR6-3F7%FOO7NROOSY+@ 1Z(R(*.#)$EHOY%AV!N(;WG;.BU<*^8P-WD19VAV M<< Q"'IS^K!]/CTBM>FY>:] M$$Q>'*('VN[()(X-3W55=**N<+%X'8I\S-'1[? M'%@=_%O)#WQ8TGS(_7,+&QNG_B>]_D'M,_OU/KR]*&WOOSA(;>^ MW,LN>2^M+V>ZT27@0COB+\OE>3N*SNSN%)WOF7DSNZO=GP/ \WFJ7V"9L^8C M)WLW$ ??TBTW_<)Q0?2O*']\\CA?/'W\] DO(OJ/QRPR:90BY80((*HC) N7 M\^3X"_L\_1!N_PVGTPKX/^P>1E?>D3OSMH+W0P_T^=.+3W['-=,_?'KQV>\F M=P@W>/)X>H]%.78F^7C[I\2&V5ELI]R[\8"RSS_5 2UH0(]_SH#ZZNW=AR+5 M"5J&V7#=JDP]GLFNS1768D6>8S-(BE)*J2R42>OPR9&A:AWFQ.3(7CJR#M)A M_9@.QPMOH@QS596BK/7N@7&\4M2N]\,Z.DU^4-F-%$@CY)P+^*FU.B$S M!M);WKNB\Q&'5M/TV>F>-9(@&P% KX\."2W?T.)+YSG"AB7#K[;8DHQ$: M^'N=D22VLK(66%F^DF9(X_Z_XHJ;3S[4%]D/(8_)*]V;G_Y(@K\4'=$U2[?% M9Q[=7UMPI,COKC+9B(O&'/NAWKMJZ9SM'463S45!6-%Q0B9,W'^9#5%R+#$:Y/J MK^V#I1NN<5C_:V211*0]87D:532$X0$.@,O6%*P5^\ 5"O-YL%\,1"?V5^E) M97LN5OL5'ZW\7;Y-S]]9.O(@0*7!BY3YEH.-P"\S?T:_>&O9%-ZSGMY9-[U: MCF7;ODG4J#&R0R^EJC55WI)XWKVCCM MV)9R];$39*F@KKM>4$MK&AR-\NC/1&KM^::C$6YID^MTZ[O%$/X.@2X0G\M-"3Z-S8BB([IR^V1KU3_!Z@51;_TUXY]C8_4B6\ M'^F8?]-?5DBU?^P/6?[NUVZEWRW6F#G_1CZ^R%Z-=)OI9F/N<%:NYAGT?+I< MO$WV6MA]:D2\_T636+5 TLT8A'-ZJF>9?^4'X767@A+[MAY5915KY;BLAI% M>^]*]X]X!"[. K!O11L'/P$. +:KZ\5P2H>$[J[@"[S\,0GU8V':V!517]Z244#<*XWSA8P'@)J,0L"^I9L@(Q4P1QIWR.VQRM/NQ"))3>"6-\W? MC26M[&=R3,^IYS-\*LFS00;BEU!WN(MH0S9C[<_OJ5XVF3_BGSY^\B4,:=,B MR"5GD*SQ5=51=.L7TW4!W#8B5PE,GV]HI>2:DEU\7W3D$4BXCS7X&G3[B[^X MHB8W[X?ND@SA__&R83@D.X7D3A9^B<+ID^AW*"XAN0U+RB8Q6<0A^F38+!G- MTF %N.MEW2[%:P76E#<%S"US_U\CFO>82_/MLK2CS1=%HVB]]A .!C38%:Y: M' +>G0DBP'OV_Y#S !9.?%\:#L:&7:6/D[,20IUG##63>5R[DEW^2VS&1B36 M X*9'*;M3ONTN" \-CO _I!11/)Z<#L+>$Q9>#E*?AP)#4LW#BWC3/">[>"2 M1M:(K,-V._.'M#PS]#H&3!)@*A@K_ⅅQHW'Q?G\53?("\3]BGY" !*2DA( M[Y;W]74UX+VG865_^F#QY-<25N<^V<18YY6!05=.+^']D[6BS/4Z"L'QITR M1*/KMF^EXU:@0)K$--AUY+9PX&AC#AMGVXHB;M-BDY99,:17BGMPN1=-@C1+ M5%%0A98DA,M(Z?(FL186,862&UTZ3B ;>Z9!6R\6S\@&>8!J%)@NQ MMT+,SI;"WSB-MC=%O<8L6$XU3N,CVSF),T+\U6&A; #SSX/CHMO0A>_DVHD?(!L.X9N6^H<6\ MTANWS66+*3Q<9O!;F"%(T!Y)0M#68*#6Z(\O&+:$ ?R)G <]BC88R50L_%0D M#C&R+9Q9.+T3?#.2SMYT4/P.U"ZC0(.N\K:CV#[KD8JPMR*QLH?CM4T$/TD? M!I!3#I@-,"3.&)TE]Z<$WC8&R2DNET9DU>82>'^O!XXJ 9[FZCC&\ MLJ[;079?MF8R&!T-_109$P85"FY2>@]=O<,^Y/.1@>/KKJ##DZ)"PR66Q5#, M)^$'@]GYY*%C=KZ<,3LS9N?])?#41\FDD6AQ5:SH>'%27[^R:EW7UG5+,06? M9EU1P6!NZ)CLE0]E[)JB0^NV'=&'1WFMU67RB5?#7C0CP+VE-VE^ X? MA MR9)I++7@DW;U!LE+^2'.T@QA&1V_.'=1AH_PJQ>+5W5[318)'SR*@:WT%)<= M9VC(XT7#-#N0 ZJVC>9;.7-8DB<#3$IX;5%'_;_&:O4F QK9VBB/O4,Y42D$ M;3RMXPH=Z.K6B7-@*\C6C-Q=>!>!6D8!C9Z>&W+@R^8\9Q+39QO75YBB@."G M07?^F@A_'XV[/,RY/IN H:7J3Y-42]/W=HO6@OW!9!IV2^B6) ;!2Z5UZ+F7 M-&Q&3 ^1+MIV[.7+BQP;A- QM+F4Q)K6T6AHUE4@.0+^)Q 7>%'TO;!FI$HH M=\_U]FL4R;1[M4;?K')EB.>ZOUA\3XL%_YECQ>_H/%H!A[!#D@89$"#&RZZX M;FR) NL<,AAV'7+DBN8-^)Y6G/9>9U<5>\E('Z!MFE9%&:6S%0&-/4 !'[TN M[:NVX0J7/[N-DAWBN ,-EQ _4?#^;!7B)GHVY=<[&>I4&^' MWB6;G"<@II"VHW]$VY >H*XYN*HZ,3J9;F/IZ-H52 @LGE%=Q-1_73)+MRZ$?XRY'M66V"XG\T)3Q^8#ABSE M*$HJ^V*6L[JEL[-66,-5U7.9WFQ1K:7V0,'.K;_Z5XH D5W!N.E(6-\N2\;G MNF\8 7\!1]>E,)Y$_,I2#5P5_:HHA6/.3]TB<%*L*S!9B F,+7<>+'#7EE)G M9#:!<$CSXHNRVVH46N%G-&D79W@,Z+\F9D<8U;T#2I+25E12W!>NQ98MW]"S(0@4K MY3Y@[$$[<%'IDI;M*#OZ1'Z0@XM15F#TM:H/VT^Y(",>J$Y@$TNR*61N991, M4DD_ TYV7LEG\52O7187Y;FVA\I>,1K^2TF^>E$*+J54@9;++;I(/7^>+DT) M?76%>6&M20(Y]PLH:(A/I!4%E'S M\,C%=;$R-E/+"C# 65K(7Q0]G1R-RK%GEJY^_N*%SU9W[A+W"P4=^F*C<'7_ M>'A>3GBO$2=P2KPRWOJ.N7@0AJ"P5%1E?GP[1W*I$Z*9]@"1<<\ MN3:'#"?7%MYDUA.X!8_/4N%3OTB!F1D_8<1TB#D#R2M_U5RRZ?UP99J.U>%M M#*0IU9FX:L7K1[(1JOU ?\VFT'"+J V"I,O*KZ/9QIS%4SWK@5P^T3KB82"? M/,FU-CPR$75[S2E7:1G0,AO'U\\I854UX8GHS]\:G](&S\R MK<-,.#V%5:&4[O8B6(U0Z:+M7W2&=*Z2U4GC62.VD@^L5M4N:W2(2TGX=;AC MQD?F5463QL]G#R+L@.P\<&.6 /S@6_=5'Z@G=R/[Y\+U8M_1ZRF@=>4L+D&& M U5G&9(V1ZD@S*WS.8RU]5H'<=617NPKPZW9E?3R^!>!9LP\QN^%< MDV^(.(44V\$.SRDY3DP QQ1G&^70S!=MJN!C?0G@S1P,T\1.\,\6",OFSM4/ MXZF0/DWQRX%=$8L%P4'1H?/-L<]PY7R4HXLNG,.^J.I."4M!=,UKCFX#A*8T^R^1F;8G'#IEA\)+ =ZW>Y+!B& M$O= ,B#I?SC741<,.__6==RMX7MV)-WPWW39DJLATAXAIX<7@OJ5) M61I).KS=/U_\\^*CW^"3WWR,VT5HRZ>//T8C6V:-;#=<^4=RGP>!6.[ER&8' M\VW5#\84910C>!TVV7&[>HN+A;*/CX)R2O?D U@ M/RW4LCT $;5+CLSU :0, D+"X(MT@:$G\DN$XH87-4LK'[UJX^!/(/[SU[_( M?CP)\-X4Y62FN:85:AU'H:Z*2PVO7'R=V))XDD;>&SW%#'6>H<0X;N-F3"ZR ML-TL(P!I!'_S>SD*R7P/J-\#J!7Z?2VCH6GB_QVXY*A U]8R.MF6%O90*'?] MN@*@BL;32Y'5":.O]3NGE&.N3Z@C8KP;+Q))O]3H92-KPK9'6B;L@=R.S18\;P8OEZ MQ2E]O_(#7MK*JD9<=6@W%)1U:15DF<]L8B):5'V1M+X3B]+BO; HS4[(/4.Q M/GW@4*Q/'\]0K!F*]?[Y:A4G"]B)"RH5K+8TQUGG\U1HT#-:]S;QO7%J);&< MI^.>:)(0?O0&TE%T$X=VO/+B;TL'ZWH- M8%4:?ZH3)@%5JQ(#H=.U1&&J*H"8O;Q+Y1/+AUU6T-LO"(83QXM-+! M^_4H>L$.Q:B?"Z^$==#!+]G,Q18WW-7)3&7Q3)$/2]XZ77WL57? @<^AQ_L^ M-KNIVW2,ALR"_+>#P@:'!!4O(466D+38S#&H2<%=1YY-BJ<.L+WC+YYOQ@XZ M-P)PTHN#' 9K*D7;DK'^51.]5O\9_PS+X5&T[G,L8P1$]'Y^#[I.0=\SAL_Z M._B)5:'#!S1':EASKO4LG@I95DF>!@O8\GZ1XF-8?M'J,P/R#$2Y/44XWQ5+ M,B#5FWK*5](_DM+97%_GB6Q@&VB2O+IY=2 V2K.55L=C5JZ^R M ZLAR:"N\$"<>!/X?9.'<:S@<'+ROZ8H\GFQNW0HM2U>O:!_M9=HA*6;_QB. M@5>>$>%YL#)Y]JI=#Z^$= GCYG'\6 P%XPQH; R/?64C^4YPJE^EYBQ2G9K: MM<@Z7"R^CS@6F'N[$2YKWR63O _>ZZGHBM&&^>#,I$S\#.)Y&93LJ>ZE?-J M7 MX-( D^&3"#J=#JVP9+-JQ6QRIYT1.?)0SESJG*(-:J^&.# M3-1^)*$5IDD3:MN6TU P,JTBZINNY@<-R7Q8=UBY:2_ M!CZG9MKUX(!ZV&JTTE!6CRD6,M&[0I*U$6=8JQMM=Z2X@9^KO"BS.UAFUKO? M:5$"G"51?W?<,AJ9W2RI*AQ[DF7GCRM9_/YQ&(*ZJ[%]&NR;MF,!R*ZM#Q0^ M-E5WJ.\A05_FE3T\D=A#6W(/W;Q*4* U=PKUV;%?N=U0JMZTWY9NWS:EX9HAKA)7.;7LP$(&ONL[VP(WSJWV7:?E)Q8$2]NC(TQ@ MM 5RJW'E>@H4QFE8NTLPEP#?XDK)XD<%$.7#HA]F'@Y'7RO4>Y/-'O1]K5: M#@+0"\D.6J+L,]*%$<^B*(8@<62^442\-U8'I%Y2GCK6?"N7"41HG8Z^4E1= M[DL1;Z*F<-;+,"-D4]>Y>ER)M"N8)FN,8Q08/AH*8WV8[(9AJSGPSB;9 >G0 M@UM&ID/]8KT"3(O&^]:=$3?=/;2]]# M1 1K8-J45H:% $A/B"<5URB((K" MD*N)OZ4YPH/C(NW(B/F&?P8[7'YC36WV\\[GJ;#L F]6)%,6ZTY'ZCXP0US M7NV%@/NT,N0=5FUV:M7&AQK%UL:H&M-#A]Q!\BNA_#(U,2$\%2KK. EIZ< L M2@-%'J]OK1\.UXYZO7"G?P\BUG!$5^8],8"(J%_D92I63*06;:6N@ M>J%);>Z97E>);:/YJ%UQ9=SO=%@#WM,FTNA*R"[D/CACY5SV6'RN/_1CQ7GE M[$W37M-842H(+\A3T]J[M\&L+/?_%WK2@S=&]C%YY.NT=YDA$%ZFG@L?>1:6 M?104> 5 ^=(!XV=S(H@LL!X)8VL6BXS M,1\U.XH0,BPGSE8DO'>74RN:''H-C/[CU=)'."?VJSI5[3*W:X)!F3PMCUZH M&?CFGD6*5Z8P1"5=5GRY[/;(DYDY]>$=B<$?.\)KZLE$C,E-T87"*W+-3 :J M"^'5]=::O(H<2G## M;9WORN9ZE1CJ[XNWH(L=]DU[Y>]A=8WGF\JMX^+8#SCPUCW&AK1LV;>G_^2ZPW<^HN!^3AIPS;P_E MJ5Z[S$@4F+XC+!I:<,S$U$FWS-YS"=YF);YK(8HE;;YS;T8A6SK(S M\$88W-K'87WH5K&8W\^4IBX:Y^C1'^9">IA/]75XM^$K>W__>;Q;_C?](.5_5L'7DO=L&' M7/H:?C]T^'_8=:?LRZVLQNUWWVQ?9OLRVY>?85^VQ1LACR;_8NU8BYH#/&], MF+E+0D7MIH:IX<879"JOG%NSVEK.Y'HLIIDB; Y34\H@\@M#"(G M"7=I3*"55[9TS.8)0B//X@7(0(TD97_M D"MBY;NR7$+K1Y@E@Q9F @UA 1% MLNX/;NM;[/7F*L08]?(*3QQZI].V*= ZQRP4('):]BV A5I?B&" 7$>#M,!= M"@.+FPL#(G?+^+R2=8TP(YS_F"K^6=TM^_2#105^-Q)*M&X?[AJ*FIDQ+#P!S M"2K9GV!&YR$P81'1/) #B%J8& P."K6Y 'Q63X4"\'IPRETOLE_,U@N3;() MN8"V:_23Y<8BG0OI^[82F)>(#P=*UZ@)3-@9I ;*12A#XT&0-$:9(VO$-QFE MF8_,&U8B_HL",6X;B!J!0V\>+?%ONZI)S=<2Y^'J#2:B[3+MH=E472F\GF(!^<_75>^O MK?:R]!IVXQ:MV#"4M$HV5;]A'UWNZ77AK5^'NYNW1;VF!Q070&^112.C21%J MX1-J6N]%4%@+LHJ1S4Y-TOL6&I8N5,8OR$RFK-S:$0J7BAR;ZLBBS8^MS; 8 MK;1/\\DVO8G3(RF1Z:C%"MH9"%_T'#805/LD"%(R=K5E( M'$$\N7K-!!(+DAAS^Z ]I8^Y#LM;]*MX@KPBMDQJ)BJ3WNT.OMZUWTEISZN= MMBS4Q:2IT5C%G+ M'9MBI! =5.SD;7=H=60<[]4XB" @U9\V] #G9A=*P%ZZQLN'ZJ# M-]BV++5MS(BLHO"Z(F=H[WD\E35TWG@FB5'L*[I%89J9G/A530[=AM7!\><7 M$2]..DK&WNO<[&5OTA[(5,BU'=%%2-^(3&L>RE9B$V1=:U^ >N47BS_K?YWZ MMMS!QG!LW6?'GURV*!)+9!M*"E@9)X0CFJE%5$$)'7]M>6"UXR?Q9]AB576K M<:N$TBIY"@0I;%-J;*96ZM!$C=P-8'8JF*7\+G9);"SL2N+O32?MT!0MCIFB M?*&ZRE-K!HOO8:W6/6*4"1+;9*.2P!05*-9JH;;V]C**>:+J@% 9>#9T!7<% M>@EQ S1J8@7HZ-!5SD/_IK*HO=*NEIPP^IQE0E:CA!LI683=N=!3)T1W[&$H M/YJBT.(*2YZI.Z^#9LA9F33-)JQCT.+$+C0:,%-N7,:;0AI983[P?7+ZMO[0 M$+;R7A44U,<-YU)\WY#J",="(+I06=Z'9B,_*,M_IZ:.SQ]Z4\?3N:EC;NIX MK\Z0)//$O-'YVRLI YVB?%ZSU#$CQ34'(*;?M[BC/Z]/,_&QA -GP9N>E7=; MED4+AUI0M\BXMT]J6=&]6:M9ORUL2MJ!R3P,:K!QS.C0S ]ZQ.$2@G$9*\>Y M9,YUA/9U(R?+^!FQ-$V&HBBA-3\'1QLR7F,BT%5<4]UG> M88R%19AW(_-2I!")Z+::Y>*^RCSP #=[N8WKY"9X&CI;]PL_?!%EY4!3>O?9 MKQ#5^*A L7LSN>4&I=99ZRR-;,SX@_74:-]]W;%]8/P,)-%4EPZ[PJIM\.I MC+5O2?"M$/:['1E3%E^.,FT[\CXACF(IB=ZN"6ZXH.PC8RT=0]Y9?0Z>VJ-P M;74IMIHMNTEO^22U3QA5(K\<"AZ9HEN&);PKOJ+NLR]K3?K?H]5SO.ZJF8+"'H MTDFC302,]TLQL(>:/E :N0,!H>E#]V[-$R$I+J*.*C*W<%\Q49!V#@ M[8L$1!-0R7IL5D)Z%8G7V3 O%M]62,1Y M CX]=5S["5TEUVSK%6HZ_)KY0Y MNW9O.03F'(IE@L572/=EJ$U&M?M8\ULVMAP5':)#D3@5S\ 4L>AXE"-$K@)F M'JY%T J0DKRF=8(-L-O[8WD)SV&4YH;C#Q^E3@ZNDTU+IG%:0%,J=8KX.D?7C#E2P<<;%6)T"F7>PB+14 M:)!;35^,_AJU'U M/@Z*ME,4#7X&M187489)H&VL8IH576U:9.5PTZ$EYY^WD/UD/K;/ZJFXG&"6 MM7,F^UI+.*RBE3Z!OC^QP#@LC,0>BY@G:7%2(#;<$,XJKU(R98YO&((8SZY( MQPL$:MENQA*S5G2D;[92H^#56"U';1%.;EJ&(O2N V?.WA7*,!21^$JY)/%. M<&[L=THUN9:RZT]\;OK#&NW'K P.K &W^$R*J FU7=&$/0="/C]!VZ*'4D6 MSL&W"$WP#$OB#)\-4QI\P*+,&>+<&A.W*.BN. BU+^ V*QQH=2V%5+ 17#K6 M%C6U#3AA(^0IG'N32))>IU,$ZBB1-9>%#V[L/TR+Q.LRXB27JLS=>]!A($&\F MOP4A\04T00S?:6M3-"97?> 2GK" H0SJ3[W"'V)9V-RR\,:YIW_N+YG[2_[S MP_2!R^V[.GS C!R50O/43,P-KO,^GO?Q?0RSN/W^57%3E,,&! :7U4H<]6K0 M-E/3YJ.ON+K:JL*H24)6:%L9P];7@_Q._6F%JFZ4H1WMB/KY;$YF?A"1\4B$.#L?QH2FO-FJS%9E MMBKW,4S:ZK??TLHFS@6@Y3Z5VUY'[:^>W0=Y!%K";PIP[X2"FI2)!-195RO7 M]+ !=VIBGPW&;#!F@W$/PX3XO.ONR#@1@?X%CQ^AM6.]5&O_ R9^)J8XP[1J MQ#6^<1EUX)#TY"XMF+9 M*K269Z$EP42N$LDO3Z4;30@B/QUQFF-/H+%YATM8:OT('$% M*Y*MYE(Q$,I)-9NK\IH$\]=F+)56^!>;0HA4.BZ#)J>O>H73_R V3\&>.CS#;(73TT),^D:^F&\K9B_T)I."7+.,2GVGZ9 M-\,'T\/TQ4/O8?ID[F&:>YA^.6&:!#53NAJP4V]$$X6YCET\V/\)?]&$.-P0 M,.XV,C793:#262SZ [3.[Q4,&%B ;E9_OO4J/:34$^PXL]$@@.F":*WBLS/U M=2(R'D_/(KUEW)G^4\*QPKUJ15^MINPY=?4&G5K7KA.G&EY\N]V.316I1 OB M7/^0'=5T%@<>Y<7R0(@V<)@<3D"*5)H JNUM94'P>F,VQT45E^9P.38"0N- MSG7"K3(_82&UW7"4! ;:Y=P.Y:%6&M!%S!PE;WVC.!HE_:.4(4R1I!O-[XU):Y>0 MAL9B8RL9?HS:#8JFV0'05^/":C"12.F!U4S$KOB7A753\?NZR%XG M?%C$X/R(! MH\.PJ.(W[4WJ5))^+X_)J_?ZR$7CDTB5D#-=0W 4&B$UDC.-C[&8V6::/TT( M[HRH+/H\/2ZEN][63-#YRFIW&5ENS]MYU(5&=O3VO5FW<:.SV8:?V5/YCBP1 M;&E\E3>')2J],,.KHGB54#=+&TM*TN@9"I>3'E!+3ANO KXCO$7BK6510V4HY/B$ J!]]<^4&%BHZBQ*;E M=C3$=?X&?/QOMZY;29'ED)I$*#)M9Z%YV =9/H/-C!GK=%*D=H5CZJJH.1_N M05T9)"FK6.\D1 7@3T5&WT:8LRZ\DN0BORVNAGHR>.K++DY\:]1I93?A5E?6 MFN2<@[.3)?U.*6L\7N%ARW?53 R$+)%'6"+[8P;LZ)N>%"RSV]SG](I+'WTI MC=.U^A+<]AZ%4,V[S]WLYX=.LP7\@)]*SML7&BMDAW0^RD&XK30P8(MCGJG? M[+PX0X^^M3ZKA: %8V1*$7/?&/@*/(?>?'B>SU.Q:(@VFAJOR#$ZJ)C6*63H MXDC,?@1^")BF5K*,+3PVU\6?&^MZ^%N&\,MNKR;Q%!^YA <11WLX'B>,8Y,+ M1O9L\9?VFLZG+A<=DPS !:'D\N1FPA6K!=P)K6:U5D2$Y^ZHFI_&C@]C"K/0 M^3TD-!X^JH[1)TU@FH_8P6/N4,94H'N:9IJ^P=5B:4KFNK4$PW%RC8DUE.,[ MXNCPO!QS_'063_4]O<9L"F#@; 4?]5S7=>PCM8?M^9.$&+WW#?PE8>W6G2XP MBXJO<7!6")(B,R1%?P"E2)+,PUU\4%E ,D-- 5!0.Q R. M7C'.O;%U/M"FNSGQ1O>E';WK*/R]R+[G,B-#>$+.,RZ<7=.>T8!6N9731^]/ M/CM^\?3QDR^E]F;,8W24]_[JF;\ZD,_T!/3H2^?@[VY=J:)'UU,"S<6$0-,[ M'4QE-AFW5EOC)A[0E($_7(BA/:R>_BL(5/ MK-X3>^V(JQ;*R*$M!,QZKP0KD'WZ^%.+2U\5W;*@)?CHA[>UVR^>K0;S4GL- M@B5:];N=%OGH;\\D[M\ ,_+D\:/_YMV,Q=Q;/^LV;%R]GW]*SMQHQ'#[[3IQ MWZ\#67WL6XO4#%\X@ \UEBY6'(,B2%]7\!H'$-H*8WRI-\)3A:$'-$)XMF-/ MLSCQ-"H^ ?UH^W0H#')ZX1-RGQ2Y.3:.VTXM20UG69&GK"4 M0G)?LXIC;T@5G?G"ZYQ.8#+Z*H3-_]^?[#P<9XNCQUFF1C56";=LJK\:VW#!JZ(>7:A5,2"PFH.2,WFJETT&_R"/;=G/AAU81JQ%B<.PJ(Z@HTYO#0[#V4N1NG8ERB(^G;=K^[XR M+!8[,V' 4$NQ77'3ADEXP7?<<:4TGEY?K8T0<0!AB=[PL M:O;C,H4N=LY.$:6T9:)')I/GI+"6E^DA),OU[;-G?TL P.SLW&@O,A+%_K98B"=IP.E6H1>7%"R572];I2)8-H#-@J M\TH\BZ=Z[3+V'8?BC<,5W4XH IJ-&.5C)Z!KKJJN;:02'T\?2^'+OAN"\.!I MAD6=0M@C9]$AEM"P31 %M[4JO*'T '>?!I@U)-Q_*F(3( >-^)&8N M/Y&IL2!PDJ=!-$'W.KCX;'+.XJE>KK-_)XMVS"GN51ZGM])8DEI3M1V6>+>$ M2A;Q;$3]">2)T4F6VYJ'3[VE*:+1QXF%L$%C#?:X$T3(?2A(Q,$L;2'X6QZK M_8G9.7K6,HZ[E8S241==\)XF<3@O_+-X*BD#H/!^*4==*+QRKY#D_>B5/W_Y MBE?0\QC M=??RS!5A_KV&Q_0Q^+:\GB0)N,3>][! M\PZ>=_!]##/JFKP;:W J'J^ :=2 Z/2N^KJ(8+M^FR>5*UQ Y&@14G9#?AZ$W;_RX>.W?_L(6/W[V67 MO!?L_GS\SP(-)?_JO^VB;]_&\C^\M MZ04 6\5T&;?>Q8*3H_\I'7-I.4&$XW2G!^*<6,H8VS+Z)T3+C$A=24V_+(8B MBFQG2S!;@MD2W,\& M^OJUQZ_ MSEM[WMKW-4SWUC#M=\J,"U$4 U*J_RNB[#@GJN;M/&_G>3N?U4FMJ@V,A.7% MHC!=Z7!1430# ,_[>][?\_Z^CV&N:VCK%'?F<"X Y,U)"3+P3?251>1?X8-Y0\\;>M[0]S!,UI.H M[W "&RJ%&=PEU0W,2L1D:-^P#N[ U-Y/A8^%:O$N27OEI=_*H-R)EVK(-C+&WPI=?[]['OJR)?_.--!Z&Y?/&WMI:&WA(76N*S M:R8/-%+1X]P#N0D0XG^_;^NRO9K^,E-=WS*F!Q@VG5(SN\6/9'T'4?_5;B;3 M?F<.069^^I*9?9[DS._2K@?7+):N=TQ+>]"K'(TIN[%KV:0'E2BT0/,4ZP," MG+YP3;$:C&]O"PY"[IOT IO,WEU?0RMPU=)] "R3>)FY%S*5_5/YVD1W3X?, MXDT!D7H2:"JB%A@I&0&FE"T=%&B8^L'$.D3=Q=.$@%M79"TBFJX^5XU4!-#,#F"+X\3DG< D;9A>),H2+2XHMQ-!LA99*D@YX\>45 MK9;BTETLO@V_%OX=*!AW[@H,6P>*'8MNM#F(.]= DUFVM.D:6OMM@V\,+!TU M5,J$R()5C0D\,JM5%L8M^ELT:!W"#@K$75T[5+*P #X*IW&K M(F5560&!:LI-'R\"H-7S.:(G%!ZK %.9AOAP4R0,VF;*X!IR*:V3OO"!K#Q*LLG324CHV2 @RSRLSQ[#( M?+Y8==46=*X9K2:0(P>A.$Y!V-UREI&B:Z?" A/][*-2 K<6J&'NC-!)'W&CJPD241\_;[;9MKAWD'K"D7D;TY:\&)COZ2+G7G[]\ MI3SK'Q_R:HG7D@4!,S -LD*<5W\'MV+5DL& QM)01#@4U7N#96O9!+ >/3:C M/0V$C,JB*]G]4F)%DP46AP$'0!8MZH[<(;5%OD>L;W08F=?F M'YEL3=.;?6$F/C&^0O9_U,1G[S;Q1[;]O+G/XJEB%SCS7M\ XFH[)3A9 M4RIP\V/Z52&4P_[KI_CQ=$VMY6;D719D*9:LU6L_7;KAVCEUC\,/;0#_N'BE MTG7VBYR5%NC(!'_")>UB:80.G(\J!+#/IZ(["45#1'?9TQH6J,QR'VX:3%X8 M%38H,UJ.+$GIYTT@ZN +Y//=-"^9M/>R$-_#.W.YG:Z-NV0?3$_53$_5:!NK M66)M.E,SF0B_5L9.GIC.U)U4(YJK!"MKNDYO50SL/#+WKQ%K*HW=KF[WT'IC M"3V6R>EL2<##E\ &I/,\/^_!=GV>A/DGL[R+)9TN]8ZH[,\[=C4=)Q_!-%U?GB M>SJ15JT8ZF/$8E#BD>\DZ00E]&85"^]AXQA9ZB'JY0I\RI ^;->YD")S"+N;B6UF"75IP[8#>]; M/D/X'(+W'N[)YQ3%UR6GO#)/8/_D2PO2>4KH/7_C2E:*_JX@JT3__WKQT7=N M[_]LYDO'"0Y)+XX= M*VG3T2NLL"5_G=SW#KJM*G!O)._\O9CC7DG@KZH^\$J)8)<_O36]D:T[Y\J6 M90R+GB?-!^LMW:O1/AUX6;7E*Z)1Q&K;O+@D/:CBLO)T\) D]R T]Z)[TX^N MS#BIQSST44Y(!/W<8M^.7BHG2KKY5$[MBE+DQ#S%/C/H>6'Z7 > .(?F8BOA M&7^3QDX1#986R[UP2G'9ZLN35R;; ?[4V#4I,_FQ .BHYY(?=UOL!;&'V.=9 M &P)N72T;U43'8Z5K!X3#LZ/[F@=-2N$J)?-B5G6OSG4SX)/ULJ@,E8J@' 7 MYYZ@BE-)QB\M8/NBUMAHF#]XJV Z!\@NB@)0.D,R.$EGR;1.O,/L9WB'-!$5 MF<+2XOW943S?IT*.B>[@1&1/ELO1?"E4S.DM/%[H=[>VSE9!L$U:1J PL MXKI/'NV5376Y814I7=(<<:@U$A$ME"%@A=/R;3G*^O+*6#J\' D6NM4B[JP2 MW6PYE\@F#EC(HHO*CQ@"YBPBE+\I_LQ#]L5+_;112D9#NS2"GVK[61)(U&66 M<0*ZS\1.B=J775:F')J"V]V@2H>JCEM*94JFINIA#*0>0;:NI@,02EF;<5B4 M[;4$W4GIDG549"Z%?#_SMD8L^, G.W[,MD,G3HGZY;LP1;B3:1_N)_$FZVA6 M33GV$AVC:,2K0%3:>UKI$#NQ"#E[A^1GM/""C3IM\N?\V+D^5="%N-/;#06W M> GQ2H3T>$N+%ADS[UW,*A1G]50_--DSLM/UX@L+$_T:^1IZ<7YY,:BC8ZY7U!9J M\=O@9&4"RQ[PHH*LET6/9KD:^1NG@S"]I='^CG(L_XW],O!?E MQ5W;HY0/!]#6J2ZPX%9+.;,KJMX.4_[J6H.K5=OM6B[UJ)PBKL%HAZ=/?H=3 MY^D??F=Z/S5C!/D:?Z;GR5Z09VU!S#/:/8^>T78 F.6M' NO_O+RQ7=?+SYZ M1>]LAU_^I>BVZ[%>O$03<\AXOVCXH/^NO7Z$NW\=.0\?YQQ/7@+>L!95RBNG M8L>*_K(GX,OQR/M-M1XT=@-_"1ZC;BD>PN7I-?PT=E5?JK? JL)L&N!V##X2 MT"B )QFN=@)%$%!/D'JW\VGJ1A\U8J?+MJNBWRS6--3YM#J+IY+3"LXT[SPN MM$;1>0 P *>"4@1D4E%Y=%W_RQQ9W@Q0T#J?+6?U5#]R[3T6^1-!>D[-G#@$ M$I?"GP2>^ M#%OEZ+=T[H T[K)K63>:CQ3W=N4<4%$*5ZBK;36(X15[BP1&9&[I,AFBQ=@J M'S358LR\VO^B^^FCPNM+TP22$?V8S>YU8T *BI10B41^<&T8P"T*EYNB\T5& MVH =GR*9L-\AJ3;VO5T3)[P4A<*$@C^YNOH[[T:N\L1-]=2J81GQ7:;Z2NIR^!3?#XW1?'YP33-)]-9/%6(HWPBPN_\,=(4X70A.)76C695U52?.?N>0Y>$4S1:L^.183#UD6D>+ MF];1,7QJ=L.2BM-[YEAKO%ULD76+Y-W%94=%#!6&NFY76F.18P$U+905DA'# M;Q5Z&F?^CQ7F6)@<.53]179R M,K_R&4*H*M>C3RN@4 /3+G$:QS$!52KZ)(75=GI?J["2$P^([#9#8NC<9'6# MB^QE$S6IYU(_C'2$XZR@O8?@)BBL)\ -4XQ1U5B7 %2.N>. 7V"HL8DS<]D5 M\ RXJ0 A)$JIK/?A^1-HQT(?S4%5R#1+W6$.G;'&K[ MN%ZO>2RC>JRJ=KBKYP/^@X'Z/'GH4)\O9JC/#/5YKT5-+K5["(3&>1ZBH<'J MQ,B'Y'RMW:4XWCK'N)\>*J'55G$./XWEI;2,<+:N7D5X $3O,,,X]K?L<- 5 MT_%8RQP:@R06%M_J8-3Q8"B6[ZW)+L+AHW-,@<'!,0"2-@:YT$ERU$'BV+M0 M!T.^SE@!G&GQ%_4NO> B9#9CGU'Q%:+%73194>*]"IPAN'C%Y $-;"+H^#7' M_=QNQ:X1?;$/Z"L<_D#:D-_"D)6=$>("^<3'/[*P=MP6]!\9=9()F0/,(?JS+2"#SAI(* M"TZ65Q:6UW),OYR;3X"/WA4/!OJ/JN))] MGNSOS-?;0P"46QNE8;AX)&+HK8)T>;6]))N*F'9Q#6N>,J*U:H; MI4V9-U=1LR9%OW'.P&IL8*_1YQIYGF'O67M ;O-]HFKBJR/] ?V6-"7)S91G MH#WFW/:3-\M*[@<(?GF;T9UI!5&D@H$.CV+S=RRM'R.T,FD10*[^+7=&+,?. MN@>!W3)3'UH?9R-S%D_E"S]TYJL9BLB M!J0620G)*&@]3&U88O<&\!#,K"MSF>,]PIG :R/72W?CTB_/,-N>6< MT#NKIWJN4+F#=5"PJ<1G<)#Z$\M)^X=6Y.(A$R#M3>*-.9@\P:XV40T'2X<9 M(\B>,<@YOG(6+52F&O!+CLA67YS;%#1]0;UR>XM-0%Y:0)G3,[]:9EIW76 MDXV)/C&=.=IC_4D*ZQ_G@ #(C5U?P2Q4K1U1_*&_L9I_# ;'!]K5#;AHW70: MI^ "Q5[PE-EUV[VA9](BH/!--'WAW=>QB8P/#[U:C@:09_=VU7;E&^=V?$>X M-\Z\(0U[^*S?MB6MY;3]E/[FZCS3>.#GD!3,;O=#M%)R(GXK>-)M&TB:PHF$ M%1:SIDC'1=P1.HW!E1B#=HRD[+&>TSAV/LK.Z:E>-AGM:T1?7'PQEA54L:5U M-Y\X,4>,D@*^A0A(.DK:E9H*@/"<@,FT[@V/9S!N('^=3"]BI1@Z%#C.6Q_T M[<2X3D,A 'NC!0FV57:QKD.4)P0_..IR.64"+X*2".N1F!T@&A"-,%0#8!_ MN#N]MK5B3W^ YN0Z8#VB:L4DE770EY0<&H"?Y^'N($OJBTNIW*5PUX/8-$;& M&MI.'E@K?^%=EF.G)9VJ$[XB/W>SC3^+IWJM\"1=$W74&QXVJ M<^Y]65E]EGJ,4I\<_+==7;(P)MQ8VDEEDM?8%:!*]6X_&-)1SWG(&FDSD M;Y]<_ '$S34CG#516X'VAB$F"VY@)A]OY;9+,LN?/,FSIX^?/A8P3'JEIQ>? MW.U*W)@>'1KB+LJ3A^SQ.G2\)W%U]M&3SW_'-VJ'HOY8B0+1N=9'0]['H/69*$>3=A/.J8@/QB[>"1KS]*%#8_XP0V-F:,S[KE<5;[,XYE%: M->86$7> "PQ:CC6*%$1PQF]BO&_6R<'-B_;]7/C2C%;8L[1)-Q2C2[+ OPH? M .QQK@<2E1ZBP;$K=E?;]<<&GLFJVA6#D5WD(1_>M UYR(G"L>=C-3=F]FC/ MZJF>92DBZ7"!)@LN12DPL4)*JAE(6 )GRB2M<+'X1B%4N]KEV103)==)R(P- MA.[[P=DG60J$/ %/67I1,.V]0":4>%&NM%[3,'1UJZ^4[<:N'PMAYI Z%!TU M\O$^33(*$40$H3+.)N&M";D7H:4F?_+2LNK 1@N)NA&P#FZU:?"5/;-1)&.> M5LML6,Q4-$HB2/#4$?''["V=Q5,=VW,^?/#,G MFP?!7;J$RSCDX@.:,JU!YX&Y!,EQ&!LY9+SMV59 ;C'#53]81T+O^I[WP.(O M]/$CSK+4+@J(4/$&]BPBI,JNQAJ)QXDC[&D&L5C-47.%[ MF(=P@RVM%*2"VJ&2YA?.NB/"IZBX#\:T:GA7MUV?76]:L;ANR[-&(W==2#XU MDT(\_LF-'XRQXYS#!1H=,0]1YM@$[(J4 M__K=&#I"_!4E3D\*,A.0&YO9R(LXQ(3I8LS"T\V6ZRR>*O0X_DQHPT7+_[Q]Q_RQ9\1W/6;;->"VS[W M))L[U[=R;*I&44-V>&0ZR$*T;5N%^)Z>R(C-7N8SJEV 2M]*=XUVMV<3YJ9C M%^=K6N??Y)H69FH![(ALB(""%70<>0&E Z%9@PMQP5#NQKAIY08MFH.99,TD M4R\(--X;5ZKG?V1F=JU/[%I5+[>FDVB)9:>76$33RK[.X=)*5Q3?BQ.W&X1% M7&ZMWJ)Z.FQZS6S_=6R<[-M/'GO9J#A#GCW][.*3W^6+)T\NOA1^GR\N/OT= M[G]T2?[VT\^CA/IAOCU<[5.[VN)C](4P$,7OGWW;%0/(G2HO);/R)3Q MC;-"D_AY%L\Q??\+7(#^_KO<_O+XABM\_MG%8_^6?O:\J@;&79;78Z$?C*&0 MT^/SN%F6,WC*72\)^FS2KW-#8AY;@B&<$6=CP#0F75,Q>;$V4!03_DC%#FW; M*V=5#38SGMO1GB#2( Q+PE(04GE@KI,IZ3]8LN2**^9)P<>**YA8S-B/S+9IMQVLC,@ZKHJQ%W\LT.,B8:.,E5FL M0N-I9#S-@$P"*ZU%\-1#&M,+W7)D?S?Y&4J08YS/%N M_A?U5?EW]G75>VK08MF. \5CF)S%W^E=\/Y\^M4WNE3\\[ZPY_T['!1\$SZD MMH,O5'-BBZVKC?9%TXR\6,$,A&7Z#7A;GCQ^]-\<0 UX^?\:R5-PG;3;3[[V MOXJSXY"P:A2$^5';Q,F"WRM(!]:DZ<-M3&U6565G08#T7ZL_Z$4T+2&ZS%X,+;T3.#DZ*CF-=D .2V[V-U\?K/^<@;]=FZDYV MB^L"&Y-SK&&[>,F&)8B1ZJJ\6'QKZ/.LW\7[LN M;18#JXT\F:@>/@R4RKV!S7F^X"'!D ME#Q_O1J;/%R &RW]%:3X3%.@[^IF"_@1=Q"+RK%_R^PJ3G\N/\B$ZCS8F_1$ ME4<-U)UZ;2Z)FRHR@YT X&^&CR\6W_GWYN\LE7/TH\4MQ6T7STDF<\+]RB9" M)L5!O$OOMB4+&)WHR@K6\RA\3+7K*%KM*M'#D TS&\,/!N;TR4.'.7TYPYSF M,.A]JVNB/34J]*DE1D.\^J!5>GPGWP[FW9]RI5L.OFG_V#<5F-I[CW( _80Y MF],,;S@-Q0FU_YY>7\8MV4C?W[NV[O^;!BSG9.;+!0=S(=KMDEHY^5#,1?(F M'NNZJ.K)G_/%FZ:]]JTU4O1=B="1_$#3"?&EKB?H'#O7U<]:U06]YU+Q!'0R M(H6KQZHD>-+C\?2+R3-18O#2ZZTZ#2&J8%Q:K";,34T.OHQH91G)Y1H%%3S) MTAV?5!U'$@-E!_ !NQXC**)%*!5Z7FKY^]8$/RWL&4NHSOCF\WBJ4/=.NG=X M]TC(H7#YE C8T4D[(L^J"$IM"(*7*(UG-=!<9&^BTPN#G 1QTH;^C)3PBJSR*I@PI!U"#RNVGK4.ZU:3C:U4I#P2[-ATGC8 MQI<_;&O( M1OW70ULL[]@" QN/E:OK':K;S>7_^\WCW_"_Z0M_D\!T603 /WT3$GIH_Y^Z/#_ ML+)/[>%;[YAQT2M17#J&Z_BQD1)M#-0';&L:Q0*2+)ZCT. M\)0Z'FWS[M]WNWW,4PD85=%/]Q^JYL2K/4<<#NWTD)Q,6S>R_-> MGO?R/0R30N"ZO<.A'4YJ*9,&GO9%_X9;CJ0(VU329B9-0S^E:<=?XR8_T\3! MRW6FO7!=Q26[8M'7[;4HCG."?H=J').$MMT;K;/L-1W%K>*MZ WH,N!O>,YR MT6ERG#B"NQ>3'Z_)]FG'81;SB^TG=_S:>%5CH&(,5TJ]H51?Q*D7#)L^$EC;Q9E5[7O@0 MT^P:?0K25BT51)G;[$3FEGOXF-;E=#8XWJE'L\)RJ;BIX3#A/%<.SN*II'(@ M6S==#@7V@70MF"2 0DLDDZQ.65P$]"LHT/98#SHC]<;@RN4JMRDDRGWF-X>M M)^ZYG(L,Y_-4KS>@(EQ7;UWY:.U<>+=1WU3G=F#W8-PZF61?P 0JW=1Y!)/E M^U*LNFWM=GH!U(+3UC]IPE81=+ZWU1)WU&9M]P\M5V*I MZ[U(YF3)()4FUFYMIX?LR7[HT"B"!@7KJ!C[(P\*NX!CH]XO O]Y&Y%W6I1' MIR^=6N-V%[I55&I%_NV;"NS\DD8J:1IA(<#<&D^LFR-4K/O%1PF)>MH'%_I# M/LZL*6?5MN"F*?S22AMIPFD;2S-ZZF#Q6@/+-/NL"SZ3I4*UW;E!^GLN%E^/ MULU)_L=&?C VBCM6JF#M0URZ/?P)/\5M[;T#1J_R6YS,DAG8FVPRE_$#ES+# M'-C/B@QT]'OIF%=L9H^JW40_,.@#1ZL)354.%!\1MIQABBT7F;6"!X5DY@K) M6O$#M>)(NVRU<4'UV2Z,#I8>"XL[S'J&G,;]1K4@3YE_C]_&2@X6Q>K8Y=LN M I 4#"')(A)BJ8!K+^>IF0QBH_XAPD;'1BT9 A+)=@5O;M5>-J@CJLT19_.H M15374C5J/" D/B#3JFP\&XH.P6ATR\F3XH]Q;AQ7FE;9V, M%"G<-:0R\,?%AG[\/T*'P+ M$RV#4U;*Q.AAEFJ3=0?[!R,2Q/2O]BM%5"4;C"VRGK1)GZJ/>2!S7C%Q)-R* MRK1703 FL 3;Y^RC8.G:Q6??]:R>RFC,BW0M'5\X9HN]'.38"W,0GV )?:X! M9VQ%R1M; WHI;=8M(E]UY0_!=15B-J?MLX-&O"G?#\O#]JF?-;A$F<, MG 'M(/8>J"WK3'LF6)O1#*E(4::S4262DUM6G):=25>V<^7*31,W-/BA=D+2 M%TRXM_R93H;UK1M)K2A!;%KLK:)6W8$K%W36;)X^,N%G29:\_#%\I >W=$W0 MPMJT.#_]*_E8&V4=7A>W/Z\7D]$LQ_*2YIPGH ^.]Y7QW<.58DTEUA&$#&4\ M96(?4)*T-ZY43]Q-Q_W'&4XG=I39F\ =]-69Y\:\\W00XW+BGBE$$VA3NRY] M[WI#<4[(EEVUL)2Q<3M,^A@^?2!=[!\]GCN8)D[6-ZS%_R-F&2P6K5+/N)= M44LH$U2JX7(L$R0ZCPX6Y^2U]4;NWH9(02%?>*9*I2CWQ^G*55$',5*/)M?LFPIX:UW!LB0J#S'UJ:-$*_FBB4JI MY@YD[ZA-\?N3I40L5&JW13[7I/>)UY M[3'/CH/\IY70O(.X0 =6ORX"MZ^2W0(TOVE%+H.3>@@)2G4N P3?.YB,:[?$ M4L8)-8YYBT4SLAR%L( )XW O6YN)%]XY)][#GG'J,U)F1LK\9X9I]@:![:WA M,FQA6*"'2<8Y0K9B/ZRAL1JT&&.!GM5R!K;.6WS>XN>SQ7ZDKWJ4WZ31;M[F\S:?M_E]#'/L[[3!A39"^EL6V^HMN_L-71&<\NUZS?\E M.?WUNM_ 9:>SG'[17,Y[?-[C\QX_GZ/\$%H[[^!Y!\\[^#Z&Z?$>=]K"C4-8 M#5HCB[#I.ITR?,^[>=[-\VZ^EV%V;M6-U=WVLE2?]!3G#A1UPB5_W@O1*D.8 M&<=+03B87CP=Q-Q8.F_X>CD57 M- ,K;:AXH@JP:;T84$+F161\7ZB!3N25W@%L$+IWY[L\LA@\P;VI]*\^M]IU MYX0XF553I''#*KX,P!<\(O#_C ?FTK)VSMB0T-' %S4%Y!7 [[5'SV71%RTM M' U*D)<1#B\IB=\- 7)Z;K([@#YFN-T#W(K:_:G-(CWKHL74LB8 %?=H,-'J MHR6:2TY]6?"ZC5,'3?>:;-ZO# $ M_UL9,[W*<86V)[;ZBM")8 DJPUK&BRE4BTX>"XAMWS MMV5H3)"U]B.X6/R%?GV%IO[K0@7V& ?N=:]!5$F3U>WUHSX>OPJ9J)C6D!5D MKWL@GSMI)F.>2R7^[X>X@XM[ED9M4Y)&PHJ!W&/#?YI@IOQ-E&.80YO5_H"< M-3,HEFO)S%N3?] +2Z=S4S$X^W!^M/4R]&@?V>.B*^$OK7(6F?(=JTZP3*KP M^&@O:YC9A&53)@J'JO2" @LEX,6UX+-8D9=75MG11+%.D9\XX\ N:J79EK;/ MCK7:<:3MHC?ES5.B!SQI:N]%'(T>L>@-S)\K%EY &1&!-%Z>VU;CU^#I(/LB.KER9+?(B?._TSW0-SH@1'R?."'1R8B/,=10(S%SWJ,EW%OL7Q5OI?)-[AU5K:_6@=BBP<:GBJ-$#4D^SF3XSB]6=FZGF?+[H=V[$AK*; $X)C@ MCA$TB+>]'+]QF[*R2/,R$5M[BL3',TXGD\84/D.@:M#OH0T,WW-;D&DY\;GQ MC$(\D0>O:&5GD^?'-NU2N"R8O[+J(2;A#CH$C]PWC,NK%QQJG%]D%)M3Z-N/ MUJF=+/9DFWB!HM!RSSY]):?7Q)4QTTF*S:FBD>(#%:76&A"Y4! M&S'PN;.[-39+2:2'ANHV]ZV(QS1\CV<8CFY]MN"LA[LF#W^.!L_KJ=!#XJW6 M2>;\HSDMJ).":^2LU5.C@T948K>A",.G*P-]%-E(-@R7Y>4J MN2]9U'):Z54 N^0.$,Z7 9"5=/D&1K2:5J$H1^)^93LN!QJV27W'D:30F7@1 MS,82AUZ07NRO\,H8'9T((DL"-!QV(H89207)"<1*>M;H4I1X?S*S?I"ST__! M-+M^]M";79_,S:[_WGJ*QOL0MNK-U1U.&QUGH1+]+3+EPT8.CK15CH,!.PQ4 MTRB4)&!.H0&K%*"#6EEQ_.GJ6]$MK+97)_%4R79GAXUR72% MLL^;KK%%.5K7:Z,)9D^:9PN!P6U0SYO= ;,C>#_*( M2L5RP6.O]^;E*.'=U/7@>.VT/V9:"@D_U\@%O\"#A#$=.%7V9>YM$1:0$QRS MX*Z97CYFL?%!=L0C'.A&PN-QKINE$N/QRVC,*XLVI:82(+4,XZ.I[2,ES?R$ M*%X:CV0^B Z)C6/Q]$/; @]S8WN>,^/DH&$$B"VE/7J7)WV(38X)==>YVF?>*^6%? M!$6?9*18.$WHF:)2@(A&AV)3!*:8P^MS>BI=J49=ERS"?A.1C26G3QE65,2I MBFH9U]64^%87VM:[7%:=CRY;P,%K(I E4SJ!"6%O(SABT"%8S]_DLMI!NK@5 MI5/0K8\=4[GSV"0K #%ZX&B8XX#]Q"Q0OC/S%G-*P68?7CFZXFJB,GLR8\F7 M% 8KIZG0JL'X7(D9S*9RM9YOTQY"]V5P\O2\E)_)BQ/>N.*RS3MEL8Y;]JKFBL;2=)[.@P>"RXH,HVL-KN>3)"UXG1&TB6E])B=:O4,,- MZ+"U0)REZ(&PO,0PK\>FM$->%O;I8_VH%X /K-[KN8BYX-YBU:V*.@MCO*!X MTMY67*^YHO."9Q=OP%).73@BXOD_."-BP=^#DP(L*?=T4CPL6_HP3PCU:(HN MSVBE=6U7]LZ%G@ES4PJJV=A:F-@5MDJ(6L&*S+4HF<68XB\0U6JL+=-TI M?D>VE,N3> B\BO':,P#/[&Z]D5.UI "''USX?KB3XKNA*H*$1\G,^)P8C7M,07T1+OJG:@TZ.Z MJH!.ZG%\>ZEZKEK7=)#A[!0+?].RCV^#J6MN%)!#8/@W@0W$DT!XR]7FG\^X&#<.YR77(TI2Y<"\**TA;PC.O7X=ZP8Q+3F&J9J6,5[11JU*JQL]OL>QRUD;Z/8 S] 9X> MDS<$XY-X7[V!^3@[BZ>2X^S9BMQF40&-$C ^\\M(2=#3T7DU0[XI3CH(#0:!D @*\<9'= B>?0'R,?Y_A(/XJ;$& M,Z0=N%I=[]G M!^&LGNJURQ2AV(X]J_Q<5?1C"7@;"#=TT0HNHFV,U63K W=0-#-'21XKS"'^ M:\?97%81XBM '>?KXNU;^F29O128-A;NGR_^>4%KG88/;[>F0?0*7^K;]7!= MI#D..6D"*AGC116)PVY$H_L\A@+_2.<07 <[ 8U:/..S_9(#5"3+$0&C,#OJ M)H^V7@+W\E&K/I*DM!%/,_Z,_?7;S$]F];4EN=@P(5K^:JTQGL/!MSMCD^\] ME7T<(_(5^;RE8#N8 DL175>]QH^6[T42:QHX3$K3( A@1N12F+Q;/?$H%B%)YN]D$J4FVK92SR XF\H.K M;CJ*Q0!DM[S6I8MP,0ON\AJ<(O6Q4!I)&/$CQCB>S)^Z82:[6*XQ3TZ_9/M)RT%W MK(=-.D>VRZJ)\YCK%I 7$8Y))G3VZ\[BJ9(ME!U?7/^A+92%+;1X#ULH]E75 M&!\%RUX%N"T'N(KC1;=(.F:9UN78M1Z=OG#2IQ/3:ZJ"K M^X(HO.I%G7;L:*:DVPMJQUCIHC) ?P*]14Y9H\E$N<'0U+Y-59!#-K.SK< M+D75E%VIMF2O'/5***FB/=@ZEW(3]N5I _0^:E@]]F%\,E#-4W:0U+WK\K] >^\B?52G*+)9ZT/>3O>/]!. J>UGP9/B, M#V^"[1ZKQ:/]1=K'9:ZT[!"C2W$XAS;P)?(F/3(:*)!HN>3*63KLI,GU(K]Z@1P*$B7_0KGT%E2-TH MN0[:+T.\X"U!Z"513:W,^^JJ8Z\0WVV!$8\E>W *)\BB!9Y+"P:-BBO483=4 MW6K<@O5>"AFJQ"B/89)U\KZ2_92ZR,'K"1JF&6Y\Z=]5M LX/SIJ5Z3.;M*_ MU!]2I-PEP?FPS.G#/"1N*T#*H0A9,+ RY*;AD&NX8>N;/?.P%BA*0*NI684B MN/LA]S+GP<_JJ9[5PP:2/\ADF&H1('@41E67$KJC\BWIA3B.MD,&]E8JG[H M1+ACTX)N(C,5$Q\D[3^RPYZVJ.$]]H'C*R1@M/U,NBCO/YF#B+IZ(#@I-[JZ+A5%?/?L.^'66Q8(4$$W#->2U4<82ZQ:&< M+$Z#UH22:@DW3,'G0[:LKL-J1-I0XXQ,-RBYOCV7LOFVE4)%^9.V[RN#&38K MUN<]?C71+"O4D0>'C@ 7.>L8V[)<,I,%(W%3D?9(X+VMY0DP+_#9Q;EW%XL7 M:'2IY)NIC4RZ@M619.RN\JGP-LQC'TXV)F\H!K-(OLU=55*.?-.TU_JSA; O M!6X(AB)M0;\GU9](><7$X' IX"^94(CM8=$4]9Z^YG.#>3;UL4.A* W.K)H4 M>>IY E90=^"H38X)*-0.2@Q4O''9=5<-[A%D)?!BY%\E/3CWN0GV:NPB@?2B MZJPPJ$XVTPLE'6Z-@VM\-F3 QPV^'NFW?S-R!#]'JO:(X MWPB_(GCY'/\7B,C_#<16#,@LMS%M]WNKW,4Q%D]U^H_=[\I,O MM4&K'X3*3FO]GE]3T.*2I&8:0Z,39=8]EHPV4$#DB=]!ZJ%?F.<_FX[9=,RF MXSZ&2>[Y[7=LZ#NF8 \9CFF BQA_V,=F@;N ZCH$X?K3>\?.U4M#3U*$ M)9[W^[S?Y_U^3ZE'ZW&X_69'*!$V[R-#!K(-F'?RO)/GG7P?PV14+7-_W&TG ML\R$8G=C[BRFF[?X(X5$GZB5SWM_WOOSWK^/87I"CCM4$.-H7[:SQ[%KY.YY MX]!!O^X*0[2XPWYBWVI\9]LS6Y'9BLQ6Y(,89DSH?K=47TP >EJRBIDK8%]J M=UFL]H%9@Z416W%!4DLSFY/9G,SFY,S-R1VNNW@'Y82R"V[:$MMWD2;7[[M=MW_ZS3W4GR$' MF(_\^Z/=4;) N MVMMO<^-O.$FXE5*%<,; ?P:BD@;>/GOFWOD*/DYN"Z6$(@AXP FB)=IE*IH9G9ONF'[=;$W$XFI^X^%7O_3/EG?&$E@43FY+'AWY^\@E5T,58 M5)'RTGKRUA4-PW'%)7P5E F>K51%KV*]$+!0@=&.5AG*68'A=>'>.@$#*_EP M6?6KFLE5LYC.+UJ(X)L_.C0A(P8SH2F^O3%]4S^NFCGS!RZ9*YVNUZCUU'OX M858-(BF<:(@)([\S13IFZ63B-FY%E@-Q7-8L>Z=#FGDZS^JIPOI'C>?IXZ]. M; /^],E7=]D-O=(]"S4XOO+7'_[\*FP5E0FZ_5XQP:/.&6 MV3+>9RMV.UJ2 MMGF.+U/_;98I.KG!8@;Q0V:N7 5:HJ&47@UE'YKK"KK"P'+&@^M%$209.JC# M7JDXYZ>//_4S6G3+@OS+1S^\K2E.Y8ECFA%71G8C:0X0B5",AR9O):(JK%[< M](7IC>IFKNCEK'0N14IRU[5O]XN8 90Y2R9O08 UT;S3:$%D+H1F3=LL*U'= MI'=:]: MO6H'IGL],21(X\::@O3ZNO:JJ(6@>[^XQ)\;>-[%:@.]#\]]CMF/ MR WEAZQ'%2@(\T D:G3KQJW C]<@@#1QDMIQ?X@Z(16HS.&^PWM MD'ZQ<37O87JYCPHZ'FK 1T$]LZ+HJ%_\]HO'CQ=D?FI^F[V]M[^.C5M\\G@A M2!+E_R1KE =U6W*RG&>4IYU( V\N7?>.22U\4B:(7GWM5FZ[I)]^\D1>CO"/ MTNI DM<+FX7#CZDX65 I/3*SZ9&Y=#*S&*80D(*DGI<&^,_][F"ML+[=NN@F M1ZY_<"2G=)DL$LTZKM+^AN.43Y";#TQ49UA^@$X/%RL&A$:8#):OI(.N7^ / MT&- @M=%-_I(>']YNWACZ)DM-D5)FR[U6%C6F<,[/*0_!2$I71=<$3(I/I9[ M:+-PA$ &HA=.KW!)N1SK88Q-J<8^NN6+MU(%XWO33Y]\^)IOY.WM"K:X9LE[1O58N$_ZN$\62] GX:D<>0?TCT\R IVO,]"!D*?P4\CW!%UW&L\Z!(!9' MS^&4 U8Z4Z^4+U_R^0E[:F=\=[B&07',;O3IHS#G=U.4>*0C;]^/,A*,RP[W MRCM_KP3X%BM&0FUFZH]2N_-;-Z_JN!N>A7 37A]2BK1&%/,1-Z(G!O M\>*Z1OM2$207(BIO^18HU$\0<7\ :8W:K8=Y4;WKJ;YU#0M.[#,$=SLAGO>+ MB>P?+0L*N7R;R#\N7EWPP=J/RY_TF$.1N-NAB,P&6Q,8W_@U]2Q<\)5?G7]N M86P_TO/[FV>O_FSG=I[QZ?_B.:\Z2V2(HMB")<'X-*<3>#O6ES#/5JGF04AH M2R/G3XX]"\6\BJHY916S9._@W%#GI:?WP*I.C-0Y\^Y.:A>]DE[Z5YZ$PW^C=ME[FW!8Z M'(?*,SJP:GK?^>+IXZ=/))5%Q^=Z[5/>=$)J/!5%PO*55SXDQY6"P8=-_[L_ M@)Y#M:8TMRU#C/6ZZ.A((E/[4JY,A_DKCT .VK%]F/_@'#Z#7,+CG:NARKDE-]&"CY+ O<*Z+NLJ'\__:^ MO;EM(]GW?WP*7-_:6\DM2B:IMW?C*D66LTH<6Y'L3;*G;J5 8$@B!@$&#TG, MI[_3W?/"@Q(IDQ( 8^N<74LB@9Z9GG[WKW5@OX )0J-CE(%+VL2/N3ZA15O& M#!L]]9$TCM@67V\++%3$9S"F0>D;#%'JL5[<'8;$ [J58X>_"X/'/1&^X6X\ MC557?[$<#WA+SBL5-@4D>)PXQ.F6_$',X8ZV7@@YX+MT+7[%5EZ?W0JV,)8_ MQL&L9=J89340'?74K_4,>.T?#@8._88C2W%MPG7N?#*RKG4Q5KH'H /\&YXGF * @2*(HECQDA,U8'$-4VJ/A1_ A M2$;8%/TP(NAX/?LT>-[$II?#:%0 :NE$-YV>4J-M/$ODGIPPS)17!G?Y+0P' M'/1W?N+/"R"2$MH_.S%GAP.2$SC;#N,7TYA!$#E,IXF@FCXH2![@5*@1ORIA M\< I+NTK6[$#3@W#1889A$T$VN^AYS5L4R7_94YG&?C8%%!]2\FU0O[4-#< M-E'>3@5%\8?3'@V*$4CG#^-WZ:;1^$IT1T) MS"X'+J.QWQ."N.0C"/9TR>^3>9>;*("!S&J(W&R&D6F8B8@)=,'']8A-=#RW MXJIT#@!"30P%F&0V\JX3*![CC$@*C)A2J'48WZ>2]R8[@I#+***?L-Q?X)'@ M.G,]Y"'+"1^82W8(D&10T!8L5*J4!#SYICA^%Q@8ON9.?0:.^@=([4%BF-)] M(CWN!ER'R2F&>:ZWO&)O&:<[E3@K[LFM?^WRWG1AD-;PD9#1/ MW)B@(+?P=AK1S#]U,_FMR8"*VW "_42)+@FP9 B>WWJXTG(_!,JB,6E<$C3" MU$%^U'5A0^B.BRW!M'"9W$03;+DT*P9'48H2F SC C!"',,1D@?R"Z+)L+@E M11) X^6%2(XHTM%L!J47*JM+N7[U.9Q@TZFQ1JR*J[$KF#5H70FCC_/,#\!. MV#+'O2,<(0S7K5,335D5F29ON0B XM!"DAQ-69=DN>>D#DC45&1$ ^&,>("*Q0&(!L%,#ICCAD,QIC"*R >E#W_$/208 -*BP! MU4)G G=Q!W37 A-BRG\;B$@Z/MM/S 2,@UD21E/$JUC:M,OUK\%RE^D5@\L= MF*UP@Y6'D"X:Y1)D9M9(Y'/D>G68B=N+\8Z8AF><4Q0O+&7: MNG;BQADGB*A@,!;/$7"4-RS ]$Y.2&%3=^AV\Y&;LZI<'!B,]?,LCN:,/_U3 M")<6*F5\^"N)P8Z3,$FPBC@=B"\!W&P65Y OI: M1F75F, -@331Z&&)$?2! &?,$ROFH$>P1',?YHQ_)!4Y:@KM@H@1Q:G<39G+ MD."$+P,JFODO^0KV#O?_.=0UP?ST]_\!?YH$T0AEK8@ (CPC%[._@DU#(6Y\ M(&20QT"I>#IFZ$M4JR!+7M.H/5;:"85-EO!_88 0*WBS.57Y48&4*<+= &I* M$E5.+I/_ZKEGT6SF(VQD/@EPII,$='KP&TQ 6R- O3"D)R#M!B W^8&8HA-K M9$731(3EROQ20K689_9,P,>R,,FP='V<@<;FO^;,3AWO\'2NB;%G#4O7+%F& M+C=6Z 1N"LS3)?N**SX_Q1@UZ +!P)+A(><.-R*1D62Y">XTAN%B%Q+FB2,KK>E@-('VC&\,5<([P>)OBC [ M6#*_,UKL8.G\B*M5JE<(L16$4VK42HU+K@'TN\R8R@"9("@&!@I98]CK "7S M";P&NBJNLU&"">'42%L!K_#7*LV>H#A%TTKL"G^9,&0L(%I4L.,VJB6Z,M.E M^$,4_P%<*ZD%B&")S!,_O#,!-<=?#)PO[-%\J:#D>GP5R$#:=V.+^U[X!@T)6 MS0(DH6 [+ ,:?W\QSF)U9ZRF.FU072;5+T<]0F4!Z,Q+P2J657-S]^A2BK( MT2K,X9!-(KY1 C.(:II]KCT %$#WE/F80!*"$I&)T1X@<31BG+_&P%H6AGKU M.7.NR-R4-"OLPSA+^/[QVR#+C$BG*ZSELII#D*5$=&L*#/>>4BW8B^+#(H N M?IL@]LGM"3^6G7)8VSNF9+3F M6>(HS ?GGB,P)_-OZRE&E@5FQ @(^))PE0Y%H+HNE+JA< )/[B(925,+U2Q4 M@Y4O&KRJX,\5$^F%2# 99.CIZ(HYG26%ZBX2(Y1CGSI0^;=KG:I70S"WZKK2 M$:*LLKG0_ESRBL1V<'XI"?TLG49Y8&S::"6%K/R)YLPOH(0_-$L*9L&I+,:O MHJ*X2V;+O=Y;C4IJ8F_T(!%+]ZV S,,7- T!T4&/-<'?\VN)6C1?[#8T,$>(6) M"":(=CBH]>+:DUL!;NR/J-)+MRL;T96=P/_,I$<7.+>YTGFN[RWCG6C[J[>! M6S('5Y&\)^-S9XBLPDV-2Q&$A!XT&0DY.[M4H1!X&81L4&P;#X"^\EC[Z9;# M'94@@$0S68FH=LAA"8RLNO18C2=)"J[\R31-\H1<7A4( 5^38DS8#_QGY,/S M+6'Q,---+AI,9F2=_]Z@0)D]HO"?3'KQ+!VC5>'9W$3 ,:%5@C6CS"EI":_S M[GQ('G(5W!1FR;*M)(L3.,8J1OTP3."$&3B/ S-04&" 4WY5XY M5-01 MG0)C8C1_)"+MP"8$B01MG(N*6270_>7O\SUPZ!$'IU<**6Z W M2OL.!1L.]60OJ-JG@;R.,>@HYCD6.DT?\RG)WPHFIS0*.H,JX _<^ MHD[_Q+^3Y7@:T #E#7S#@L 5=W6F?@!M[G,FW&6LUY0;1)<:]D<!84R&!E)&E=0 M&^5M?_#.S.%[HXPOWW#Z\P6\"5GX4.^[=B;7B:-,,/!M% ] M8?E=EV_=$!3;&;5@<^R@[%/&BX1<4/7KLC+!6HI!:M>E%^& S MK8 ]VA!1X1\I_M%2ZA<"F5D*1RA>)H,RV(>=$E %OZ+8+IS;6S-N)OTOA&1> T8=8\XMJJK$#3, 9 C7Y=4)]\KA'59YIII/25T09W)+T*6 M(U^5H,0ZV1OT+;"?=$08*.L9BQ818I'W@R!/CP0&T-W+JQS^>J4JEL!L9;0V M!,=2 7PJ&HKFTN@T(Y-DST9!)O M^Y,"FW# Q(/*"Y;C"J%T+=%>0?A!^4$\AHV5ZQ^U)88+==]^ 7-8E; 82]8\6_[R&VTMY<&SN&\P!CX, MY:0'Y"C!FSTR@SU4%E",+15'13U4SRK(_EZ^.JHG *^$#>IR"RE,"T;=MR)L M7E!%I0O4,RBDLH HMI:4E/4J"\;,K-U"IV:KUE5R,:*X4/<%D(PZ<*]+Z-#E M!ERS7#JDTCG65:,]D*72UU#>,C2N%2M)C1LN@%\RN:\&HET,YK ?HCP193ZH M#)8)A1*<098*NG1VH"([8Y'6[D1(4U?%K47"@5'MD+% [X.+Y8BGT5)(9XG0[3J4MI1%NKZN=ZTI/2"CQO6EBB M"D!$.U0(Q8QRH.U'4!A+=D)O .AR M8(2Y9&]0-Z!F:;IC(7Q8P1X(ORSEXA M!D2>OI8U$/*4$!UH9VL9:"0@864^=K=8LG<97%,*RXC$..(6 ALDK#^&E8^9)NU[_Q [1G8O[R$//L4F?K.PO/\$!= MJF*LK@FD2:OZP*6A9N(B[M47W $$C95E)J)S0'T5\TR7L1(CY)09B)\9\,$.EX"BRD!,*E:_444(@2L+U-%:#Z4E]^X0W:XD2PP\ M/8B!4G$=[=,D8=SD.Z.XIJ8+3V-9 !B*^DT,U%1<=J2(6P13?\2] M7EE!@[5E$)$&I0[MJ-CIJ8S0''I6#D%1[Y]1D0[6O[&7TF*1=>>J?-?8E(?E MCT(P,Y*PTN"6ZTEH6!!HA@W2 7= MW!I2XX9T#D3?"UT\Z.4=-4-=0*<.8%)[;!(SAAO2,Z-3.21Q,-+@LI:U"2@A M.$+&[6#<2:RQB\)Q@.C:Z-AB4H *UB3TB@Q*MDV&UD S""C(=8JJ#OMM+ZHZ M[(JJNJ*J3<]&$?77@7+#C1X8X4NJT9*RATVHNAE%E<"8D")1A2!UUX;LY11M M-D;N7"6OWF+:"NP0;5_TLJ&XY4FJ)/E0&AUV]0)8KA4[XS%H4IY-HH M_X 3"RKJH+%OQ$^P5@ASK-CM@\I:%\84Z_6IUHS?-5$;L!"X%[F>KAXWE#PV M![@GC+&J-F+(2(R,GS&",)$C241="R,4*V-*2!8ZMWRG.YW4B%5=C"W#T95H MLE#.I]#XH<\8+I*TZDK&2Q (V'C#)\;XE%\&QLLD_)TPF+&*2+K#R/CH)"O' M&*O5)]P&+PZ0S?O\):>9+B^YYK*<9M=^YW]F8-;V,!26B[=;8JJ*[M8Q[I6\ MR'CSA7=#/9-Q53Q0HE!!K0:%SL.E>305,K?N#9G;7.Q[E? M3<;0'I$/G?J4O<(YFSTS"Z4O@LH-+P5'KF L:S7&ZN).S5G5%0/[WX)(>;[2 M&',PP"0@\5+*__L$:68B=2(D)6=(T.54KXQ5$8%,T.:1)\S*"0-U G#!T?%- M%T9%9CZ20T$91^#P,4';+ET&QIF90@@-,+PASH0[3K?P] MHY+3HGH4/:I$PU0T2%(:^Y,)UHI#W@:FA*$H MD,<)<2#9"2SC*3IND>.)LRF7!+A6RFSI-D;QCLHWC,2$*[ORZ4IS!C+#+8(R MCNQTH,/BUN&N;'6@VN7;TCPQLUXQ$K9F6>GJ^E;,/5+XT?XKBU*',X*7D0$A M]AC^<<=T>$M9]F92@6 +1-8.@4ACF7LH%M#DP.U[%8L4:Z1J=3^!4DI1H!!!=!$P> M 05=F0J1J2LB,7Z,H"DG@'R90GF %17;.#O[IGWJ)]>5:WCP9O4%=64<)%V*A<*4P1Z#1+L:5;Y'$PAV#^ MSNQ'%#PA]1S9&S-_(J;QJ7J3!X5WYQ0T:E70.HHR3=8C4R[19!-5EP.=@;E< MI^[K5_/EM,7E0V4H7QL.T-5.*@8I,P)O$DDVR[ 1\GTX5&]%UIU/J,'<(..6 M/20Z *S 1N "B6+U,\1GRNE8@7(W]B>R3\&T5"PJY2+VIH\&B L2LX0P73!E M*2Z78Y3#2AP8@I-(;R%+7GGY+C[J311]F['*UUI!1*'L/Z.1),Z/[6E$F,&T M,075I$IG58L-%G:+BYZO%M!D<.N\F#*.F27!K!%C6O9V407]611.8AQ'BTEM M.X2:.07<:'88$U*%Y^&G70D-!/:K1&9;OF=6Y9[)0IV*W:%5G (Y(T*[H3*# M%(6R$F-:T'W)D94_VFBF7VZ+(OC% !16T*/L1IWK#\%WC3S(5(-(,8S^> M"4M&OH#I_?)\FOQ [HO\J6>)\*<$P%7%G_A(M1II]G&/#00*EQIP?#=,>4/8 M'0C%VU!QP,<4#R5S$\,"QCMX$_D>QJDE M* M=OKE1$2-H*L)8P2HGEF/(,$D+%LA$JI>UHAM>7OF*R>]&X:=89ZZT7 UQ MIUI1,2).- *!I0N4BBX6G%J?,IUZD#7]] [+]"IPV$J>&;U8X=[1I\M0L>EPB P* @9A.12.L&M(L0VO"O/6HD4);UUBA M+UJ#9$&D$A45BZ>7 EJ#,1X[P7%,MUR)8G^7,3>[V'(D5L@2$_2-JRAG(3H" MU! 4G-N=4AV>W@^A4=_@-W ^58&[\TD%\62Q"D='W/-71%\):!%E+)5%=)Z" M3>!=&/D"JP3\("8(8 =G0;$^N*H9P M<' L+08>B(-J=$TH4BI/%7U#<@.RL+@K^2M@JRMP;Z?I,N58J027ZTP:D@<0 ME9VBK OLW.&@[1621UV%9%%0,'240/K;EQ7_$+LY/Y>6!*IKD<8._+^@ M/5G&>$$J"]D_EO62(??E"A5I79AD=#L CVD.6^#W81Q"H M0"IDNPS>VK7/)+ =&!V)+'^C[@/5F@ X@+> EHXH\Q@YAD""P7Y83U?Q,E&2 M!]&X18E%?9JM\ ";YD8QB&&KJJD7[ 0S1HPHS/09>+K9A'(QQA5 M'2A9\&9 M8 *5;S1CV#2?4GE8NS\^I$?-P#-1@N,@)8Y]%P! F MRA$>>^XZCR6P'Q%,'4MQJO'VQ%]4!9D+Q100-+&P/()*2,!# 11&C":Y+@N( M72@J[0:./T-#4=0,,!A_)WTS.96BZETY'&?M7(@9>!C "1-:R%AT(GO.S$$8 M^(OQ?8O&H#^Y #DAB'7'P'DP4E!"ZQA?)7M:6I?!PEJU-JZ+O;1F56INWVDA M&'IAQI O10RYTW--697J,*^((L\Q89B"-THB%K2."/G+IL1R^D "PE?_-2;< M6O-M'E<),/>-X(,I8P^0.[*'!4,R,<<;SHB":"%PD MT:?9X_PI.Y4TV#ZVF::^P+S0O<\5.2XYE"YA%H;+,* $B">Z3ZJ7;Y(RP39D M T<.B4-A@&$KLQ[=A);1R ^5'@Z!BR40<0\*R,>R2ACQ5[BYPZF1Z"'06Q$J MGI?% QIT"4=K3^1$>VTP4'%C N-QN64S=U)L,W:C^8*L%E4V#,@BA!A8N('W MW6 YE@2.G?LEIS/2*MO%Z.V\P%,;D.%J$37-, M;1;9RKN'$21RMM&2R/?2V4M[Z?AU\,2L.)6%Q- I#B;*LS!P&LSF!&O8Q"N2 M^D?&@V'X&+_4@--@SB.9.(!Q75* />Z=) CF/A<)!O2-] Z,Q51K>?\XU9_# MZ'8'9O2IXLUEM-U;\2BRMO!W4:L-P]&-O4+Y2;!!X%VHU^HN 4$2^2;TR1&# MZDLA;?&$J,SS$GL(N+"K,@%D0Z9\>&7,B5*]]RA(E;I\A/R4[.@!(_%RL]8 M(N"!^:(GLN# \?QR,D"WK$"&P*=*/+GBVTQ*4-^!2ERH=(@\',6+^N'\2>"R MH\8*'Q;K;9-.[92YN1)QRE\MOS94"*Z;C\F=UQ,=4>[>N4&&+=-")8O,X3+K MB2THZ20$B(;HAD!*(F,;OJ0"[ABF_@ST-QD1*I5#AKHC6H3@>HB73.O!,7\T MY! \!J@SH?=*NT;4GV'0!MW4T0+C57H_1!!+DRMFS^F:%\0]Z56MHB=5!K=8 MJD): M@?D,@]8[RQ(KYBA!L$ZAY_:PDQ2=?]Q?DFRCXMKQ[&/;63\@U;N,SD 8L<5D_&" MP&"G:E;2# 0M45F>4]&JSG7.]P1BM?ERA#Z@&@R'V]F3C+KG 6$51B\8F7BO M$V^-6-5%#OS!0B>H@GEV9(\7.B\0IK^XQN/&E,Y] @5;5:8^#" 0];R(W 7) M3Z.D%D N$JML?=TR.85$&2_*U0&;:LQ$"$0P/PUJ@%_ 7&+#]2L9)!#/K7;^ M+,-6D1!B)CCNDBTR[I\(>>?Z_+"XT0 H<(1UGBL?#A>&7Y<;";KP=ZZF9]'H#VXIF;?(>>NS'>$]ZGSUNEY92@D:%G M.0.4F $+[N3PKUAR1 '"*#_N5F#^4NLS[0-J :OT27IX'G( XH@$"2T^E)_T MBC+53S/"'>8W:L?Q;AP$X(/B-S<-V\!W@0%-P[;Z(,6\5L-YMI:C'^?G!>N&=U32S%Y$F=+2LA"0R!":K8H M3'+.N-?DRJ9[!Z;YH')G,>5Q ;,S"#HU4YL*N&';*^".NPJXK@)N8Q?]3:8F MF6L@.Q)T2<^0HY/,X;Y.RLK.CF'&8T.JSH6IMAX(/6J<6VK+K[1Y#,,MAG:$ M5,\CS(>$WP,?!Z.21)I^BK3#'H"(F(D^-*RPY%VX/VE^!V M2XV-C^W4U(P==UD87:1FR*\4SAE>(>6A@F>ZD_=,I=4>R4 3AOPUI\O?DF]D M4=2'GGU/'^5CYP]U=3@M6=4#=3B%-BJ5 2/00@\&HX1'= MT*)L1N8O=9+26IYUDA;#."_S3<%-52Z)4>8"&8- MT ,B9$GO6+PF?W]-^&"-1;#62CKQWHA5<<&>+N8B;P"5%[.0OT'UZ4/K[CR+ MW:DCJ5ASA!D*!J2ST*%+N5JKO%JJ),24.\[;BKA>57C/D'&? M,"]8& +/:):-#>Y0CI0,7R6V'#]2;="3LU+YK-)KF1S+)%P^68 "U43*/U'O M+03';!T4&C0G;MVK M[@Q44R@893<.89(:7*&N"_$1U#E H96J),,1/ *_1189J/AND4^A)V>>ZB#N MKGW*777S>@N _7MDK1F: *%C]O[;Q52H;BJ7X#$3JJA)!/9 I:"7\D\F,TA" MQT9U+3@"1I#>$@O&VT7V-Y9P@%BB.:X5\Z6*MHJLNHG!!P=K'MP+D!-JK9*P MHH]MZ>'/)!"+QJ$L!D:)9!+>W?)&K.I2G/.,QM97,:L$1A)Q.E7 :*3T<@TD MHA)3P"-4J0)2$-J'L+3=C2 159JS\L[NYCN2=,#+,.F3PHB0LILMDL28&$SO M3P<*%#1SM.AI/E1:W#_CK@-F'R.@%"R!CJ5+9*&9)*)*/=N91;!I^$FH4IN@ ML6&:;6"@F(44PEA1#0U8>V)LGNFN81!V%,O.G= !G)W8+-".HX434(&*RNH5 M*KK-DEX"KPA0)A?%,+?.QB*9)E)X(IMNK,8BXXDXL"=>J;*ZHC27\I,:RU9N MM < 'DIBZ<;*^]L9+K6-&Q1K!42/@\ROFM'N*B@SL)H)KPRW2^ -4B6A]@QB M,Y2=<+,759%8EXGL:U5;=1D_YP 3T?0;/5HCE]MVR[MK."VFY2:YLN+"6\8< M-O@,8N]2:5#UKNKVUYPK39A^?)V.9OPH1K:!9IR 7T0G);"R4)11, E(;"@; M'9X2R6'9F;KRU(:5(ECM%._M7)7&=Y"WB@MXB7VJ;A?(J( YY-')TGUS"+S$ M M0,9""[8SVQ]D6["&>C5@6(#@*HC9N]\P@S6XHSE$U=2BE1]682[8@1&F(X M@<%?<@2#])@E$"]P&U9"2:VFPQBJIMH(Q>?G&2G*#$V@+*9=^],#7 YE1UP] M3)!G8XP))9;HZV$J\KB#&M)PF]1#L'#*?#HM#JJR)PRPY$#:>E&NB2K)YE#O MUH.1#9 %]64;EQ&%ZEF&\Z$[_G0IJXD/7V5ZBB#(7YDC*](H6^>Q"FPQ 6AL M@FE94DWFMDMZFMSL\&DJA^RQ$C@6W,CS"_$\\"?%W%1P*:,0$"+P$_>(((OL M9*KOHR&K!:0,H%L4'=':C&%@Y0,1LDD!F@J73TT8HSGPPO"&9V!IE0%TQTD7 MQPB:'&:NY@C V:Z5KT7V)8./475_S.U]T7!!&5L;NR.$IY^;Z]6SS!IK $*% MH*7,62?&:XQJ36YXQ!)TD//8PDR6B8DEW*/G?.?ZI:AT);!1:LJL""48M2L-5$G1=% M"ZFWR6BMEHP^"^,M-)1F M1XRW ?'&$*4 > M(P/*U@TLDSVK7?4&.8U/%FR[?Y$AF2 M MBX"A/&0'BGB;#HM,H);895D * W6U^B)2T2V50E'K2=5BFV/CBJ$87'VU,F=4T3XO6B3#4U=E88Y?SSA)VE;B0C] S!+&2CX)5 M*N5+LQUE*W3!L;=UEBG'QE#P4A6$DOY>906@]8C!4UT%8,-7I=#2KO040FAP MNJ8Q$%SJ=G&CIJQ*1Q9'"ZR:EN$.56%]AM"=_)["3&)73)7'H7@X$X;_ #? M*)^^B6(E!\M?\R).F1I:9SK,H( Q(&'1,PDME$M@]60A1N5(&FQ@A/F?]$DI M9=_(7QM$?6LG4U15LCL@XV8 5]=B:J@"ON>&"<8!$]U^$CR"OR:; M%8?,!@ARBO@$&8Q8D!.@LD1AQ25IY'Z6E07?R#27H]Q0)_9QY@K%XN0:$W6; MY)3T7 6WOFSVJ9O*#3J_(\6"O\.B(ZKT!V^;IJ)@+?JW>:&.61RK2&I%V$"F M0O,E\#2V4>^.V@LQ3T;:)%2UA#@'$90\8*&% >71A9P;M:I.:*PG-*@W28[2 M_H9_A,U3A7(K)GF,L(0WB5/L"B=IBX8B%@([%[QN@YL)UI)!WH< 0WIQK M@]$8P?#T;R0P<-6CU %@$6*HGD=C-K@%>,^#!>;,H,\MRX4Y1QP_(Q>%MM^W MQGR_&[[5NCU&;V7Q30)6VJ*Q5'R7#=%J4"&F5I4W-<=:2[%_T7^#/_@BM_%H3<^EXZA0?W_T%OVM@V\!6GL7P- ME*I 5;+<%?[%U5_WXK7UK]0K4-S?'1[X8>5>K_/D?[U,O=?;>_H&S_SD\.A$ M'WJ>ZMJ0"8- [57_PP4[S ?$2B=7UH1@WN;C_X'W&A83I"3!#%PD;BFI] +\D&&/M>QAT0L!4S M2)G?HEE6 *&\C:-PXD%3^.H$P$.,H0)+O!>R.33\'B97I<=CNE.=V.G$3B=V M&B-V*"8#%:U))EHYR3"ZJ1HT0&!JTY\=.*C$Q]U%Q_D :)1U)"8Y_*=,>R=TJ&V RH M+PC,8("+)VM_4C&[ +D0 M&Q#-%&*/,PF":MPRE78"Y+;8EPWIF&QC@<8'1Z@Z%&^IXOJ>F?ZS\ND_U7_P M*?2!%,PA)I3V6RF;!TR^5 )7>(]6.6DOAE$ZAE,) VU"1/.5GN!;<5'>XILO MY2=W95L.%'Y1+LZFIE:XHDM*K$?4D!2BL&:/&DPDX-^$PD:0 M-H );K2HJR(=_6!+/5A#?^@:%?M4U5Z"MR9'&TN<;.VPB4J(I9L)%EH6*@CR M@&!K'$NDSL746MB;AYX3FBJ=:H7]T.RKBO,OLJE+RW%S\-9866H9:-9B6$%A M(BJV9"OD G%,MIITD^^#RE49<2'IT_ 2!;FM0 7:=I%J)1[6ZH[9;WEWS&&_ MZX[INF,V7#\+T%'S6!A#-.=I-@.0(+2?L+N$FH85N,P-@BD&K*MY;-2JUCSH M<9!!QQ%7D%Z&ZMRQ;V J/05QQW+JE_)YNT*S>R*NCUQY>=W_M(W@[E!=O_+[=8C Z!'MRB$ZV=')CN<@TVB[3E:_Q&X$73_A M0^-(NFO=7>ON6C\'F92-7>-& \0[C/M&K/PL<+A6SLW>1'-A'#LS1F/-"2;. M0(E >Z&[\-V%[R[\Z\PB:+C)KACTN6\HKT3^Z2]Y=\NZ2U]_1 M%QEB*E"&)O&,ADQ\9K(2)61!=YF[R]Q=YN>I)-:!N#64-@U7*8?0L+P+RL82 M7]1T^"$ -%"H#N)X,$&&30"(. A\Q,[O+G]W^;O+_RR7G^:FK7SK 2Z!<3?< MOV$ _Y61PL M!%)<"*%VZ9H3)E0DH-BQMI-@8]>)YDN0=/%"/_3X%L:+3HIT4J23(K7W].7< M=0!UTXTK3N@$"Z@,ET#2"1:%,R>&7I81#+S.**F?3*,X'7.O0 D (5S6D&)F M@) $BL"P#B#!B #+S'62%/R7"B([2=-)FD[2/$\88BTOSG]1=74A@LEJOB/,\926SQN=0H$/#Y&-3JAT0F-3F@\B]"@:0+K M" Y=9D2R0<\[[ !-NJO<7>5&>!IBY(Z=2'1PZN]7YCSGJ<\L[6!*&MC?0"WE M=( 85))!(-G^)"94JB''W+_+7 )@$-]:K>&J)T9K(G"$^+#P';DAR/_!7<49 MI*>Z9N-&K(HZ*T\3&&GZ8Q8R6N5>OV$&LD%R[OXDO #WU5FYXAYQ4R>Y[3)1#*7#D%%4:_ 7) MEC"%)EZ/ 2(.#.5%N \Q=DHL0XQVY<]D *-@T2Q0&!CN 9CUCQF_*(>T$[OV M1QP1&\*#)1[DV)AE*9!5Q'0TJM 0N K&'!.Y-MI7B. 8O?L683XLL*Q+MWCY MX3B@[FF<<96E?,=5*0BG)4P<5R6-):R/(V9?(@ M#C"W$I ?KB,GFCXH,SC=7ASQ2\$9%^'SPC3HIETW:U5<*L@;T\LQ0\\6U<-I M-&&0M.B)Z0[ZL VN15;G2D<,?1##-40H / 8^"KQ+C;_"(NOPS2'L@BIQ78D<"7 /4PSDG M2'X1+H,OYW-62%_!\F3X*:P0*LHAUE]JW8"\SE(4UN;&>5SP (P$!7H8T 1N! <$M!NA! M,1ZJ&%KJ$:8E<&,*6']%]]=QISBC'%P1[KJ&\)P%U3G)"FD+31B/S>&] !4Z M!S1=ZJAZ4)AW3FFC5L4Y3L*B+V P^A]8&%=QPURWC!@=SL*V>?-*JH=R8/$OY M"A&^E?]OY9M++Y4S'B'<#TB;_"9(5Q/P'2.'0G/*)]ZU+Q";'.P0NI3L;DYS MY\D/8/1D_AR<-,O_J4BGP>5, 5X*\$BC0LC"6^NXW+D&UQPNK8^O@S/)OZB: M/%O<5S< 'R*_8G%=0"V+S>2X5IZDQB)G!14 _C8$P ^33[-2".YWL^0(LE5NDD\2$7^>\D,9"F'+,5OS/ , M<837@I\NE7--J/B4Q3> LOH1,&!@JU'LHD<'9QCXG\%@YU_@!\9P[E^8E^36 MHG3!]/#5XLG9\H>FXM(N@AN"]Z$R(S+F/"(@ZDP*3$3Y(YX HQ1@'K MAW9.$8C\@)N#8$ WZ*IQ-G=R*A+$ RZB-%0;Y:X,0GA$I$5O[_R81JR*C#8Y M3 N&*NO^\?LF7Y%H0Q$& 4E@&/B\@_Z]GGE@I!_"U-^!4"H&?\W/(,O2*'3@ M.36_8)SG-1"J_.OJ-2)8(##0"04Z<&CN@8:>5F^$2/-LGHI(52E$"A8GEV6Q MI>"P.RNP4:N"80;UF<* 9S#V'69Q&:&Y""A)R( M)>/WO6( /S2;.26@/]@"B8_<)I,=%::1();4,F@]""61'1,[>+>D)V/=FZA' ME9&;#B!6B,F(&=PM;K2IQ:#Z7N4&&K?BI?;&M&[LC5D,,@A%ANE1B4%5H\ )/Z\A M J?,_2R'6)6>[E"8/C\ 540!U% >%3ZC/F4BMK<.3IE< KT?DDYDYMY$:+01 MVF@/!3+T-9KI9UG7DY?&HS7.(4M$I,I&A9M\^8DA@I8$MJ98 M?L\W6>2,//ZZ*?PE9C-9Q+R&FRL?+FTD$8A,\FXGYBM'#,.3<*_ELFG1T/XE MDME(]%K8$9UKVLG+3EXV1UX:%0J4^M#B"9)CF*0>,9)& &H%DF.)0(6L 78% M=5>_N_K=U:]Y0'P>1U-_)'"EPWR@A=J@N"4#\]]3%LI)X]*JP#D22<5W5G\] M#4VF!BOH'PDE&AZD'N<,2^4 5T8@U.3,EV+>WZ@=6,M6*8;B<5FJ'D#YA+FY MVS@8)TJ(4)D6E7.==1IR]7V8,M/4Z\RG3H9V,K3!YI/SH/02A:F3W?*_QH(*;ND@,XT MWH1,_LI%P=.N:JW&R\.V-UX.V]QX^2RW9".-EYUV[+1CXQP.J1(=;KMSLQ_M M^)N(:I<50LT8PBL! \#N?$4AX1RLA]D[CVZACVE,;5+T#/[_80X$3)D7.#U@'L'A#P1R3(1>QKK;<7W,RD,DI& M?EFA$GZ)G02] *M3 %ZL'V($L>CWR8Z'F*$[)YHG$+T&STN,G(\ CA"^A)7\ MH9V%H)I=?ZUL:[')Y^LV[#HMUFFQ1FBQE0IB45A0[41.RH+HX?HGNEWRW;62 M$!2_UQA:LK<0$"NH=J(@FPR1@]"J)1&X5@JB("N+2[Y72I:%7P>_W0G 3@ ^ M'Y(^8!VO?OU#;@N[N1@7MB&1D,NG#/BZ$.Z1@!AD+Z7M@L7M\7^AH/C"@BT1 M?:=@/-, G9BH=1#&@P 7TGQ&5*%6"$MTC7: C5C-5<;PX]/ C[&:42,9G>=1 MO,XXA10$./>L .C11PTD] &N780["0I4B'Z5.N%G=>DH23;9:1=(BHU]#U2?!(_?+L "=+HV6[;/K>3>RY"2]K2/0)9E_@B MMA%EZ0'F%/PNR49_HMB*S%9ZS@7J6_Q_S-3NM-G[[)QE0>,A7@ M3ROC?O.'6U)LDMBEP0 $L MX7UD(GO18XI(5BBX4:!<\?.9G,QDU]N,B6%2. MYU6-G846CD/TZIY0PM(A7#$)I@4K!90I81P XJ,D:SDT2=L8YH%K@/_EV+[W MW0OGC_Y@']PPYW6SE_ROT>L+;A72RH>[]+^?PIA-_ 3Q\ZQK.5_BG-NFG%NO MS;FAGOV)9AY?@B?$/.")#GMI1?O61_A)\-K1::_#2@E8[#VW&CL@K4:MB@[N M4H#ZX1B@TGWM3K3IUU-[N-W%;=+Q%2[N8>LN[KZXN#_[(>-F\IAQ;?O&3V#P'*0$NAO;W=AF'5_A MQAZU[L8>B!O[ 6+AUD6(0TXA\M/=U>ZNMO[XOF!5:S4"'+6]$6"OS8T SW)+ M-M((4%!?QRU27];AKGU^A\FQ+L3:;&7U<NX]A(6C$QJD;@<4+>5H\_\1/[EXS_Q.)@85\Q2#@!7,1; M;O18@_[.+YW*W/RJ2/EL6 *<__;OB^\O/EH7[]^<__85WOZU2D-77WFNB%18 M&VX4!,X\X93)?V$9Y]**4-JEM8I"42T;I9M3/V4[L!#^TC"ZC9WYP[;/.K54 MRT@6RS_Y1_YX S9.-\V_),IHY:/XY6OK?09PZ3E63KW5MF9C"Q_\8]M7M\#6 MJZ[P"0__8'_KF\#/_PU+W-B?EQSM[LB?X<@'PZL1 M&->"IUNQ(+R10F>W8D$5UL:\DS%M5C]ON'2AO7@+3G-1M6!'@VG6K[Z\$=^: M21QEH0>^0A2_LN/)Z)MA?[\WW#ON#0\.OBV;^(_?/&PXV[+S->CO#N[CF'I3 M_S#';X5^QY[&;/S=BVF:SE^]?'E[>[N;,'=W$MV\/(W=J7_#DI?,FSCQ2\]) MG9>#H_V]H^'!RWZ_/Q@.]D[Z_>&@/SP\W!N^9,Y@?]#?&[*[07]G\,7AWO_+0=VJ7H[;;_ M>>1?M_^KD/^S0WWW@Z.>/>1R<4.*NH%J>-BIX>>B?S,*_:C?/R&%/N@?+E7H M]ZEAY]X02+WWL.%RJ%/#G1K^BO=_2VJXE?[R7B>DFZVHC_N#?5+4>R=[G:)N MEJ3J%'6GJ+_B_9>*>MC_VOWE_4X$/S)L/1[T_^H?#@>H^O:5ZB.U=Q:%218@ ME$5!X77;_+17'9-72/&4Q0S :3K!^WRGL4WRNQ-X'/F=9VILS]Z@L\PVHQ7W M!EM.Q9XI&"ICSO09#O8Z5X.]/M!@+WN>Q4D&CF@:V1)&;:\_E%^[=N*1$[)D MY\-=P!;VJ6M [FU<:[>1$SK%73/-U^GN&BRAYNJ[@[@[[#3TIC1TS3WL3D-W&KHU)])IZ)HN MH>8:NGU>]J _V+UX?]TQZ3.>P6_?7[U#BB]"&*KE,OM-Y&8XM7X'%:XO?^_) MWWL1?T,8I;8SGS,GEGAV%W![8"HO=[??.*EC0^35'C'7R1+^F#2QX5UVZDQH M !&;C9CG,0^':?HTT9V>$_@AHP_+=^YV/-)%T!MP&IUNK^D2:J[;FZBYK\_^ MW;%@'33W1^G[SHFK:E^/7,"-PLHGOW.#S^/G(1UVK;3MDTZC4[;UG0)-=>V3=2E;\[? M=BQ84UWZAHW]T.]4::=*&WL:G2JMZ1)JKDI;Z;CVWIU^WS%I397M.V?$@D[/ M=GJVD:?1Z=F:+J'F>K:!6G3W\NJ\8\&::M'+F"6;.+IZYTA2H=-_F?[,VQU6_N\M)=?NGD;DV(?IVSUK77- M!O#$'LN&8<-82^A2 _ .&G30WX]F0QIAMY@'R.0>-(4[KAO-^#(6J[\_G?J) M_4OFQ%R4!S# >1[%J1V%.(F<7CSH[_R"+[[U@P"[VT;JI?_G?Q\/A_U_CL&< MP7\/8$/BU=\_S^)YE/#]C<:VZ&D7;SU6?>W,S6(_]?F'] 2-X4_#T[V]GM@ M]#HS%GK,V[6O,W?ZZ-VO6"#?U1%T^NE9W3#!/5:SV_T0]CU>N:Z>'<7K[D5O=2+8G=U^/U:9YEJ7EU=/*VI5;0*GM0TN==V6N;[")9VN)\S>.37<-6H-.1ZEZU_%#/G\\Z(<2G& M'SS'_3.I/:R@%O:IK'[%*@S3L?KE)KT/V&9/PD^/4\T/7 G\+\?VO>]>.'_T M!R'_Z\=/5^75NLOKSRH,:2SDDV.?:";[0WT6CMPXK MO13(.I90@3$7&WZ, U^2E_1Y963/85614)7P[_ S>V M )@Q*9.,+:X%H4'H1DA/I""L9>!H8'/<[)T&L6<>F_W*^.XM1S-U5>>ANYL3Y%7IH-J=O&#?0^#>9^*"C2YDOR7K MV#M\\H74GUFWN1]ON"?Z"ND]S29<.=D'Y<& #5K.]XM7]U'^D NVCKO\Y&M[ MF;S$];QC4>C$GOW.OTGQX@=,QH62D5GJY2Y''R3_L_3I#!1JQ3[E%5 MVK!VM4=I4^XI_ZC8J!!:&8+5*O8>4QYRL')YR(HE&I9EUCC(7?#\9!XX"UA/ MR#BI_MVK*7/X)KZV;0M_\CV/A?(G_JFWV-<1A=BOP;?L"B;1N @3<5GBO;#O$O\5UZ+?O4CC#!;Z,K\:OL '5GA87N&@72L\*J]P6%SA M]92_._F0I3!1 +*1!A4)_FTE0M:G9*]$21JYGZ=1 .4'YW]E?KI8?T/NIV(P M+).Q7R2#'Q2=\;LH239^)(.],@D'3TS"?IF$PR+N'3TQ"16\<%S)DA=) MDC'O3<95^N22*X#(0Q6'%^=[)V$>R )2 MU^>^04GT/S^9%1PZ4/)[XBW"932>1>$-U'!%X8?QKTX,16&)'UX+:?X(\?X( M0O>J"86I-:7MK*+W223O8+]V5%8(Y\%![:BLNNB'M:.RZIX?U8[*"MMH<%P[ M*JON^*I:B"0/_O'#'!M>SN]8[/I'GJ UFWJ]N%ZJNBI**VX M\L.R-U$'2BNN_;#:VWAN2JOX-*^2Y*W_,*9+=!'RZQY2N]JO?CK]#TM2YIW> M.K'W92K^,:0>/)K4C7MV5??HL#[D55V>H_J05W5CCNM#7A7OE73/LE ->(^/ M#]<\!:/NK1Q8J]E:*FS5O95#:#5;2\4-W2NIMX:LY;AB+64%N(G WR,(*07< M-A'W>VA+AE6LNO&XVT-$5/'8QB-O#Q%1(>OW-AY[>XB(*L8H1=^V34053SQ' M8&U]KMFO7U!M6.'&[M?OKN3%/0F8%;^[7+J16R9JU"ZE57"_!\U245O'G>GKHJ2BMX-L;5JOCT8% ;C[:* M.0^&]2&O@B,/]NI#7A4;/CYLMG'RJGBOY<PY6L9-22R]*0M51X/@#]!6$<(\'-:$MJK:IKV:T%8A2P_W:T);U;[E M?202!,S[W@E LW[/)GX8B];MI M8[7R7I>TP?.15\6!)3WQ?.15L5])@SP?>14>XO%:NN4]N\6_;#[RNE_A)1VO MI5"V1]M!Q9T]7DN+;''?JFA;5750\,@4>?3OU!\%3,-R;CYS7DGUHS7)0T1O M33(>/UJU/ W)%=+RN*1KZD5RA00]7BL!\^0D'U0Q1CD3L_URE$I"GB70=% 1 M"CAYED#3044@\:2D5K;LTQU4Q-U.2OICVT14*-B3DJ+8,A&'%2QZLO$6Q<_1$/D(WEPK6;YM![:*+0?] MM;R(+R?Q$3PYZ*_E36R?Q@J&'/37\BJV3V-55U1_*YWM#ZN.JFZW_I:J;1\! MK= O:9"WCA_C.6F'_XM*EQY%54EA7#H+&7IP<1;#]UGBARQ)6((9T#,GF8J_ M;"/G47DS2^KB,HYL)4W_6^:D6!#QFL%9& F5(@K'-1YH@XRA*PRAE2(E_]T?_ M#_D;_H19\"IP8"X))^_3]8O75VS.+P..E8$I+[?,GTQQ;C/?*, 58J(:SY[' MOLOX"UX:;T N5V$XB)\=$]K4[95X6,)A3X_DW M/M\HSUX EA%\+)MA%2#,[+.=(+!' .VTD[A<-;'$3F#C[ @_L@,4\;W;V3&X MN[CVP8IK+ZT[9C/'ASPVGB]L<.8$=LKB65UWX($ 415C[E?<;KPR^0[W#XU[[FDXB=8(H;>ZS'_U2E,3@1Q]C9P)B]>CYT@8?)YXMOF MT3_\0*KK2M_ZB>L$OS,G/@\]P*U]\7IG9S#>CB)M+?\ M=\F+U[\,RU2O_N#S,.7VZ!F#>QAW?[C7W[U#N8M_3A=S M3E#BS^8!'FO^&73.QCOD2Y,HB_G/('["A'-9FLY?O7QY>WN[>S>*@]THGKP< M]OM[+_T00IPN/!K^X+\2&X*\R3=$2#G;%G]FN"NO\5?JER!+8( HBVVDC.5> MR*71[B2Z>7EV\5-^^XI??BU?];+P+N/]X/>A+F;RQ/=AOQAX4QMO?.L.F[EU MZRNOS6_=T;-LG=X2-@&3SEBT^)/'";F#4F0__9G-1OR]GC^#9H(H-/U!OG=[YW"K442O3HJ;'$6VEMZAEORS05SM)>_P5')P1\WGHU!IS M;B=?P;DM*9Y[X P;RT_[&>@'+3_TY[2I:GG@ART_\'J98K5D@:,G9X%V[-MQRZ].#<)UA5/;A+]RTO)3 M>_Y8W>8/;=CV4,]SVZ+;/;VVAWMJ$JC;PLFU/;A3+^MPNV?Y]+&;FFU VP,: M=8E4UJ&(8]CV0$9-(I6U..O6QS!J%JFLQ:$_?=3BZS$J:WG@;0^WU,L6K24+ MM#UV4X^(VZ;+L=L>O*E%Q&W3A];VF,USVU3;/;VVQVWJ$W';],FUO<*F7E;. M=L^R"SAMVUP9G&R\H'&OBQQM66QNX]"Z$-!3F2O;.+TNEM/4>]<%99['7-G& M63Y]=*5>&[#?]D!%+1*$C^VWW7#UWG[; QQU2!#6Y:S;'@YY;NNPEH?>]DA* M;1*$=3GPMH=;ZF6+UI(%GCYVTXY]:WOXI!:6;TU@TO;;'FVI@^5;E[-N?7RF M3I9O70Z][64RM;%\:W+@!VT/7-78\JT+"[0]G/7\N>:BW;V!B/-!VP-3SYYK MWL:AM3VP]-PVU79/K^U1HGKDFK=Q&6>MFBM62!ML=N MZA%QVW!/SF';@S>UB+AM^M#:'K-Y;IMJNZ?7]KA-?2)NFSZYMI<%UY9 M-@#E=[L;T-@@C!Q ;TR,)C;&B;4_LWC"XM-)S)#AG],SVWM<*6/_0+_YR\WR MQL9?SJ+093#Z%@[XRD\^?[_XGH7N=.;$GTMB*\JX,+MB+O-OG%'PL)3:UJG7 MI/SAJ+$!F$:>^B/+EG,->YLX]<9&81X^=93MG\*1'P3,TT?^H''9\GO>V*!+ M$TY\JV@H1XV-O#3AZ&HIGAL;MFG"B6]UJM_14\=L_O6_=G;L__GUY_\<_+__ M^_AP_]V^\ZW@TO;OZ./P[_7%R$PTO3_V7 M^^?^^>?%!V_TP\"]./OO=?#;R8\?+G_Y<1C,/AX>3GZ]":\/O=O?+W_\_=/X MY6^?_KX\/#_\^\/WX]]_.?<_?7KO[;\]./UUDOV^\.E-NOCE)CZXN/QE.#O\;SA+LQ_[[^?O+OO#]\%_1[_.XH\'_ \_I;^_-??^%[F!,'B8C;C'!/[3E#Q];9$9XX;&YVA-*U*^+Z+7*>0 M(;MB7N;"[SZ,+^/(9/".<_-G.UEA<;%@W39+A9^7O)]6_"+'28..@E< M )A_*8J G\+H-F#>!,I#'ZZ_:?GAGS2V[*K)AU^37,A)XZJOOC"FOPY_7<81 MW\YT<1EP=X5[HE"'/@>2OU]\7,R9P5A0=^.K8FR]:!QQU97+^T=GA^V@L/JX*EU'%;-84>-X["&'O^638CC[AR?_!RW85.<-.XYH M7JRT+:>Y#5NC>7')NML:V!<-H(%0LZZ:I+L8^�O-AIW>V-CM>6\5KSXKN- M9X3MVAW#YD5/VW2B6[ ]AE]);%)^Z7T$@%USEC(UH.@KQ\L8#+^2(&8]6&#+ M KIY8:&UA:<<)F+<81FP#0&Q$5S8L@/1KWZ(^>XI!AN[X3+V!PSH87/]V*@< )(=QL8G[>1A^G498XH7?N3Z8I8W1> M\-&6&,5[S2U4J>N!U3+JO->\2,-3-I36E)6V?/>;%\9XRA;0KY,GFE>PLMJ! M?;SE3UZL<%(;M;;J.+]NL-?<0I'36R?V"N@/[Z]7\Z6_D)?(FK_ @;G^#5N% MD[9G4^S7P:;8;VYY2H&/M#.9I+'OYL<,OT43M=3/WFQM(K+WY6)LS;FN,[WG.>+O^W'YSXWO;L=%:?"^; M%^*KCSG^0-+FT:*B[3S7O!!BG75!+6M8]IM0-Y77HN86;$2+-K$ ZN@Q N)H M9W"X2>8Y:%V,Z'+*N2F:74^=F*%&NKS^]-7C'1P\0Z#FBX/QZX= "FT'&]FY MYH9 H,Z-_96!T73#_ZM\50H?>+[8R.'C1&%_LZ*PN;&1K94T=>RV/79K;IBF MOB>=-S/-(]N$F7G0W&#-5HYL70(>*+K^U8ECY\%7;X]9AL<;99;FAGN:J-,O/-9/HOWAX.C5I^LWI:?:)LG+GGS)8D5U[@V>?\.9LK!S\,WWV8S% M3AK)(UF7IMPY%AY8>MD;%D8S/Q1_7?+">_>V\I6%QYK'K=;]P-[-^=/O.6GX M<^7J\P_U[U[%!EB;/8ZCV14;)]^]\._^Z/\Q=ES^MKL_!NI?0_6O/?6O??S7 M"SN-S*]&41I&*:?Q7R\+;Z'%W?OJ _7PP_+#!P\]')>)OT^B+'990A^;,L<3 M417^=[[1K^5_CR)OP?]GFLZ"U_\?4$L#!!0 ( />#!5-X@S'Q1"X /8F M 0 ; 9C$P<3 V,C%E>#$P+31?9W)I9&1Y;F$N:'1M[7WK<]-(L_=W5_E_ MF$.]SU-)E6)R(2P++%6&&,@Y(:&2L/ONIU.R-(ZUR))7EP0_?_WIR\QH1I(= M!Y*0>+T?%K#E4<],3T_WKV^O/YY_.GK3[;S^..@?P)\"_WM]?GA^-'CS^BG_ M"=\^55^_?GMR\*S00[P9'1Y_[ M!P>'QQ]^>[+]A/Y]]KG_3O];D3!,LU!F6T$:Q_XTES"<^MLKL3QU5U%8C/'1 M[7_AOKT^/]7#7\JLB (_UL06Z=2E/I:CX@GQT.OS _TK-=[>,QCNAU?KR9O] M[>UM,?@F@[*(+J7X[&=?K_R9]_KM*;SXK)!B?W<;?NLGXM2?I(GZXEU?_/IL M_\6>)[XD42%#<5;XA'L[D\-,'<7;Z[KWNG]-;UX(OI'Y[\]P1UL#MJ^% T>TW/>@@5^B1RB_CE,BR*=O,15.)?Q M2_%\?[NWO[O7PR7AF8AY__W8VZZNKGH7612&L\2?1$'>"]()OI#F"/\[Y45$ M5KW30_'^Y/C<'GGKTL\B']^03_PXW@J UTDBZ#.*L@!_=%:4O3LY/OMR M= X'EVGL?S@=##X-CL_OGMB_RKR(1K,[EF#F+>?C*!?OTB0OXR)*+D3_(I-R M @LF-OX=AW^7Z2M8CM>';\SGKY\>OL%5^'=&WVYV.S +3"A.(HN\V <%?\1[V&L>"8&2/0TBW)< MLJ.C=Y[PQ2=87#_QX>$)":"CR!]&<53,A!J\\4I:.;^Y+CWS"WQY]5RW$\H\ MRB3(93'V8?K55V(JLU&:340NL\LH@*V%?^EA/)&7P[]@R?"'.&24"#\(X"[Q MDT""U"O& A<9YC3)Z8$@3<*HB&!XW(\"-]KL8F]%N/?CX'3P_N1TX-'Y2_OFHZ:,+OSE^WTQ)+"[&QP^OOAN\&9$5IW3]_];/WK M+[ *.ZPA($<3D_^19E]?/_WRIB?>9^E$%# J'A?\$Z1 ^X&$M\V$)%5%BA2$ M%IRY20H'-'>&OH*AZ0SF^*,(5GB&1Q#9CLZL7Q1^, :1,09)R%(02%1*K[I% MD#2@HQC[A0 I$&314-((^50&T2@*JI,/(\!W2B# J,.93?(&C*Y(#E%L.3+) M+$FU(G71- !240^K/0A2)(YAX&DF\QSFE\F1S&@!'>'A\7,\;3IT30'CT2K3 M#1-@$Y8G*LL*@JX+GQS M?Q%)1B:LB, CKM\5GYDO2/+#/,\4US#K_QX%10JBH+KQNAWWUE+/B\]9>AF! M+5)G$-XW?1L1@VJ^U&Q+]X\$-FK9HN9E7Q%85Q[2!'9S[,YW7)9 M(#/"(YJFO&PE#']7NP=!CQ!)VNW(2WR0YFU1P4=P@JP5(O-.><&(E#-S5,=9 M6EZ,8?09B0_X$@[-&&R;^CJ#6 +A,BVS:0I*1\NAZ7;HR,E$B0"+%"(M2H*X M#&5C8%$F,1Q9H@N/$;"."&+I9W2(_RY!W\B9L"M0=U;I+.R) QF#%IG-F/GK M*Q;RM["8E?S'55*?^\,8WXHJV44"?YFD84F?Y.FHN/(SZ>&>AV50X%-I4.(V M^.0SCDB:F8SD>-U!+.Q*)UW?+H=ES_T^V^%9/<=H% MQ>F]U/=%/[=.S;^S'+D+N"*-499,IC+)B>&)1_A*;;]]/&/Q\/7A.RJ+$DTY MBBL^0,YAF7.5-'D( MNQQ:5ZK4+TMK:MD@W)M8\L[ QL#Z17"):5H"F:$R)<#2E7D!]Y*Z3US:,NGG M:8+B1> FYR,_P %7Y;@CI^^*P3?D8AWI&PVYDG_6J,#8(^A96+ M)L,RRQW['0\("!![64G6 D$P!Q#)P)E;Z6AKF@9?@76+#.S_V!-Q&EX@*^*S MF8SA[4",5%3CG5]F6<,$ &*!?Q(9*.:!0]#")'..*ASZHH49_BZ!5SP'K&!- MO\R2*!];RP!O"])IQ$I,)@,938O MK3*.T.W@(2\35*3NET'A/?^UM27>1S(.7XK/_H5\!8,!C;"L\$ZQM:50W=<' MA[]K@FR\=F=W6C0@V^?XF7(&Z,_>QB"$Q$YO'V@#"1R%\R!HC78[J'#+2^ S M>S:OGP*%+<0.@66_;@TERL67(+IQAO;0SUN&QDG9Y%GK.O>5UC(^Q77DI;N% M?;QUF;*2WIV]E?'NH'-&[?B/^'CV5MK'\_!.U:*;>@\8:4;W[CEJ=SV\KT4? MKQ\I[;L%6*I,BKS;<>S^.31]5#7>&L1Z@X)BF>FPL6+S90 M9XPU-.&*K 2Y@(@\"!@P]O(Q*_-"@H&6SEAUQ1'!# UFK.$C\#*.IL;+V>Z: M<."L,;PA285?@H&;H2F++H*(GN??@GV@Z4T:#).T:MM6AA.5 M*=N"@%GE@QR610O$AM9XE$@/%VH>E G-,C(7"5?7;<##)!(7N>)]).<4'RR M! Q5**+1_(=UA%5%5T?-D:"P3=H2)9-<^]_4A3(@%I12O(5M'45%WCPBM$Z9G(*P)=):,TG4AZV,:(^!ZY;!BK4[#A2D*!ZKZD%EK07P0&-HSY !# 0PY( /HXXQ8HZ(1'6AH*_&*"M-#0YY%-3V+)$S6WG%N0-]L Y^G&_" D!R$*%4DV[VZ%=9&9OB[G:5/_^J(76_/"A8ZU(O8%+<.R.SHT49.!'#L>"_CJ&5;VCVF39$S M <8G##@BW U^"L?U[Q)/N1G7%G.L:!=XO=J8)AZD(/:C"?$T'''D>31O_BJ! MR@WD'ND7XTT2)B M2%JCM$G,OV!8% TS=0"M0T2'CXPHL TV>3WP3$A](D@I M4@K-)**#4YOW;2(^#R!T\294/.L) 45?]55/6?@:I_ (HC<$F92>,5 M^LPNV79=QD/]A/3Z0EZ@)EL%J"QP787\%KH ,99$26"CE[-!C]=WBA>CY136 MKN,P\Z\H-+';@4,L+7\QW=3T6K[_'$C<0[$.)HE43Z+"PK<'*?IH)=#K@$JZ MI>!\CI,(\7%/H"39&J=7,.7X HV"\02EO0HF8BL#R!E&:9Q>(&J(QR@8RPG] MG9Z#M^8DZ7WT)L&OX08-V?$=1%E01D@32GFPKNGV@B7%EX0^V#H^400GETX[ M+*U/:PD:4,K7CT4K7(&@0=3\Y>J ?XTH,,/5WS'09^)_14+2A"X67.Q+&:=3 MOB=A Y300J]5('$55/S67RG0HU5]>BGM@75](:_ =XH?+/M0:45(#*B?0 M+ M0/T9FB3*1X/OYD 3\\NKL:09PM,HR.'O,_J%!-:VM-B" J2"=#HCW,]#8RC_ MJD+,P( +,> &K27U+S@M7XU))V)Y@5S-HAKEX<:"" )K0=VCTXQ6K8Z1_:2. M.8K\;L? ME_CU@W?YV)/3TWHESF=3H+X/FQ4%K\2Q/Y$\]>,4)[3KN&?TK_";M>MH[3I: M*=?1M4XCS1)KU]%#.56+M,1=<7*52%*6:G&D#7T1\90JXL>"3SEI@&-]%+R( MGA69%V#4XXUMA8(B[E-A9&",>^QU03MY 0$&-O;IKL=K/V2=8(P9(>D5!C_+ M;W#?YG276]B*8]XY<4D9J -9R.ZJD=% 4 &^AAB$O]OH\$C;O6X*%!6:%=@6J[YZE %M#&N&.:Q>$51G&Q*L,'J@_J3;L?5!\YRE^>.\E>< B6,=$6=(.F')JJ+: M$]+@IUDD"PS-T60O4!\/K7&ZG<]ZH%/Z92,BU43AS8\NLD$RT.?+3 <^^:-" M>2#0F]"64- BG&[U8A!BI0AM*$BH?A,X_X2NDW>QMQ*2M )'Y:-9KXKP.I@ MS7Y49GR:@L(*EIOIR1BHRP"TDN% ZQ,_(*S8,YSJ&6#&(_,#\19:E(1!&L1X M[647M56WP,2Z)9!7,9ISCF_;600F17.)H\?3$5B.J+!7YQ?MZ1:OCD8WM^": MP;A!FCZO:K=CEG4>7"684-CA6*7:J;#XU8$$G_7VQ*<4$0A]7!"N.&^[6KJ= MA7>++?HQ^'"1$!4_)D-!!K<(43P9/L@')RPVD1Q8CV\#_O0<,61/G-*50CFB MW)XA&/!7FZW6/J5#1N2JX$A?=6XU%#Z'IV\D1GJN?'/WQQ%GY)44A*XK00ED M$!!J03.$8&C#/16I\4Z2J.6D$B1FDH8&DB' 7:+;V/A7K2%PY@@E*> 5,9C8 M-U&^Y.!-8\:RRF%L#VFY9NPQ]06AL7QU&\IO\#RN&KM^_X)[BYP$B 6! 2=R BT;W0KI(H4(0$*]]ZP!9@CZ [#+Y3 MCF>==I8I)UE>I;=-:+/HISVU22LD+)Z)4X4KM8@+I8'BJ7$46% 9";Y3? %' M#8/')8%?A,$K85. QK')GCU;95E*!1&M&DB:H;HV^PY]@XX^I?'%Y!74X"$( M->)^C_V@,ROZ:B@KGRM<')Y:$PP;RJ5S!RN<5[V*91ESDGY"ASHX\1R+=*#Z MMM0SU6V]1$GF"Y"H152Y,.Y2+:,#@WG)YWY<3'; AD@ M,:K"R&I)*L-4XC)7&@5_46FE(!50O>IV-DQ2$&\Q 99#]?4F_I,!5A*\: ,0 MF.NA$L"2/9>(I_/_T?N8*=C28X$&?P9XY#'I*(LN?3+I&- & MM&B2GD4 @>[3&*Q_$X]"RCC."NY"YE:#LU<)615"/0'!DH8Y\\M<3!D!V ] M]$I=(P'D;JJQ^-0Y2R3"[G1R_/SP8')\?]H^ZGGGRC\ M>.7B#Z[)U6_X64<1QA!'")0=5N[^-JLRK[ FY5U]*38BUL^=2 %+J\F$B1M2 M]A5GKU9QPP@<#4&#Q!@_"F'SDX"H,;G>=MR"(@Y!?Z4G M,(I@QK[W7/I9,&9(DWWR50PNK)*.I@C=! 8R8='&K2?\86RS'Z#.U19DUN*D M?P7K%6TR'RR NUX1A?"H_2SE#C/6O+!$DK#W5%A;6D5JZ7H,M8VC=8 M]2G& M/,5@1@R7S=U0%%*$$2I#/-!4D4A2,?(Q[,"!RV"^0S6%*U@K$E@(('*H=& M^V[""O+@R [T",:24/P&O88(47&Q>-&Z&2MVI#VB*I0O T^W1I:HI(+ZU!$O MHB 59PX&?-9SZ78(F:8(;<9[;4S:L5ET()]*,S<35RGPB];C,5@F/Y^TYSWQ M1__TM'^\JEDVSWL[ @RASYG<,E#AB8E%;LDCR*2"GM3M1K'C13,D2.6Q3.V! MJR!GA6;!O52P_V##7)5X<,"\+B?2.71L7O/)0+!V_E@*=;Y*RQAQ:'75C.*( MXTLQIR%!CQ(G^&#D6&;_8AR1'7]]EGU$P?(6&3\% +A'3G$+4H%AD82@GS0* M\E0ORR(FZT=[F*OB9Y1SB9"[JK,4.F'T@C.)/%'?OC%<,^Z3[/P-@7BL MCZ/HS D5JLKRY%4M'0(=P=IB:^/+3#,YJD42.U)T?_RM"Y820RVB11W,PH. MBH*OMC^Y0'R. G]-GA45FV'W")4#LNL^4MZ4LN.,1158$ZRJX'44*0D??9G\Y'5&7W*D6=' M2+0H&^E5HI/C\ POG]X4OIEYXX/#X8?#H^//]SY4"=9MV.D40C=GXZ?;>S M.)^>TX*]:_+J%V;1BZ63Z-EH7#J+7C>T0,+ON/Z_^C"B&C+P8&\_2NYG4]O? MC'X'VCU&B9OVH-[#JB R&QD-GX D#SE2@3!NHI7(GI5I_VD , MMP%AKP>PMGY!3.@W M=*WZA.EAD&,F+U0$[C^YU,"+GC@?G'[J=OK'!_2WP^/5]/J__@)SW:$2A"H" MMZ7R%WD @4.H?P%RD]O-"%G=,S7YJ3@6!1MB0?Z(HF47-#=H0:=4B::)6\P# M+TIZK?8==SO8=(F7:6_;X[_L;N_NK@[B\P*K6ZD%U?6$WV:8>\>;-8A8/T"9 MA6EMLVKY&R&_;E)7LY',)A:/I)R8:DPQI)>1GC(SX1D+424_BG,JT!-@"0NZ MD7B0)[S7V&JZ32YF0QT7[ M%Y2F^J-[K10=#)/P3+U+5DXY\&5%&EP>6'->C8&E\/(9_ M%R*/OB%3/-=,46>%=/7@W!>]9TJ0XK986Z\JMT^5L 7S(,JJG)C"XI'F&727 MG..LZI:0J2]:=0MQ*K_,33RRBH&IQ%!J64"Q593]DBQ2<@DXQBRA*"WSZNU. M\+BN8&L'/%U'/DF;&OUS0U\6!P]5J26-4"JW%JWR8SCJ'JF3 57'Q+J194)% M[MRN!V')-UEKP=NV4B'J5E/:9'O-7W/8N0..Q4G=CBZ$J!=VE8[/OC@KP[GMCKT?_V//',$_N>>(Y_?=Z#O_WB M"3BJ2BW)Z8VR=C#%=>?R\7LB]E?<$[&_]D0\#M-L[8E8>R+6GHB'E;_TPY?2 MKSWQ87 \..T?K2+"\FMO1_0I4[(U4@S-*A7M"8^PDJ]K%-2Q$:S7.$XU,$CZ M3!787@>056\M#-G"W%QE4J%&2@'_?=27X:,)AVOI2@CU'HUZ=++EU8\]$[9X MF49A#Q0QIU"YZ3?FM5>2CRA)/S11'$XW8]9TW:X)\&X,]TYK57-61YO]M;>+ M\<>#N*I"?PHK%IJPK@&'U?DY]-3"S<)89588$\,<((X;WZKRP)OI-*I M4FT*M7"XG((R6[!/S::JZNNJL>8ST=>>:76]\,NKOIJ'(\>E%N7UL@*:/18@ M_Q0WZ/0<1[P(1('!>ZN^D59K ;L!88W*;F=$O0/8$>]XV^N<8,((F<.JS#UN MO5,G1'7FUG2LTF;OBP_4X@$FRV\]\J_:O$-5!PMN":%;1(16HY@YSA\X++E. M#20K@V0-4 -8$PP*5,2FGJT#VDBL+/ M5QPN>OY/A8O6E2_6(,X:Q'FDE2_PCCMRB2C2_FN3= KOV.5EOP%Z(48T*!LICXO%=GQIN)?FE6EM[N=A7IJ MU;W%1$UA7<&D889[#CJCD)P+V!(5(G UEHGED-<:9^PXXM,$B^SM;%99=R$& MA% )TE""\:TJ6&"%/[*V<8"M3 ;I11+]AVI],QZ)0B+"U#)ZVL(E1Y&%/*@F MK3J8,<)\=JQ9OK&WV>W8).2*!D8"8((P&.G/0XR#N, <:;6N 5[K(TPA!:$2 M8^5.X,7$M(,U=8X]@A)0<0*"T8W/6T6&H-XO;LZ&W?LL51T,RHPZUUC0G#\$ MXTCUGJ,15%]??A3%D3(E%0+"5I1]_O3H=F268U>I]BZTY\JIO2*GYM?>KP). MS@"L[$Q:UU&;.8IE#2^X^"JS86OLDV<)IEQ5#,%F0$6]MCN=/,J:-]5V*\.W M%D] [[/J]Z+-JIMW3A!CYXKM>8DG2V)[&9_"2")=4%:_)W=?9#79T<<$@:T, MZV$VB@8W7]I#3%E'ZU%@>SU\I"X3$ B![\-%.(T)];3C46A)N(ZJED%8R[9" M]H95CC7(FCI(?DEB%93=?H;:G\0[Z37VK6F+]31S. MB++.L>=1?=T89^!;S6O4.R8JS:HL=6,.I5)HD/6(T&AD=^\-3"9928Z0Z@&>\CE3:H?J1855) YHNA3A\]] MW*<(R,&3A.%:JK8I/ZSEB"I!Q3'01IO!3&FM=.:PU=BM$+3+%2ISO;R.'>G9'/1KWJFY_.'#1C=ZIM M5-S>"\VFB_/YT9__I[O;NSD_9\I\W MQ6IG;\^3< N>VU]6W'/[R]ISN_;))!^\/\_'KX]/.]V M^G5.WHL_3D[_9^42$0A ;3H X,,HSTM3 MXH;]%.1%(+^O D8K?T!;)P$38HP:?(4$AE0'@O% +-8@=O8]@7J0)X:RN$)' MW0ZV_>/PX/SC;T_HAOQ>"J_3OJZU2)H7RG9O ME^;$\GCNUSL]_0 !B[AMV-#Z[9N7K1G<691@H=G8;&/ OQ#YV"?8_V4E_ROI M?WN;=Q?EC.RA68=UL9([>,T=SH M:S'7V']^KD0I2\KE+#ZA/%U% @3XEAK!,2BS@%\\X M0,1$ MAML>R..E0W"9:,]#C\B]C QQT5IZ_&;B@XS;(QJI\#!42HZM[H=:?^ M[C+1[4 X332.N#6*W;,'@U54@%5%.<];QUFH9"]3(7SDS ]KY*D@ESP*(U#E M)9;#S*D'E\3H"+]E;&PW=(EA-[)%=Z!6Y'8W$].M0O0IJ"R/O@DPT8NQ7:BJ MZ=MV_>.T/9R9A%$?',^B5YJV"3O1\I3]$%EEPHTB5*"7Z4HF5/=@>+BI=%5$+MKN7T/>AS8TX@51-3 M3;94!"E&5.?O%W_X1BD_:E$/4%FBZ,;EJS,\;W$?#G[ M?[O;'N+=<)'R3:GC.3.ZC75%.KJ(?.P.'TML1*5OU=#TJ['J2DJK=);MG&_V M(A%QFEQ0TBXU8U0@C[T\(FW&PZ/&4%4J=5Z!<9V+:^QQV"YB\NP_;R:4SA?\%N/ MF"\7N )?K+@K\,4C=P5^YXZOW75K=]TC=]?-Y_Q'K5+L_C2=XC!!CF3NG^$M M]U.5B@&&[H^B'-M+_EV"XL"I@S86,)3 )1#:MD6;ODK+NC?' 8=4+J(>.L/ M\JEC'!@MHIV+G7WI&'[+TJJ!, M!>T(:_HZR\3U5NH.K<7FO3SD//Z5^Z2#_W^YRWN;9!) M+BH!# YTAPPB+468UN3\^L)=I^&AUD.#N[6 ;XDJW3&.,C5JE!57,H;-49HH MZ77.\IX[32S51FF%MC86%P@RY&#Y&ZP^>ZF@H28KC'2_W=I FJ= L][N;6^K M])1D9@9L&0NNI5*S8SH:8?*A6A3W083C8G:]Z&S$:@%U:JY+#Q;I*J*8"[!K M"H9^3'8_3)-[H?-+ZXLW_V0TY(U:5N%CC\^ &^0X=#CG;@(RIT)2.7?,[CW> M7M[%/O,JZ<]H^(U]>&Q&@1U'N#;C'\.=.]#]P =V9?^K%6S$H9XRK M\X0EW#$[DXKPC65F-X.M6K\JU)N:*($<*I-+QOI5U3Z?IB=&":C3M]M*L[%\NHXMW!\A^=12"&M_7$K%L'[J\6;QA^ M7/>$(0,2T[KE_AVVG@=2,>V>2[@ND$;WL>)N/0=Z$5T+SJ'!R]'<;:;=;ML1 M,NGCRZQ85UZ^;6^!#YFE _M3S6"OP2PWH+OVX9I49"^IM"@3CEP?$JREHD4U6YV/[GIV]CO>E83IOHB]2/74U?OTO;44H$%:!3EK3"K/M1"Q=C++6&>_K.:3<]O35XEMM= MOY1"S0&?4AI@X-5OIAQQ(@=M@C*?7Y=<1#_UT<.XC^4S(.U@V#M M(%@=!\%MG:HUM/%]YMO)V].^.)719%AF.9>R^IGJZ^&HJ?)1%X-\W1-:8.=$VBL/H;_4T7B?7$QMO-1MLVU@!1Z83OW_'WN,? M9$IX">]J(R38UL,_IE>2:I]%KE\NE S!<8%]BM;%=C4AF (9P^W<2[M 9(XZ M0OH*]'/>774020NIFP&H)M8(]55> BP)7S4\K?I"Q)CCY7/165434>S^LO/< MJ/WE$(80'YD[]0+WJ1E[XRS 5("S2J%;TNH&D*VF)!A]WXBTB8I$TEX:W?51 M&5DQ-C[%$IJ(J7 U3A5 M5$92P8?409(%82,^!&JNIO=5]Z")E*3EC%AIJ84*?;4\-TS/9?KG<-NF!";MJ@>ITG%V6E3'%=>6]?- MPK'@W-:6SX+MZ\):_=H@M@22$5"C*(,UYD5%DYM601.WJ:UKXQPS =5^B*MP M ;8>53JDPG!-:*';KM,3.U5W4A;D\N$55OZ'8MBQI:)605;#GY;4J"D M0XR6RYT(?-V-9V-F#6*?C3$R*'8YG<-]M3--;,=<1J"CZ93"-5L-J[>=JA&7 MQ<7;L%9:M<4A#DN.?:ET:'*8ED/5740?3;/E^F0;[C#4JJJL96X',6HWNR5P MT#V+@BQ62:75::FQ@260W7J\%EB!V(8EW(!<$FACE1?KS/4X+? [JT3IK!@K MP(==G$F1X9WI'L+ M1*U*5FL'-7=\\^0^?/^[;0D5B]''G>T5AQ]WMM?XXQI__&?@CVK'KT,A MU_CC&G_\R?ACFQOQI_K/#UV4Q(0IY;506&UH<-:TLL9 +TGJ2D9+&11MHX>F MCPO:[RIKV^@5W"O##O1JP;(\,NV4.AQB_Q;5?2"4$ZJD[SJ<.=-\?B8Z#H8T M*>L(25.]-)(M>QQ7JZOBL6$C\Y%JYZ<@TIUMT=8#A$DF^Z)JUD&F7V*;6U64&Z:9ZV@SMADNTZ_TPGE?^&#K3'T%.?I.1X),QA3"A@V38C^:<%=* M03M6)!,4_ (-=M449MG<@KV/\:]*!!^ M9\X6:K,;AVUD;R(3-J/%-ZPX&"Q^8(NCS?8C[;SJAL@48ERNS=?FNC!B4(.< MQ/+V0ND(] ,@ U=F;X<79HT9?"\_+L&0?#.<@/1$7E0KKAK". S[R<]@O]2> M[*Z9U4J7H-9;6SJ].\$J#^3N:_G=FI>_FY>79N8^\&RL6'FWC95KOL^5X>3E MN=99@0<7E;>SL^JXV,X:%UOC8O\,7&P=E[?&Q>X2%_NI2LGE]3H)BVMCU&@- MFLV]*J^B"M#GILXB+0OCO+:53[ M18&AD6=I667U6YB"7U4T4I$.I@4H_$2YTY.95W/HF?D[82K6".AZ;^I,)O"' M/>652] !V7)*0YM3+!$GTYH%;:7CSUE=_+G*4ZG:)NK>P&U.3#NV1Z6$Z?U& M0)-1S)9<$1^!0%G@&J^MAA\"EC5X%J:2LR U+#87S%,!&774S4FSGZ_0P[:. M9,3A(W1GY/.R=UJ9L >V!<*)F(ZDK)'6WZ('W.=F\P:YK.(]ET8N'S5SW6(2 M7^%GA;B7CD=<[?\YWP/KU:=T?^#)^UM[;?G>O^%[5_TK^A].!X,#T3\3)^_% M?W\Y'IAN$NN^LNN^LGHU^W":GKX2BVC=NUUBEVH3N\P: M7MO7=[T!W]F65M%_4^Z^32*7:]5Z3\3\"+O>F$57=A5OU SW ;#@@@:Q]T3! M3=KE/E06_/FK>*,6O ^ [^;;#?=$P.(FO0^5T1[TLMU!^]]';:KE>&A$/N#Z$1-4_ \^L4VT4Z['++=#/%P-9#VS3'NX1@ MEIO/ JS%.I;ML,CC[O1Y6V]9&!;0WG%U9[>MLY/6:%GKX].?B3'*4?SS\=O?D_4$L# M!!0 ( />#!5,"E4E[[ < *HY ? 9C$P<3 V,C%E>#,Q+3%?9W)I M9&1Y;F%M:6-S+FAT;>V;46_B.A;'WY'X#A;27K42;6F[W0?:6XD"O8/$;;N4 M6=UY-(D#WB8Q8R=0[J??_[$#!$IGZ)8.S(@^%)+8Q\?.^?E_[(2K3]T_V]?% MPM6G9JV!3T9_5]U6M]V\OCIQG[AZDEV^NKEO?&&/W2_MYN^E0,5)E9U6A@GK MRD@8=B?&K*,B'I?=B3)[%%H&)51$U8>WUKMD$==]&5<9%:UGUZ= MW& $R#P^'CZB"YZ($Z%+U[_%/3.\_.!&-C50F?5$\]@$2D=5E@Z'0GO<"#N& M]6:GV[IMU6O=UOU=L7!_RQXZK;MZZZ'69LV_FO7/W=9_FNS^%D6:G1\WQC^J M^P^?.X^?:W?=8J%[_^OU[K%9=[?UO'*&>\BZGYKLL=:YJ=TU'X_N_VHWO[!: MO4M7SBJ5LY^O_W,6/]+K_Z8FD<%DDVZWRL5"6ZB8:Y^UY5'^Z3JV^%]W:3;O)ZLUV^Z'6:+3N_OB]5"G9X\>'6GUZ_']V[2A1PRIU M+3OLJ211D3TSEGXR(%N5?Z"3WL65X[,+&2^:"D6P4T(92[=# MWRE8KC<0[/NX_IGB^FQ+<7T#H?2+!<1M-&%/L1J'PN^+L@OO+*A]!9.Q2IB' MVES&C,<3EL:)3@4S"4]$!%&C:.>X6VE$8K%J ]7?*'9>""] 3,I_9O7 M'PLM,B/4@TB:4'""$%&4#-!#,Q2>]9#L(G.0RD<_$4HT++U)?B#VP.Z!G8WP M^O/"W3V<>SAG(_S/+<'9'4#!YH'\FS9?4W5I,ORR MM0V)CPH"B4,;XBW&M; T 0[9"P4%/1- N!=*,Z#B5"R"\I+ZTK$OC1 M:;)6H:-JJ)4G?)P&E >@R!? TJ'2?/8&/.X+5H/<==(0_3H]YT>G%P?BT-8] MO?#=D3N4M$Z-'<[4 "--S%'NJ"-GOM%0L;#04K#04H"6J*?+\*,$I=K5/= [ M!;3%=JM4'_##[6#M"P/3)+LVO?P^?65*?3V>0JK9FE4H!>T)-FTJ2VI5JF$ MVC>2QBHJ2HF8[)#J\F2NQGE%UR+D%LTLK9W35<[4GBY*"#.<,2J4/D^LISTC M?RW?H[^$?F\WT%];%5_, .OKZ5H3 ?!7-'N, MI$]\C5LF]U2:4&/0UU4NK).&\%EI0;L P8I=+K:XR<5ZM,% &]EVVLK& @Y= M%@NPOJ=T3^DBI?ZVE-F%/U&Z!!)M3V=K4'ME):UOT&/*LY7GI9IHR>6T+ZT6 M"Y$R"2[08UX8,[BSTX=$[. 53P* #Z%<*IUY3@^R[=8Z[;K'Z[LQFE/!=!$N4\TW,])"J_PP=Y,EL/O%B+SWSC6(\G2IM9!FY/P&84R201 MXALY1T_1^Q.X[DLX:(T<@'PHO*$4 I^T*X#VLU3F:RK1 3LYI;%GM^,/]QMM MN\7M#FCZMC;:H$E8:,.Z!)RT&4S[RIX4H"G+GF?[76/!GR@;=JM.FP_;%;-] MZ#Q]UK0&HSFA=SM3;C-^*IO%PEPWN8^:1LQD\U6>LW4VJ@!*K(;++B44J-F7*C(FRRXGE?%( MA2-!B6G,^]G+(3I38!$-0S41N#H>*">[G.6)!Z'KI.W%PO=P/OYUV,FSLLS2 MFWN10^,2^8/VA3[R5!CRH8%#TV\E^V9]CISU&UAFS&%9RE[5ST7LFWW^EZ5Y M8\/>0-Q6G5>UM ]DV$69G57.3MEBZ+S7[8N->GTSJ7[3O>R63B?#7LB])W9Z M? %W[:,>9_)-'3C?; ].S(GS^L7[OPM3&P&[.T'X@;R_)\@VZ=8=CT35^;89 M C;\8Y6YA;6EC%)/;QL7-^?HZ=T/H0_//^JEYK?>BT;_')Z*\5=(/[SE7KV'_BZG%QN77] MF+*^3GC:\"<:[$D8&>^A(JH^OK7> M)4NX&G36.K[&")!Y?#S^B"Z$(LV$V;OZ)1W8\>4/;F1; M U58SPQ/;:Q-TF3Y>"Q,R*UP8WC3Z0?=N^Y-.^@^].JUASOVV._V;KJ/[7MV MU^VU\17?'NY0I-/_>6/\L[K_^'O_Z?=V+ZC7@H>_7N^>.C?^MIZ?G.$>LN!# MASVU^]?M7N?I\.'?]YV/K'T3T)6SDY.?2-#V9H$YB]OU>IL>=AOU6CN5BMUJ MPR/%&Q@%D\EXQK(1SYJ[[/KZP0W:U_<==M.YOW]LW]YV>[_]NG>RYXZ?'MLW M\^/_L1>'F1XW*6R*PX'.,IVX,U,992.R=?(W=#+HSYN8T'"&7,V##!96H^X_ MN:7Q)EEK!;?S:H4Y&K#CX/9JS96CLPN9KII2(MZJB)T>+49WU8>U_F\Q*.NU M$9\(9L1$BJF($(O2LD\Y-^!3S7!^K$W&=,KN,*V@TN&_F([9;T9&[':6HM70 ML@]:13(=HIEN&AY=EGM"*4C0I^\4+%=57/^?Q?79.\7U-90OJM<0M\F,/:=Z MJD0T% T?WD501QHF4YVQ$+6Y3!E/9RQ/,Y,+9C.>B00J1='.<;. @^2*Q3S$ M*<-T(C/<"%_N58%4A,):;F94).'/HE[+1B6C%B(,V%:7#U @5"*4)\P3% M4M2'*Y$P;#J2X8C9G/XMZT^%$841ZD$BK1*<($0492/TT(Y%Z#PDNT@%I([0 M3X02#2@ 9HC9C&95.Z+E/*?GDF84>F MH=BA/_^3G & M(RC8,I!_,?93KB]M@5^QC"'QT7$L<>A"O,NX$8XFP"$'2E#0,P&$!TK:$16G M8@F4E]27CB-I0Z5MCGJDR48K3]78Z%!$. TH]T%1)("E1Z7S.1SQ="A8&W+7 MSQ7Z=7K.#T\O]L6!JWMZ$?DC?RAIX9EZG*D!1II8HMQ31\Y\I:%Z;:6E>*6E M&"U13U_"CQ*4:C!^M(6)@FV77IY;?I:U#J&_(<4LTV MK$(IZ$"P>5-%4JMS P/0OHFT3E%12J1DAU279TLU+BNZ$8H[-(NT=DE7HU![ MNB@AS'#&:B4CGCE/!U9&DAM)/9 ^^78Y1DJ6JH]#/)"M%2\MJEZ%\]CVJU\:Y&6,>L&Z)$(;:1,X#M\(>BA2)O\)L M@"MB3/,,%'^X?@'K$$=%R+/UR^2!SC-J#/JZSH5-TA"^*"UH%R!>L\O%5C>Y MV( V&&@CVTU;Q5C HAFX[_J#::-LM;G= T]]KHPV:A(4VK$O 29O!M*\<2@&:BNQYL=\U M%?R9LF&_ZG3YL%LQNX?.\V=-&S!:$GJ_,^4WX^>R6:\M=9-'J&G%0C:_R'.Q MSD850(G5<,/GY!8]MWF"0$*776^*A&7M<[E*4BLT=V@C#$EUO18;2%,#H @G MIT#-O511,-GP.:E,)UI-!"6F*1\6+X>80H%%,E9Z)G!U.M)>=CDK$P]"-TG; MZ[5OX7STUV&GS,I+EM[7VS5Z>M9\ZON M%;=S/A$.% ^?V>G1!=QUCWF\R3=UX'R[/3BVQ\6@E][P79G1B-,=B;T?R/CW M!-KQ1#2];VSGG&M=7ZV&2>EU^RI4?K9;@36@U_@5T%3N;4V:/8?_;/'>;PLPL>MS-K+9Y1%(!U\.9+^3%GE,?W T?_B MD7X8^5]02P,$% @ ]X,%4S'*"Z@8! 81D !\ !F,3!Q,#8R,65X M,S(M,5]G4K5 D0QV M&DX4*':DR\?%7L->E[6S7B>AO_YF;9- F_0N5Y(V4?+%K'=WYIG9YQG-QMU3 M[].H9QK=4\>R\0GZK^L-O9'3Z];R)\[6BNEN?V*?@^N=CYP/I3 2J@V->JS M8RN:P)A>P2Q:$5'.7Y3!I9*%)=R(6Z!%9$+)MJ@E]8[H.BUJA#.%OA* MLL52E7K=D\G8VS9<"9(T%*_YUPOV9PITSAN5AO=6A\S MH,WC8_H8(?A4*"I+O0,Q3^+.(SO95Z(*ZTH2D8217+4AC6,J?9+0+(<#9^8- M3X8#RQM.QJ8Q/9NY9Q9Z]B;P=!E]JF ;[TSCK.I6!U5PG8&.&!K'K7KY!89J MN:9AV9.IY]CPL@^U.$G3>%]_"Y,3\$X=<*U9WQH[;F7RU\@Y!VO@Z9EFO=Y\ M?O'?%IS'1/UWFB@6KO<)>U@VC1&-!)$!C-AEXB^9^EJ&P9+1$)QKZJ>*75*8 MA"'SJ80HA(^2!6"O!3KT$SB->,#$ CT,A5^%0[6D<,"#BS3J#*)53,3Z0&:C MHS(F76KX98A3F:1$*% 1--Y!KG;3<*FO6"0*N9,$2!#%B@8[ZS>+-)$0C?;G M$CDG@B:5R36G:[!\I6K.- MBTM]OC[AFT2@A7LRH\';FVV%N7JUV6*BI#LDNW??]*X]3L.]MBN'C:.;'.^" M>.3S]9;4-"Y2(K$H\35(&D<222S@!&LIKJE\QCTR(WNAJIMQL0NH"% I?Z:" MPC&JIUEO-G;4.,ML;L0(8E@@)%/:A'/M+XE8T(W^&N^/WW2 B& [I;KM]6;ZM^9N;P_: M>Y79\Y-9\U?*C G=H)",U#ZN($R@<)C(^)RK!$+"M YC21.M@[*>)ISC(:'4 M&.&HT"1&823E;%?(!!&^?H\& Y:91N+K52G/911A-Y3Y3 KIF$:AY.K+T<>V M'K[5RX.CV*)_!^:1#*BL^!'G)$X0T.97*;M?;ZGCOSNX0T>EXK:^116YA;6EC MGK%WGK6W1_.[&M8NM<3YV,ID$)WH=D(-;AL2R.8TEM8R"T1E?1!!994 ML:"$$W'J_*GS>K E:LU$%\S01@\TO=-5PMD:'RFVWNC2H'\QF[K[AJL!V3*^ MZ_Z;Z61LQ/ZB*1*T-!PX=QNV8KI8:+=JK7Y]B!DPYO$R/T4('A6:JM+@3*RB ML'=B)\=*5&9=*R*B0*IM%^(PI,HC$4UR.'(6[OAB/++<\6Q:+,RO%LLK"SV[ M,WB^C#Y7L,WWQ<)5;5D;U6#IC$S$T&QW&I57&*JU+!8L>S9W'1M>]Z)F*UDL M?&B\@]D%N)<.+*W%T)HZR^KL]XES#=;(-3VM1N,9R\3Q2EU><$Z)^H\XTBS8 M'1/VN((4%(R#+17Q.:G :,-H !=,$.$QPF$6!,RC"F0 GQ3SP=X)].5%<"FY MS\0:C8^%5X.RWE XX_Y-+'LCN0V)V)VII'5>P7PK@[P"8:RBF @-6D+S/>1" MIYYF4A0+J=))!,27H:;^P?AL%!@.(1KC;TG4B@@:56=WG.[ \K3I,1RJ8#]) MIFUW\%G(6T[]->V^N 5ZF%>N-9PX,'(FD[EEV^/IIX^E1BEI+^?6*&__S]"J M6H9=$UK67$FMY39YH MM3I,E,SFR!X\UGUHC]/@J#N5'($Z\ONZ&%@LW,5%8C_@.% VE0A(+ MN, RBF.JO^$[@"-I[D]G+DUGK>\J,";,W(0FI/1Q! MF$#A,)'P.54)!(09'8:*1D8'%=--.,=%0JF9]R%VA"B,J)+,"N[?DVC09XEI M)+X9%?-41A(W0HG/*)-.L9 IN?9Z]+&OAR_U\N0H]NC?@Y54/E553W).P@@! MY7>EY&B]IX[_[N !'96R@_H>)9\,^%TBUZ/EW$;*=5-45KQ&34 GK>Z'M/E6 MU)VC@A[NNE^%ERUG7NQ6G'B?H5GK(-Q(I;TO7WQ0=4R M.OU!N'="C7\+N8X):TJVM)MB@Q\.G#G%']!D[^3Z1I7GAN4RS>G7Z\]W(LD7 MI^H45G:T?B/-&ZP'25.>*X9T"7.^_/.GC-EB6IXG8Z&96.=$.G^<22]I5UDW M'T32+R3F0\K?4$L#!!0 ( />#!5-9C)?QZ1@ )@1 0 1 9V1Y;BTR M,#(Q,#8S,"YXKNLM4K2-;CN-)+LF6+#M9Y\V*+>=E MMK:F(!*2,*$(#4C*5G[]=H,O(D4")"W91N;XR3()-)]&-QJ-1@-X\8^;F6LM MJ/ 9]U[N[#_>V[&H9W.'>9.7.U>7N[W+_MG9SC]>6=;?7OS7[J[UAGI4D( Z MUFAI]?EL?FDS:RB(YX^YF%F/@MDOUJXU#8+Y\T[G^OKZL0UE?)L)ZO-0V-3' M!];N+A!,2/8%18+/K>$TM'KAQ-H[M/:?/3_8>]X]LJZ&?:N[U]V/JOSMQ8W_ MW+>G=$8LZM(9]8+7\-D3.B:A&[S<^3,D+ALSZNQ8P)<'946P&RSGU'^Y$V,: M$W_TF(M))WW50?J[>_N[!_L[5D#$A 8?R8SZ'NPE M7W&9]SU7\F8D7/F1[M[>00=?CXA/D^(WA?+7![+T_K-GSSKR;5(T]%7PDSPBZNY\%PC2-R#P_()Y-=U -+ L5@7@>#T@ FHO:]#?4*/EX/F?>F+^*'\%# M;-'GB10NZ-B2;?PV<'ONE#9Y7" M6N-J:V)RZ/C>^8)O,H^5<+4EGFSBWCM/\$T[=$M%E>,*"P^!#PM_7%V74TK!M# G8OEW\;NR4#166%;VXZN&?P5V#8:<2U N M.2# [RN/A [#00IH.M3SHU\I=2LF;TGZ_HO..LF2#X9 Y-Q[)7^O:W-,("ZB MK9I7F/6*^L^N"6:ML]]WR*>(]U- M0:=0@2VH?-P*M42HEU/0_"EW'?#J3_\,6;#$BETN#G(RU11[560H)] G.H&6 MB!&E"&\6."B-7&H-8*2C0L@BW/XNA2M_Q7#^UXH E1OF5L0:$>ML<_U:50IP M>$\*4,>*M^J0,^-]XD]?N_Q::;_3 @5;F1/QTUL;;2EL^(B%7REWKEJ1'1/[ M^T3PT'- ]ST2A(+R,;KM$D*^WU:5K>JM1R"^$^;;+O>A*ORS(BA[7D02Q;8B MVHI-(3:?^7RMU2>MY)NMIU6F#:'//.K[\&#$//G=O)!+ MWE=.?)X5Q!=3L3)DVNY9*I">#6Z#+\'R\9#8+'CG\6N7.A,*TY:<;"J*:KO8 M_MZZC#+4L#-)>E9*T **CUN1E8IL$ 6KEF".T.>;HP?AK46&5&6*K9"3TOZZ ME!(ZTO:EE/YN :UVJJ&0SQFPZ$W0:R>^3P-_739E[ZMLW'YW73(K*E9$IA6* M3BCG,",2=BAP;N0R,F(N"]8]#%69BDYSL"X:2<>*"5D92JU!4W08C(\%Y&9- M'MGG%1[[_I-B_\#*EJS=]@I55"030: R?I /?Q1?5_2%PW4QY&,45!VD:H4A MFPK7CAS, *">7W2/%44J \K[3TOELBM)65E:;;BH3#2G1'@PM_/!%_(Q))@3 M2N%EE:TJ1!<2"A:0L"2-=O)8&K2;S5@@5SG ';6YG&]3KQ IT)6K[BJ%8$"& MG'2#?K%N(8F@ALA85LI582:2V1F+J4WD 6 M8AWE(=E62K<+S99(2E^RLF\5@B#*0&UK#6\1J2H1F+:@/I38+41)5"$KG;!: M6:U'ITJDI"A2&2KI%D(EQ4!6Z\5OF-=T0@/"W$;I34F5B@Y63)NH3G*R'L7$ MR^792G.3V7:YJ#>G5]F1#PI!G.U,X#6ZTFH*[BIT0A=Z;MQVOJ V90LTE]#0 MQ'7Y-6[/&'/A\' 4C %<7%":U/Q NRFQ*N?IX(YB/(F*X/@>\X#U$G#6B@U) M.F7$ DZLA)6T>*MH]<)$I99&7:PBX'!0,U34#ATU#8(-(RUSXC$7%'VD".$I M3$#MZMKY[4$AC*27ZEH/SH&0O754+RNS501]$+"L[]:K4>T'%*)/M2*';;^N MV:^I'[ 9;OT8$R86Q TIN';!-(X[$6QK0=&G7P]N*#KZ[>E5JT(ANM5(%=:, M00K40J16!!5? -@X5F8E<.4XWR;-U=>J5/A\# 87'*PQ0QFSM;"F3I$:D:AT M%0MQMDU49Z4P^%\6G<76XZUMM$ZO*&6Q&1EL+5QJ$HUF:^6L&BRX*13"G5YO8-9"!]JU[H4 MDI]GZZ2?;RV!7L3K:UXZ\9:7K9H3%J*+JM4QA5P+Q5N1ZD7*-8MC"LEJJ^C- M]Y-"R%"SF*80,6_W2=QVGT39)+#D=84,"S&][*:)BGG=7TH@\E2]?WWY\/GP MW__Z:L_#FV_>X3/GQ]%B\FWI79V$UV^.Q+.C=]T_KH9+WSU:V#_VW+=!)[BD M;W\<'7R_V;??!WN_O7[=O7S76=P<][_M+9Q+,9K>7 R[/X*WDP7O#GJL\^24 MG7Y?GCNC-_OV6?^W2_?KL[?G@T]ON^YL^/3IY,O"NWSJ7'\;O/UV->Y\O?HQ M>'KZ],?Y\?C;IU-V=?71>?+ZL/=E$GY;PB!G[P^/&'O27]A?_)MN;Q$L/RW$ MX=G@4W?V]#=O%H1O]S[.WP_VNA_=WT9?9F)X""_>!9]Z)V//OG._+UZ=YOIY^O1_V##\/^@?CSS?3=FZ,#X5W2S[]^G_WZ=3EX\^N[ M]]^>= 3YY]#Y@_Y8'+_]L/?RWU;_\@+/&=QH)3FWPZ1,L]6EM [&DT)L5?)[)68KE0<'Q4J0P,+:@?R(!0Z$4_^5PN MZU9$D^N3J)1Q(<)8+>-B8#G&DP20(AQR I" LF)4K7Y41 0X$0X?.TQ0.^#" M)W.83RU0OI%Q9)Z- 9<%G;M$'QAH3DAON\MW$C91% D)?Z2@K 05Z$IB_5-@ M%B)K<_1JQ[ G@G@!AETFT ='+K&_^S8,K34CUA6U*^U([0V--6+2$HLEP4A[ M(N'LQGC:%2JM.CAL@3%99\FHZ\!$/9S-XU5'XKI9N?HHG\@JSP6SH:UU>K(Q MV4H%:I!>J%"@!*,E05HKE'*U$W#F%?6FUN<&9SER\I=%=R MPTX?_1].IZT,C':,J2_RLOD$#.9\ MXK$?U*FG W5HZ'V1X@;4V^I$9 3*:JX0M2-.Q91F-@\C?L'M)#XFESD. M#9B,:X)84HF2(!!L! T.@H4NR6.=F4KM;<'!;"L@W4*-$67%J) MT'4>(;Y?,G6S&*V 6Q%**PNS5:TZQQJ4QL 49?1NQV$Q5+E^QL'_IWC\+>5S MPNT05W][GG,*<_I@>;9:]X^$I"U1F12U)PU\3"+[LX?KU9*>=:9/-?B+">E% M)W=]##Z,'N4NFI&/X2F;S;D(+*_TKB#%Y356='G1>VY+R \$L4$XT=T]\KZJY_ ,7)FS@,[0D.Q8 M)"[UJMTO)5W8TX;-$:L M8W_5H*=):/DU8>*S3'8^'P^GM"<3F7IQHC-HWOM5SHLYC;(E/G(CBZJE4L+G MX[-,:N\J^2O^E(&-TQ1Z'0.2Z&-&"0>"XX6-).-7FM@:#9%7#S=)+F@O@H=V/<=7P,EHT-+%%&J"NHR$G\3+J-UQ%[:6+J#!T@%^>I2H772(='$2K MIR:VSC;8J=-LI\GZUI#S)Y+&1QI$V>QXZV5* M*+/R,>1]N>Z1S0DVL:&VPH].IW B\X&([S2(IGCF-((2F=+I_!C.,([!!88Q M\DJ5:S=C6&P*6-T#3JC'9QC$^'F8;PY9+7@:F,FC"IC6RF,7/@/? 8.2)R&" M'DA0LAMDW?0O1* 3YN?Y!"M R*699R.B>M7L!J]&T6W0[__!YF$>?T.CO MV<)_Y^/7 M,#GP9&C,X0F=@(]P2N589"L.$@7S7 M0*F=Q>!18M$$6>8-X PI730PD-UF@%5JCHWE!>XR"A%D[F,3W(.?-DT/U3*, M^>:PMY1)9UYC; *_7K84)GG3]S!)1,,J<@D9)C=' ]QU%[_TF0HF-T9#[%M/ MLC"Y;39AI&J^)/=@%/J!8JC:PS;;,4BW[LUJ*;+(( M:6#C;9-8P,76$! SC1@%-* M9,@#F(08*!8%,(ULY.I9HK%)G14OV+_F\=M&O$0[J#:8]JN ::,=Q)]F^![R M"^IBBMF B&!I<*!'CUNIAA^HF%"1\Q(-9K(,K9*U$E=WE>.43937;B+ O#GJ M]*$_\QD5LE%QT)JR^38BNZF*;[>=[I[U>VGUV"\7Q(&9K9 !BV-0\6TL'?T$ M#:_D7NV(U[I]X[;G]=]S_HH3/)]"36&'(SEL9->M[I!-Y7+FG7SS/6@+,K>^ M&O@ Z4%WS:!NR;39IQM='O#3:FT3+N^[;7]>M6W*GW*CJ *NF\NLMLK= M/]N;IR948==QWK/MY.9] [(L#O!&L5H!O%:4.+M!)Q-7/5ZN1UUQ^G\>Q@%7'WXA M3PY\WH"(TE;944\\([D- +D8\M,;>XKD+_!;JX4. UJC'DZ-=D2EP$Y$"S8Q M/0,X4P"KPTJRY&0@,^O0U+/OHK:>WL!,@/E&Q'5UZ#0B*E;#%:^X,4Y-,3%U M4&H7="5HN2=2TTYGWJ>0@$X(H&B$3&\%6S=97,!L"8&\YD+NJ8ZIRM]&<%R% M4#D\%"I>7%X9S%8&71-Y#=)J0R(F-.C94P:S0"-95&*M+\-8^/#OF#)#)5G MJ(PPENB T9SE\&FR0Q"LM%$9EX^/BP9K2_LB-EXV; JX@O51#4IX[L(=!%ZV MTQ0;,* ;%<&S;MJ@+P5AQ<45XI-9S%%J?-GU/5- M\N+KH*R,E!1,P>D-_J2GWH1YE.(J\ 7U*1'V%(]1@5F=R^?%9$VC$\"7!4^H\)SIE00%\_"=F;,8\@LIMG_K,VB MY*=ZQVT0+7YF=ZL:8#_4V"J/RHE'QB$?A-!_H,&4NXGQJ0VPS&@?\ "SU(@;US%E=J$!IUGJM+]/ M@*:'MQ][) @%Y6-,DHC&\CCIR;@$N":PM:?[UZ)C4(Y:4\":8PB(SWP^SE[0 M R3]<#:#T9"/_=4.;Y+N@)WCQE]:++?%TI\UFE#IMD1OEF":X3:GCOQ9\ M-A2AV8><%+"J5>%C.!M1<3Y.,I#6Y,E@*CNAXIX'@2*H"O<0-Y]&'\63'&"< MQP=DLAXKPJ?W[Q\JP:FE4CRI(3[ZWMS$3#5D[8%1(%Z8>6]/8ALO\91A4AF% M9'N+O=K>8NRH4@&U.8LFC0 U0&KBTZFY@?DJ\=BZ'WP;&[BQ&A8QZ?+&B#_- M)56>4-\6;"ZB9JTGGKLT@EI\FID*[E_X"786Y'#J%"TY*MQD9E8@U8)!888N M:OAK>K='^FVZ#3@/5)-5+>8<(*#AOX _)C@.:X@TGNF8!?[I#?I\F'J $RL3 MIO(*8)K^@>GO@DJ6XWBAP:I5 E;KI?8N3B][=A";/E,L@^<]0&E>>^ MF.KN5"#5+5:K:AKD[]3 J+1TN'6,AT$44S-+&970U!J9Q$"WGS:WO?BL(D-. MFWH='=MV[F7/I.I]X>([$.E')_0:P&%]K%5!=ID(84Z>7RDJW7$\ J:\ 1Y^ M%1VL5W[[PP.-P@IHFOR$>!/.79UF>VO[4()+UY4^V-QF4MK9]:)C78H]&C5J9VZNJ:Y%=4X]5NLHY/3A[SG./(X M >(."(.QKW34,LJAK\;>/!&H?DY@M$DPXRM$$2 #1I"[XNP.,T:338I_@=9+ M6:D1P(R,KTGI=2IDVD&A>!N3K)Y-2#%I)VESS!7)<3Y>,C2EKI/4R.4]/[0N M*]#I#AO!G X39V@*8!I6TG-NLX(U@)-R7%6;"TKSJ?C M#^2&S<(96%,>!@\?RE5#J[Q*1O+MIT=1&WB0A0ZB;JON9"+H!(]WP;M$Y MJ.;$-IQCVD&U(,DMK:T/5 M23L[C&A;[B<9"O4\*$-)\"7Z9P@/,#$K,#;?7XM3VZG+*YJTH%"%4'-XW%C> M36%,J"B/1Z5SLI0\:\QX7[, 59U?%BV"QPO'#[\XOPY(XZ\ &=]/MD,8?#9J M'J?^/I;T>N9+/@ZNH?4SVZ[E#&\*>!INI*)7>EF<&,&IC2J7ISG6+R_/S4"^ J)K] OJA#:2PMNS(YMM!GPU M,/7<",^I2/;9F<%%&22M'QP/+X:@SZ/1 2]# M&34PI>Z=<#N463\@67"_T ]+;][IQ9 ??BY?"R6*ZT4'./3M*9T1:3#^ U!+ M P04 " #W@P53*'S$1J8+ $?0 %0 &=D>6XM,C R,3 V,S!?8V%L M+GAM;-U=6W?:N!9^GU_AP[R<\T"Y-4F3E706(21#F@;")6DZ:]8L80O0Q):H M9'/)KS^2,82+96QC89*GIF#KV]J?]D72ECC_8V*9V@A2A@B^R!0^Y3,:Q#HQ M$.Y?9#JM;+E5J=4R?WS5M-_._Y/-:C<00PIL:&C=J58AUK"E(ZU- 68]0BWM MO[;U/RVK#6Q[>);+C:)UV12OFBX79*[^=FPB_= &#&I<;LXO,$M*D2\U/A/9S MQ7R^E)L_F)D]>381'ZP\/RZY3Q=.3T]S[K>+1QGR>Y W6\C]^'[7T@?0 EF$ MF0VP+@ 8.F/NAW=$![:KR:UR:=(GQ/^R\\>RXJ-LH9@M%3Y-F)&9Z4W3SBDQ M81/V-%?R,WLZA!<9AJRA*01R/QM0V+O(](TIS@H-YH]+>='$[^*3?^@_%8(9 M,9$A='\)3-&5U@!".Z.)ICO-VDHGQ$N"NISX,B=]-_>%J?#Q:L&7SORV( M(\NW_GKNJP(%5@ ;7)MD'%6XQ7M"JF3$$L/3<$Q(>CH'0H8P5SXDN7EV'88P M9(Q+TD78_;0-NJ+A[4+':%5%EX@]@%1W*.5,F@ATD8EL!%F,;@2VE%N8F0Y, MW3'=7MUQ25?Z "TG(.FS>:?N'K/Y@N>G_G= M'V%FWI'%%*.\C-W!7OWEH!$P>6.L;%< I5,>:1Z!Z4 EXH=#7M"]2GB9KG82 M4'TN)/]S@^U5+^X]D6..9;FM91%W0//W>Y186VBT260%$LKMDD?QC#:&J#^P MQ9\Q*2OK.G$X1A/JD.-QH[B'MM*!%@2XZ,1!LA.L*X^4XAHIL5CI8.ZG3&B\ M(2DU_@"XMQX<)"5!BO((*:T3$M,'-R@< F2TP00R)2RL !R\JUI5AZ?KSPEX M)*_AZF0(,8/<&]9%!%6T>;EA$_.5&8E1R$$_(-"+YJ M70_+\1T.&4)J3QL\A;0YDR(C&(JIS3U490$!@ <0FOW'>Y"29#$Y)B,U; /< M1SS*S 3B&-6);CIB%>6&$&/,8Y$29D(!'ZJ5A-.:-%K'(>H*]B W2F]-P(U1 M^PLDH<$/))KX<19>@9+('XLVI3:T;">'J/(-4_ )S[&T>O>VZJ%RV/O [#@G M;8"IR.CW,1M=@TH[^Y93YCP'355WQN.K!"JD^4J.UC84J!5[.\D:*DG(Y%, MR4]=LDPD'B_KYJF2%1G6.[ 6J9ID2U':#HI%8=-C+_ M)4Q5"P_;, ^:DZT*DRY"Q*&G91/]94!,WB03:QWV5 DC/C!Q]P2)91'LMJ=P M^V\=)-T1(R=I9;-O0S,)FW+9,)"0%)@-@/CXK( ALH&:V;4,*]40%HX'J9J2 MW-%K0AL@#(TJH!CA/NM@,!Q2,J1())E**-D"F7K"%XZ=;8J3[_+%S,8=RW$3 M?S>S$95O% X@9F@$9Q[^CC#AU^L][NI5Y>B19$A[#AS2RJ)J-L$MQ=6)]YY" MZ%;0M'D+JQ5) AH4KMY7I_R>DJ_%G.?6:L6^JBP@6Z]JC)LWWE!N7 U*>DA- M"K_:D;B0\-JL)MK(.%4L$(8]ZM>\XI2\&6$0U;RFBXV M+3T;.]#4AVZ]+.Y[]1=JAO(F2OR$IPD9Y+H558=77",F<3?/O885&6(0XM+$ M.(VA(R5PU4H#=28SW5C3?6CRC_L";(# M+;-#,B8'+!L6PHC90L@1W -%VZ!3= _9/>'?8IMWWG1[9$,*F9KD7*6\Z<:%/3#A.[*6!V""Y1;N MR@@7AZSBJ(PG6R!37R7<-\-;&$AR37CF9Y5%H:7FYRRZYW#_>OK^>/3W7S_T MH3-YQD>GQNO)J/\\Q9TK9WQS0D]/OA7_[;2GS#P9Z:]Y\];.V2UX^WI2>ID4 M]#L[__/ZNMCZEAM-+BO/^9'1HMW!I-DNOMJW_1$I-LHH][F*JB_3NM&]*>BU MRL^6^>/TMMYXN"V:5OOXN/\TPJUC8_S>IVAHZ87V"4*?*R/]B4V*Y9$]?1C1HUKCH6@=_\26[=SF[X=W MC7SQWOS9?;)H^XA_\E'FZ F],_OX$?Q_F?U<=QMU+Z MWJZ4Z*^;P;>;DQ+%+?CXY<7Z\F.LMZ='7Q[Z7U"Q\WA=ZTQ>N\WFP\7?6J75 M%">3T[.#S<&R6F.KT$J2G- L!/ LZI*G?ZK6I&18J>8P87CT48\\@8F[(+2Q M_*YT4R,(+^TUXQ"Z6#MRL&!0NDP7._K["'/-#1?U\:SB0Y^ZMS W541-MS_ M>0HS_G68[1U^<,5O$.I^8=L4=1U;5(FV20.H+63:6P]2GE)%'#9[9C<@4=GO M#L;BZH-X*;$X8LM;X$8W0ER RVF'B5V1129>YJH:J2L-BP ??SEI_XE@:D83 MG* C69\'D\5T1QHQ'WH5?$ MZ=H]QYP?BE!E27+ 5-/*G>TJ0)$)KL"V!CP\70(NFXB$/ RJ,S$)U/NV+IG^ MY+7OL6BZ!HBZ-8EO24>]]P0HST84658P8LJ9WFZ<;5%FDH7R/*.DD(^.*SC[ MMX;7SHBIFF=O07W'KC&$2CT&CQ/PC[YH:V?']L?A.G"Z:_T*>-S0K$?E23+; MQ)N8\\,"RJ-?2.@/99C^RO4H_:+2.MT%U;V[V WD]YW;A-2NQ^=I8G=ZK*/. M%FIFQZOV[W9EZ!_+]TIU/)_5YY71N_ 2/)7N[XW6==2/Z7CG*IVS6$BLWD*2 M@[W=^[;GS'8)^&-9II]FYW3N5"/KWO&Z@7?O_:-FB/4D00X3+<5E^) 52=;3BV1 M_!IA@/747)4?_$Y;_#J$AEN>Y]TLU0#<@JY@5]EEKG+ 0YQ]!M"]ME49H,@$ M:K'=[-LSAWKO32KO-'&-,4?\I(,X11AJHA*RJ4--<[?0$DE;B=Z$LSP07*SZ MT"UTK4X@U1%3%1&VHGX0VY*H-(%: '?(N!O9K D-""UH7!,JQ YE3_YOOD.M M!^EA+:.X%E@O3>#JN$*P1BZ!89/R!X\\NP &N4QH$;(A9=-@0??OI O??U$$G>^EKM];@OJ?>J$WT 1Y;Q_Z]46+@D01XYP8> M3=F!U\BJ+YV/\0-\,=*O-K&!.8MLLQ_U=)J"('H^QRA M(72YENFM/+'M JTH$U8^P:J8A(^0O@OT5FL8;I(J?SV5S#J*8H.Z'G!L;L_6 M'/@[E!_CENH(P]6K[*EPHH@%Z15B?E7[DL$J?3GE.VJ"N5B,5WG?$[[T:[:_ MM%'EJ'R,R"%37^0*P5%8[25SHY [(F;GM?N\V6XM,C R,3 V,S!?9&5F+GAM;.U]77?C-I+V_?X*;^_-^UYXW!^39)(S MV3WR5Z^3[I9CR^ED]NS)@4A(XC1%:D!2MO+K%P!)B:0($@!1!.GVS:3'-E&% MIX!"H5 ??_^OI[5_LL4D\L+@QU=O_O+ZU0D.G-#U@N6/KQ[N3R?W%SO(>!YB@&+LG\]W)1;C>W#O>R8R@(%J$9'WR_^+U_S\Y/5G% M\>:'L[/'Q\>_./1O(L#D])0.F ]Y03 ;\(>3V2HYF23+D]?? MG+SY_H=WKW]X^]W)P^SBY.WKMV_23_[M[[X7?)FC")]0OH/HQU<%2D]SXO\E M),NSMZ]?OSO+__!5^I<_/+$?E/[^\1W_ZS???__]&?_M_D\CK^X/Z;!OSG[[ M^.'>6>$U.O6"*$:!PPA$W@\1_^&'T$$Q1[*5KQ/A7[#_=YK_V2G[T>F;MZ?O MWOSE*7+W+-*_<>,]F>( WYREOWS%\#HY^3L)?7R'%R=\BC_$NPW^\57DK3<^ MXYS_;$7PXL=72W<7G#*H7W_[[C6C]1_L)W^0/R["( I]SV5".D<^F_/]"N/X MU0D;^N'NIC1;]A&3\1G[Y9GPV[/_A&7NCUM$4UJJ[%8_/S,E^_L5G?LJ]%VJ(:[^E7CQ;D8'>1N2=S(L-GQ]QA4 M-),:JT!^,)-3* KS D6K:S]\5%T$^^\X8T;8.D?.ER4)D\!%@1N@."$X7(0; M=@)0+2>%9]L0)E$\1Y$7A8L-/6RHH#@!2C1*UFM$=N$B\I:!MZ#"H[]S',I2 M3$^Y#87/\;#D7#J,;U J2>0%.(HH7W,OX&Q(<5_SF2E=-G'H5HD\-F:XF"'' MBW\.PD2G-5]9DJV4ZKRB),0IOQ\#\T]GTI);L.(/C4*&#OZ8O0DQU'Q MSXV>07'H?,F.#1M*H0?&G,K+A")*"Z,:*[ M*6+GK0Q/1]^8/7_7:R]F^SFBF]L)N>JF%R')==[TN3E;+)FS14*)X"VC)"7( MZCH6Y"#\V=P@W MG_;RO$J-8Q)9@0D@SW'S *;.[!I[0)Y%\EI&A>P#Y],;*7"V+D+AA,H\7 MB9__(6=%"N6N-(PMESTCU :(/#>[Y5*Z]*CF-NJ!.(YB;\T<#0OD MD2WR$TQ//+H+4R6!F"8FF-WRJ]M1;8[Z9 #6[)Z'<$%QI\?VPF.DO(J&U)BF MTLCFUV>^-Z\:10-8'U:'9>Q=7*UNJ;[@Z28+TG^&&.R;UM+/\ MR !;.D3T>%NX5#TZ<4@BM*%K>,LX2%T+'CT!J9[9XHV/M':V^OB@Q]"2T.L4 MTS9+"O:_N/.R[=.7:F9AX 3+\*=YA* #V%<]];(MW]US@2B"XY4*PS\^D^">F] M_T_L=IJ,S- 0&XW12U)?!MW\*&+N"]?U_(1N$UQW:U#5EJK#0VP^3HY><#WN M%_;#:$\3Q3'QYI1#2IK*(%ROZ5HJ^&NU=E]7E-Z&%%@3 M?VSPI*@]F529% Y@3-M7GD!4&!1\:D+*EZ&3L#OE)'"OJ.:(=S>'V[$,;XW? MYQL#$4>60T$X6AY-QN+0ON&,NQXERRXYIRY>H,2/7YUD9(H,[\?P@OB,?G*6 M_>9H(%Y#9G_09O5].N#W"&87=$AZ%5XCD_WA-7XK1N@H-U! .; G*[Q M>HZ)(KJE3_=J"8)+>K=1XXU]L.>(KE,OX$?1!TJ[Q!5^BNEE"KLY7^QCG6C( M?%U1:G[HE$CX+*0T)#D%'\VQ_^.K)#I=(K3Y8Q_R-UU$. MK(O4*P0ZC7I*![X/LI^0\@SH4LDYRE:-ZI+/OEZ0<*TGT#ALA2PDU +X\=5K M^@G?$S\X],Z!W1]?Q20I.@>51<2"#>G1P_[#GC&WR&<'Y"2^0(3LJ!W\*W-M M@XA,CO)984OU+L3&]5N4FB2*K5+4VF39"]C=_JGL$XXSGF'V6A/!_22&*ZQF MP#(9O1'O-!TA/01SSZ?7G@/-"%)$#>0LZD1I"36AE$OP!GGN+(U M!!!*B< X]%H9DPSZ=T;55T;BZHE='#%5HCP@I,0AI#0:Z996T^"EU QA)KR_ M-NV;SC8>O&TWB@.F%OEOS)XH>?S9+;U^<.=!_KC]"4-MF :"(Y!*,V"9D+XU M*Z3#6W[*)B5U]>3X"4O+?!^&[J/';K0 PI(B/ 930 [!3'K?&3<*+O$"4QZS MQ#Q^#O9W1$D3'\DY)0]F)L^_F3ZL0/=<<5\-711'6^=[LXHO9030'!B%\LI1 MR.^49B_^'PYA5GVXV!K(C=#/U@1>NPM UU;./ ^W:,E]QDH&S=9#IBO,J"K>ZPS]YFCAD' M$6$[57L6@9KL)/!K][]UV'\%RQ!8.0JHV;6DM39:'6:MGCK- ZRZC2&%)*(U MEKTDQ*K=$V?&&NS)"AR-0!ID8=@W=W31+9"&=IG:# M-O6J!MTHQ%%GM)GWLQ7C'--J351M7J"-%R,8'Z>(ECT;0$TL0JQ@PC[N6*!Q M@-T\.?\AX,EV&^*QZQ6(A%I(VKW@J FK#3T9W:9Y&4W6";\!E4,4B M<;+#J(%+<@ZKP@L2='//A80E_4.+\8B>Y3.ML_2. 6R]!!@1V4T4)7V)*Z-ETTPT M)*<P+T0+$?W-YB;A%-V3V40P%GB$5T4V5T@%1*D<(H8*^ F4UO2=A M%-V2<.'![,OB^!9?%12 +R$"$X8S3:O]!,LLER@"58UB:G9O&0HR:0 ,Q&MY MAR-,9\*2C2_I#O1#GL&2$04 MYD=$ON "KS >*#$YBQI.24Q-B$&=-!G-M".>3TE/W#6%B#')JF#V(+$VTO;L M AWAM0()&IR:@&O/8BT@Y>"K8IKROL%;T:44.K3?4G.<]8) 1<" MP*^>Z"0H.UZ R.Z&FJ\199NU,:*X^)SQ&!,<07HZ8/@=B_T"*C.9P%?]A4:9 MR69X3@]PJ&NWB-9(3!PA5*V1L9HU'NC@8(=G8?@1:>,B*!)YXMJG94U8TC7= MN=XR2!^ G1UOETVY9$ %+O]_/M_D$_>?211GM25X$--M2/@O"L6A9V$:\@!W M^/8V@_%87/T*%B:WOH9_T%#$)GKCN?TTH@:3H)_'K>8A!J#.5"$QFYM3P9,J M!DNFW4P(Y3+MM="+6'):]HS1+G+9 M(P56O^(S/217E,1D2Q7O$G]*V$2FBZ/H ;Y"0+6='B>C>%_5!%G""0$O<_NR MMGR3Z;1#M%PK4XKE.7B,E7^)R+=#FRBV 8\/KL3Q[P6JJE"":M MVL8CC=(KK=!:R=5C!A,N4:%UF;5Z@3#\:RF!W<>.NM@/(ZI6#6#I651@PY(64!!U0= B313M.F2E19."V@2Q1=,5,P E)& MU#BVC@@GD*ACB8H-D'M)FKI-A[KTMI+'$NSAX^NL?2%W8Q663C ?=]R+ VU@ M+C)),0@]7*;.&]Y4EBI1$K)W_BV>;#:^Y_!'?I;U*!A!AUKI MP0:,OR(J$N'#8#+Q@G21&)7-?M"!E#GH+J0#3*VGB;*HTFB8?1V7<[ST F:, M3!>WF'BA*R6:UD%L&LL2@F@'0>9ESCSX2OM#>K"AZRYY5"2":74.]4\X!DYY M*%,8ND%5P4.F@*RV19N6F[A,"!5X*FY>X24/6L'N1:$]/9S%J\;&D$^:+NBV MAN::%O-%&&RIU JM;G3@/F8YFH<"GR!TA0'Y86>J#%Z@"D+DL6\)!C*K?3_B1_Z9_M7N@ M/&#K5!'"7(+&:QLWJ@4K,JR2'KI%*XM@+D+SR=6R)W;Z[Y@U3[W'#OU+L,X6 MW3@:O.KM"'B^$IH<^:!6D_6%(,O2>!6X-.CY8C 6J,W]'GNNF->C<8U^1H2@ MH&I$"_Q"&L,.6(3:2.4R,Y9Y7>:DO)+J6%!RYNF,.]1#5Q^H7&9 O8I$WA#V MN^F&9_I?/6'B>!%0[I(Z%\-UI'= -A=S+WZF=&U9EW$3&R/V.#6BF\O94"XU MUROY*9!G:-!K=!@$F.=]?_;BU:^8/25,'A%QY32OTH"#M7HUL,D?YTTYCY19 M4#H@M08>KO;L %8N-[/AEDU=??0K+8!H6"!6![NWH464+ZB6,!V[B6C'O68Z M-IKIO7NE#&7-6TDA@ 2[J6 /"X#5?I:-N&D=9@B;1$9VA9B;=FADLF_ZKII_ M@:+5M1\^ONIRY]D#EH\&6QNZD:#FN41%QL:Z)>'6HTB>[QXBUE)@7T9FPL*I MTB9:D%/38&,@5GV#\"LQ'\HX@V2M?2WUT_07=DMA-=#'8*I.P\#Q?%R*$9J% M0]BC((S:O$*862(P\H/IO7N)J7'K>"@S7"=K5JFM+I[;T))IHF?5*0ZYZ8J+ MHQ%PJ 1+SC/S =>T[(-2^F*"]MSH?0FY&6^PRE-T%@2C"%_B]+\WP666QGM! MKWE+H-?,=JK/7^ 2R,OTX=;/D.HI9B[@EA+DV4[1IE_4EXQ;,C28'B57'GNDL7A&Z\YXL>:O;W(QIK@(VF,(^9N*X M?7)/LJXA;+?-F^)6:)9M':Q&72CIHU*5[J>'8.[Y/G8/="6?W*1&LERJ6$-" M*C!!Y9$?L"L*VDDA2?KY[-)Z9(%2]X5KBI_\O2O>(\I6+ZE MV[4,;7MU $-N"![]Q..;XO[UL(CZ,U+&0H!!J@+(.U LQW,\!S^3"MA@[64% M3-P$6QS9C^1I8N-91/(TX@Q2P94>$7GFN_.OQ".8LD177+R[]5$0TVL9"]W; MK*':Z2F0'^(6E]@7I3=>!;!EWO7-2/P\B;P TXMWQ$,OV3RSW\ DWR@Q,,#0 MGJY";\0;)F1'?B:6U?ESV.4J8(,Y/05,7'L!"ASK!WD3&\_B(&_$N57HFO%: M#L8N;X]]AWD9Y%M$CY9+/ +!54:T\75D[-"P1+?4=-H&O [;,#S(9D+8XM\#!5QJL3 (&H+2-XD MU) %\P#7$TP+B53?(T $K,3 F 2LABQ8CQI&O\+#'3W\B>=D&Z6Z(CJ( BB7]#[9;-*^LO)^"@.',G;P"@?NWI+CU65@_;+2 MU(=13$3.%RL/:7NDD[)WHE@UL=P+=186^G%*.29DQ[+IDU!=OWM7A#108$^@ MS(M[$U#V$K:Z"O5DSW% <70\JC3V3%YC%"<$QM;58L3N559'[-UP!XE[:*J( MR5]C(XYJ_U6]2\0MNXN[R%H>8)DWT)Z*.YTCY\N2A$G@HL -^/H+%V$:@<5X MU>[RRD+B&0:A3UI--ND-ML_&O^_L# M,L>CSZ@4SOTCD\[4&2%'>BS[0Q;)X>R9+$J+_F!.#SV>(*'][I4/=G$8#'8O M-!+4-)EJQKST(B8?JOE@-X,D:7N;04; Q>T@BZ5D=:<^-D3!: L7,^1X\<]! M^.AC=\E*W&H<$_PR6 -$@= !D_K=(K@^*P^JVRM6EI!@=W1DO[3P^U[YG:2W M]P5H #B@+9&';Z-"Y': XU>ZGG=A.#CH6=%.53\DL7[@OHX-)09L/BE("[X2 M]*$ KZPSK8]]:"Z)P\?KY!0 MFJ68@FZ;-IJZE_;JN'WM$AFZ=G>)I)2/^EFT@3D@DRQ]O8UY22'M,A3I^V]/ MIT<3O4Z%;JJC0I\1#02M%LYHDV;MX__ ]7^QN0;FS36T5?]QGXY/80R[Y%M( M=FTA>#1R7WM GKK5J H9>1\]YI(9G5G"*>7)W@EE9F65PBRZRF'+*GVXP:!UW2&&0(P6X4119L M)BKHK(M2IH(BVD.R Y,YNR)1UO&6YTUH!@SNA[G:@IMV0F(=DCK*(P)?A(34 M;*<%- NQG+8A1&PP1\AQ*,WYCO]K]]6%*O+GY(< ):X7L[38&!-OG86K(G^? M2A"E\*@]R&L,:[>_C51HEC9B("TE>8SB=%%A?=E.APGHKI"PV@]*21Y5;"32 M[=43QC")*=>%R-@[+_K"[.N'P$E_QU[<= XLS:$MWE 4CBQ=W. RZD-*-XC3 MN'_&RP7!]$QE_X+2>$)Z([ [I& #Z3 @R-?OXY"2HCPFX^NB>^'CZSL54U3U>R>!"%MHPP.7BG#B*6]98'.F5O3/TSO0M@Z MS.#%)HU':VL!W7.S(6@O_Q7@)I6G/GA1:@":"?7[/H7:QT&K0'Y$IZT*J/FU MWG"]DCOF/4\PZZ2[3)'J0YSM5,=RPY? +Y=<4R-+Y1/O#K.)I/GWO/X-*P(Z M][UENX-&/QR8KQR^32Z=_1JW#X6>"1A0/_I%%]&^A"=,A-C M.1;5TWZ4%:P0_MA?V_?'IK+";^'C_Q!BQ MFK(J^^VD>T*/NKI*VO%D+USV$.RY60VIZY#4D-(XAKJ,;]&LEZVJTAW# 45T M-559T3IYQEUGY5C_92Z4/[%[X[*+VL*C!@CWA>5M]*@^+*2LTM\E:]81N<>3 MR R/-DZGSG5=P 1FM@YS16=<,W3Q!WKK9QY64G*Q=E*X"@./4MP=<(0)0,LG M4Y@!O91<,Y=>H0)X/_7*9'FPXB0UMM.5$9?M>FFQAE/1*'TIY20>V%(!IV'< MX,R6;1I/L:;.-[:OJ&:3Z&B4MC",VZ;R?%B\^G4NZ*2%^X#2U@05GKJ>2\^N MT%,VV(<*1#V4>FJE;/7I6[?64SN>,ND_]@I\%#;(2YT/O3H?Q^ZT?;^6V0IG MG6)9M/V6_[.K/U)E\.=0IJ,CO(:[OE6X.0\1<:>+2X]@A_YQ--EL2+AE#*65 M?TK!$9TDWX621<,$;!UT0AZF1\Z>MZ-J,;Q1=+'3,.OKDGH/F/,N_5FO5JT1 M%I^#>H&2GN&.[DUL%@$HLIEU.-Y96EB*;#T+)6523*U)E.KG5G4.$\)+^/E:KWQPQUFUNS3(:Q3R[5OF.:S6"8PT@#I6=^VDG/>^(J^38BSHG_! MSMP!:1]5'FTZ2?O71$Z^Q76O3L(NCHV"]]SZ"7ITO.3EBNH M\2VIQLMX:N9IHPWZ,)_1_(3C#V%TF$<<$V^>Q)R38M?8K$QMIYNI$9+#ESL( MT%)O^KUX![.)A8LL@#4(ZS%.3\#_F%_WN]@+!_KUU_6[P(K9#"IDZ'*U.,=*:GJ1S072_ M;G=(I9ANS?-3963=LB/C[X:P*&F(8BR@Z@, \#=X3:, MX@LZ"K5_4Q/6_6<2\=K%4J@W?&Y=X70!OPD6H\]'G-HLC)&OM^P%GXY\[8L M,5O;D9-BKSEX7_D^(R8)ONC;01A47? 7@F*XM&.IR,"\ZIHL>,3/=\?^>#:WD]K5S2/8ZAYM9F.W MH"/IVU>3R$=,EIB4N):20]UWXT:_%HG6JH\V[BHXJ^;K+I!'MNPTB,)%O,JB MVE&6B88"MQIMJ_KX4D$WKR+L7E.Z_!2*>*!78P:%T*0W02:?^NS%P9^);?P/>R5:D2A(R*OY[33XI??5KK#*0C+; M0 7@AE+\1=X" NVXWV7H:ZQ]!H.VV"P)5<(Y:'MI7N+,EXR>"K\<_'H4L&WI MU=K6$A0)K[VAC.UE-Z:U5EE@7YF:JUM8XOXXAJJ81?M4%N(YO(>2DZ;>[1L5 M_XX1B?:-# X!'K#+R1"+UH-K3'G\H40HX3SK_5%M_Y86+KS"%O(J-:.Z1-0W M5T2]Q#'R_$B9(PH!OHGQ6LZW!\V#YML;#%NS8^.[5UAFN>D,H0Z0[]>,(CI#K_R>2S+CZ\BO,R>5,RV_FHHM'6^^XC^&9(+GW(Z>?)@ M#B05^D#+:T6_)$XRQZ?TISB("H$AX,NMM&^+!Y&27&1+#YI<'0<>/J$UON0G M=M\KI)8'0,LV7QZG;FFZY30^C1TE*?AZR$&B$12Y^./U4$0/+'>\0(D?#T'P M#'*9IUE#%QFP T!$ZVM2]D*\C;^]-U%,+TN0JKR=*OP.;M#<+8>,RS=Q.XWM9S$^3[NYLU<_P1 M#_EU3CO _:3-S "Z,K6>]Z44&VW48<^^PFO ?8PW!0;RJIN40QS%-_LY[KW# M,(E91ABSY$OOT8UF5HYRKG6#-]^'""\2_X.W@(ERD")L*R[9PBJ1$T1K:*EA M[\=D'9+8^Y,OVH\X7H5NSXNAC@.+B;Z#6ABUTI'(%;;P")=7W4 '_#8DY(V7 MO$+_I?T;'/0[DQP_H"]PJBQH&? @/(&]OJF0A[M,&'E_TUQ@NL]O2H(S\/JF M<\P4DYYY-C1RN!5]OBO^!LSSJD >;FV!^&,U=FWQ@%&1"U!^7I$0H$.VAHQ5 M#ZSZCA#)#?1U[)@0D->U7CY6W:RF103QCG7P3Q75A*JWKN9;NP5BQ4JA[)2K MF[31?$M#A(YLR?_6VNQ]3T;*WML@)P4GW!,V0[7F)7]!=$\90KC\$UU MD)H 6(!"7WF59[]0L-D++D/?1V3_ ZE-)3?2U[+E)'&5JQS6KR]@- M935+<.8+69C0+[C"0S?_+5_;.W86$+?C!OND2B6XX_.,E M#/TE#/TE#/VK"T,7ZJKSW8Q^#J;99>@"FOF]:'4I;&4:6!@5+",-J,-EZ$*Z M>*44M\*JEQ)H$5,0)2U!&4@QR\K3HC:&DR:$YF6V^T<*TCI9&[X&ED>U\XXB MN.+FEY;*Q"$NV!_1$P2VI5&'B6UYXB /?JRP?Q)C$A7WB\*C7]/W-IOQ*IR6 MAP+[35@ Y$5\1,[*"S#9L69:21RNP[GGX]HH?%&9_<81+(;.Z\#? @>4P7R= M$ I-0EA+LVOOB?T+,A&B@=QXY"6#G6D[."UB$R[B1T14DH@JGXP'Y-H)RP3F MZNR"#QA%F+6ZO5EO2+CE3Q20VZ")GM4,+\V=T(A?>ZL;5SG(I4?K/Z[!5/:= F) (8K"U06<)R-#UVZ,/YU M(>GW!"J^J(7DLQ)@AJ+98**_O]ZZ]V2^>KJ;O?TS_FFY#=_>3KRSOUYY5U]V4W?^_HUS<_&/>_^W[W^: MWO[RTUM_/?OVV^7G;7#_K?OX^^U/OS\LSGY[^//VVZMO_YR>+W[_Y/CD M_O7ZF\GG9?+[CG+OO)E]YWE_O=@ZGZ.GMY-MO/ME2[ZYN?WE[?K;?P3K./GI M]:?-A]O7;S_Y_YA_7I/9-_07/\>_3"YO+A,TWWWXSO_FW2*X1>^__^^?T6_? MOO['U:^/\XMW'V<7[\B_WJ]^?O_=.Q+_7;VZ>/=A]GU3__\ M]O>U>Q;&OWYS=O/C_YY@:(F,CE C!N/+TF[(!M/*?6VJ4NCCBQYXZL&\QC.)I&C/,PK7:,\)2&5 M; %I-)WZH.*+JKSO9WP1&V,T0W70-EMGG1\&!]I=SL?V4<8D(EE@6JN3F[WE MZEAL' 4<,P%^WV;H])MG<%.ILI#G&!C6Z4?@]:7%/VB7!CB. MJ&D@TT>202OY'K/]=41>GV?0#FK/F?A?4:*![(+6235XR3-XR3-XR3-XR3/0 M5#= F08ON08ON09P@G_)-7A6N08O19F[!R9(80E3&K;4*GI?E!A2@,T4;<:+ M&I!@"YQ0F_!3R&IO;'",)TN"P0.W&LA9?+(Q(+XF'(T63'W)%WC)%QACOL#+ MN[&^$M)\?%*+8C-_>8-[-A[VB[%Y24:R\6P:Q7DE7H.%E76'^(2KBGXS#% 1 M\PU<0CT+MI ?\940+ M_&4<@ZB<%I(6FRAHB4T62:./(EER:1![U'1G>29!Y-'AT_A;M).N@]\RA!6+ MJ>,.:D-%(HE0>R/UN8/JM\YH9-6*FZ21U>\A[83!%I.(UU*EC&]Q1(U#%+A) MD/XSW'!':Z%J:(=3^V)/;+J8K?"OG,(D?2OO&A MN8!*04/FA6LIG.*.$!)P._/JLP/@C7L$T[5DG*9K,7!5;:_CS7M&8/WS\#A=T(3VLN M8N_.S'E(EU2X<#V"'2KP"&UXG3$7!9@O+X]JNB#VMGA#E9YN(Z0*Q.>,YG1Q MF=.<9#0G^R6=T63FOZ9G4X^&#;]"NE6GB]1DGFR1YS.8Z3WU/?T6YO$ C%GK M'H9.:\N,?FZ3I_GVCT=$,B7$_RVIEMO&&+]DY: R_T1[1/+N_J&39 K?#^# M!))+$22 UH]']&[W]&:(+'$\<58>WNJ*2#C:<]U&8OA:'7;&U%WFVNVH\ ZC M#.*J :OV"I!)!,0947T=I50:P;YW 4[['8NFJ;I7_S<'>AORUBPN=LD89AUC ME_$*SWWD?(F<%?U;0Q$05SD=#LP#HT/O9>>,SGU*1_.*H#!P_[Z<:^217Y&? ML)#59)UNUJNG#5UDV+WTMIY+A79'F1_6]4":ZR$\5ZDO+"/W WG)FLYB F7] MUY EF/I4Y8UK65;X'H!!/=&7:X+Q#35)Z34\'L>BK.7Z M15=*2!:J/=YGQ+B,6>[UG;=CXET0[KE )5ET#B/AT][%# MGS'CGMK[6TS0$O-?7E)4]BMW6$I'V-S,N-QYV'?1 M7J$N0H)\OWAOB^+0^9)&L6^(YS"HC=SD_8^-0^EXB(.)]_R$ M)P+*: $#F&,?KFH%!)_6'YH,KQY0FLJ'WN&GJ:'L77#85I&ZW(' MC_Z;KHB;("=1E+^/@OLD8CL:UYV )F_82EP,X#"5E._1[5@-;9DH$_55*N#] M[OY!*2I=8I@!O$W)RTD:&P ?90/9.\SZD'67R7Z<03Q0FQ/+ 1_#E<-:"*O% MRLJ,\[P$EY=/3E^PFR]BS"*IXOW87J$F^Q'V9MY[7OXM(D M!F0QZ@C=",H 9DLC2_>(1?X$[D=$ON!8J7";_)#6?9VP8JW!T'PY^48.WN, M$^13'B;NFB+,9L%R9KH+4SCR(!PFL'(5HRIG*RD?VOETSBGAA<=C.^L9!#FI MY:D/Y\;8Y7!60'N0M>Z9*9S$G,-P08UCST&!ZWI^0LUY>K8$5!%%&TPB-B=3 MM73W%*>+G\@E#D)Z/AO>RNJCVC\6C>QE#3@EB@UKY0Z5\P1* MA6$*;U<5%D&VM28KUO2[]IXHY1AIX@]1G)RJ&OU36?#M(.XP9LY?$3IF*[_L M3><*7W#':3TE6YJV91&6;A?U$$&EI%?)0>I"$2U+;IX.0JEJK,9\[+Z3S3AK M 7,H,0N+\K._S:$X)MZ<*@UJ;%$;BQM;4<'8,O0@W491@]S)A3R!I DD:17.'*;\>JY3! M_RRM XGCZ:+0;0(FKJDS5\]RK1@4&D3 !^5B$9(UJR+.23]0S.4BO^N_M/Y M!;+7!2B9KR>8UZ+05\G-(]AWK(#(IP4VR4<'-5'-PACYMV',:NHA/Z,GGSC1 M\+FE/22U]O:0-TU?JC=L'Y> <^1\69(P"5A3Q Q/1HNPDW6@S.ZQ#'R_$@O M^%EN[ _5QM MG5W4QM33^7)49M)=6U7& SSCD>_7K&I-,15ZT"B =;SPPR"F M:_;*Y\D"/[Z*\#*+ 3+JLSAG-2]Q%$VE"+ZY,'8>2):0%IK1;\D3C+' MI_2G."@V25*6.DQ$(TWW>1JXB,F2TPF2TJ*J>&/ M)5.H\8RK_[)_2TU9A>P/,L'XL@AWB9]G\FX=:^H_1CO^MHU32S8 MNAMUL%!TP99S3/5CH4=>%"XV]-Y %R6?,44A2M9K1';A(O*6@;=@\5@QLY86T&5#+!RK-PPS\I&]6Z@(*2+Q'W>L((2L M'J0?%,1!_U]5%.41H?:%/3570) -_\&E55[4(KX:EPJ^N MJ)SBT<'4BH:1A55*=^BE&//63.F%CS45.-^=X\!9T1WV!W$,PFLG_P\JTSQMF:$!* PA,1MI4:J6 M3%$Z8M1 $AH?@KGG^]@]D(L4'OW$7UO="BJXMZ$ 426%%?&X2*(X7&.B@';= M=Q;>Y+11KITW2#.)@HJ[161*N&O,Y?V>ZONZF#\2A'0M!G%#/=XHP6[409 & M'Y/0P=B-KNE,9X2N+ZG==/R5M0Q:T$>U&G2,7]WS)'^>LYOO<+EGW^.OGJ<8 M:M"!Z61RI);IUF,_0$NYE^FF[Y^G:!H1,]XW)%>6-3;'14+(40$\0T=3 SE[ M<3VPQU$3PNV=.[2N/+X?/K(DF.N07(;)/%XD_K%!GR8VW00.885J+W'Z7YAK M41>&GK&ETDU0K4U&#%S#:G6!]#6LN+6?EP3;X&KM-**WLZ\9=/B#M\5T/<0H M6+),Y$D4X?@APG3Q?/ 6,#M8BO!SU>!RJ /T!TE3[V;H2=%XJOONN0E'#-!@ M>GKDX;[T!W-6F8B'^^:QL.J!H<+1CO!ICOF4&$?3C2<>6B$DM64,H*#H6?VWUH5[*QMK;]PT00!F!HKX,6=L& MP( 6.8>#B:+FX"EW4_3>C-S7E/VB8?\FKU=N\-,9>[I M,F,QXD,II[X[ZK 'X<7!S+H(@YAB,)U3:RO ;B$S'/1(E./ YBN,FA-&$V&8 M\W+_WAZN-RCP)(N.'7]E[\E;PP-6,VF96 \M98I8L3H>ZU.JI# C*(B0 [9Y M9.B.;\M(H6D\7N20.=I0>C.O=3==\(<7"[51CS@8H7S5$ 8+.JDY;CD/K+4[ MS/ME,\6Q:%=)_-JC2HS9+ 4.[K#/XBQ9ET]8=YD$>8L!!\:,%2&TK7$?IH1[ MCS>(7HVPOSOTERL>P")1$T!YTTM/#=V'IAHL95.,^N?0B-N5$L5N.\J#:0;$H6M$[2.2Y6=6P3'SD> N)PF(;1[ 6 MXZ$IE4/L:S,P8'ZU,'0?/=_/ZZX5C2(8=UH304OUI+L(3PY(\[D67*?VHP/HY$>]?0ZY*JG@%IB?VPL2>@1/]_5I M062H0'X ;X32XE1!%2 S^R(DFY#=^C+"DJ=&Y2-[1:\ET1;,%:1]$@E9P_NK M)_9=[)>U0-^56]W9/1F2QY17F96^*MJ1NL\>Z 8^\ MANW='IN'T2L8(AI7/KFC90@X&Z$^O4,>\'([R080#"1W:+V=)O/(+*#D%I%X5PPG.-\5?P.F!17(V\X35M>)*M@:]G75L0"H&VO(6$V 4U_5 M(KF!:LAC0D#JL5X^5E6C:1%!*$F^[]]?WB@DMAW^VJ)C3;SK]]Z+PJS,IK6P MLMJ3Q<+S/<9"VK_0<&%QP? V'?'-B#=A\E)S_#G7'+^E8&-"L LMB%I"=M]. MI(51#Q+4QKBYG0+*X3"Z374D[UDLU=HX( .R&0J;+DTTF23Q*B0LDAE:.1W1 MLQ<2KO;4((4=4(^K"L4T7:@?266T+ 7"&A)1#IC9Z$PAN6D21S$*V-M^/T(J M$ARWI$K0M0=$=+<$+L)@2UFF*/&JB#V8!%6*UD*?]436 I]$G$5WH?6SS=IH MVHH"-B$W\6YK3%$T(+M>VVY(DAZ5SI2%TVQ.(F?X"I$@3.)T\:C&/ D_'L<^ M:@% HKJTYH,HHS5'$3U'U+.8=Y1(1@=V>$((ZSV,M9Z=JN/HFBZ^(P8>_&4W'G+50QNN[81 M'=U]L!7%UN+7RGHX(U8\O^LVMD 1B[\>"_9M(.37<,,%HIA3.: ,7J"-%Z.\ M+<0#12FZIZS?!+?$V]*3^-9'#EY#]6M1YV)D2E0#YES@9A^R;_"DZ*0_EFV8G*Z45A1^ M/")7BAB '&^Q+T7=(.>SJOEN1!C73CN'5^Q.4(;WUY"UB$HW MC*I;4/2MQ5*.&D@+$ MBY6FB&?^AFS(MY!EW%>>097SB9L&&-=.:L8B1[\U?Z6W;&/NRG4*WMY2QK%> M1J]HS"/4VC-[VX?2S7UO'%XQ_[AY&*@3MR$#65H"Y2SD%C@Z9R)K>2U]%+#8 M,[#4D1*!022'2*W*DLNQA!%,>X&3ANH57!SIL>Z,R%:"TCCK@ MK29UJ&$/VK[M):/7@((RD-7[DM3[DM3[DM3;3U(ORS.Z8YX761TGE6YU&!%J M7T"HL H6,FUG]+ VG-Q6'--*#FWM(BHAJM#DK@.B<#7C/XAF %4I@"T>"'-G0I$$I41M4,KSQNB]:(L7.^\&JYWX"]P>[C7@3!J M^798NPN.8BF-2\>PJH1D%JI@%=ABLFH,6EE/QL^(M*7 8SA;A4F$ O>*O2AA MG/K#&6V%"@@2PU@LC5"O-@]M%20P,+R7JW1GCW0![/1!/_K>9B*R/-S'TS:_ MPM.+V$W@4%+>%BMB+/[::LV#%H@;YFRZ%2>S9#_2R:^3M>%+47E4.R^+@@M? M;L)7)FZZ41$G@9X@L"V-.DQLRQ,'*?/SZ;ZV+(2HW\W]U/Y9!GF1.+3%N9?$66HAC[B_NW\ +-+13-%JX0Y@D4IB#N* N%VA( [7G'U.\/;^ M ;*C?1,]JR=V7T)N!%S^\!]>X2!IV['W^[9(<*5$2RH\UB""[;Y9R'Y4B/E. MDS#MW,!-,6\W*T4IAJ9_P0)T":+&/<&4L5DX<5T.-O)OD4>IJB2*M8]B.Z)/ M/3I* AF()D-F5E.+5FC*]P.@/:)-#2L#L^6!C/#Z$&PYM[TLD#VQKVU%'%!N MKS;TDI0UX-5@)C&KL>N4HN^A5'GC.B0+[,EN9]&WXSNLA2BTEQ32#"-/,\B+ M+:HY;?Z[;-/GRT%2MRJ/:C6M2S/<7 TVF1)%>O6]0M;),+JFDY*0F+'27FU4 M1Z<&)8!L+06D6>3BLQ>O5MAW2TI7WHH1?#]*PT2$16L9'RN.C(Q)%D@S8(_% M,9?C4;> DI*H4V3)/U9@]C/F[^_N9(L)6N(&\Q=;(^^C.A]Z$*E%.23VP M(HR1KU>P3/#IV$X7$0)@E9%TBQ'FD0IY+G0TC5>8S%8HR!;29+DD>(EB?!/$ MU/:,/(?7'H4N-F-U0B-:;8/ 2ZJ2E+V"J$TO!!7E>(>9@%@MLS#@/;$3Y,\P M6<.X? 8TO7$>D,/ #JK"E^#>S[=?O7T@\&(9R[74YV>,*K4+_%!%Q("6O=A< M?!8:46=Z+QJQP]*0J*.F\^*>AM,6_66RK^PU7XY&P$VS;R^@I@YT-OA[]@8C MZ8.O?#(>CT_MA-O+IFE%N]+S@\F0[ISI(HNNI=LP3&(IB,5?6ZZ^I8YW Q#M M-=0TO=YQOD^XU\@BWI53T3,/GXU+G M33A(%#[K-V^QJ!^CFR"U@X?G*S;(_YA4JA7YYFM4[,CL]2FCU8M5GEO9E36L MEXUN4QF-%K0M\GP!FPPIY%[_AX!@)UP&K$MH<4KL5A5$*L\@K2.-S>:0Q"<7 MC>G&@B_MM4:R6& %EB\O4ZZY:CA)Z+NS\"+-/L<:9->H!EZ MFLY];XGDW3^53T;FG*A.. ?57/M!3J8N.5$IQ+UQ@/$%QC;CD0NAT4.D+ ,C MIL.SLQKD#8:FPOL:P^0Z-OQ:1\A"CGB9NLPE)RP!^^L%.BB;\<'NA"%''1C M15LX.?YJYLT3QMM'1)8>NZDN0K)F@E?O"B$YV.C4CSQ,N9C$5_I>?5+YO>.0 M!9N:R9,D7H6$G6;#T[D7Z>4+KLE1H?=.F*_O0QD)V3?"FB_'=9<4 MS#['NN'6WJ&M28U=>8=]))W>*S/0N,0@ATTN%9,W?$[Y:,MFE%7/1>G!1G4D IEU�Z&O3E?)G/7OHN<@WK)GE6*/ M*_6]7#_8$63->[AM$,T+?OVP"NVLF@8 O/X(>EE)0GU0((WS[]R_2O>1AG+E MN1XBNT+C:KCV,4)J@/*3K*8NL3Q+EJX8.--U,?B*"-!(!%"E2:7%*+=KC-FY2C9?N:E\U;_RK-SSZV7 MEEO*2O*EY5:;<%Y:;K7:BNDNOV*[O-H1PKBE6$?+;L<=#1NQ%K#V@HR&Y -I M%@JI]6-(M-B##0NU140J1J!1,4&9?HV"LFSN=163G+[3*E5XZ)8.6,#[F,JP MRU(WH -B&&2U"0$E4*;0O\=3_79?E$,%'[B+:WD# LJCGI+-%A1MQVJ#HH)J ME9+F42X6F&!7H=Q/^0N;(2.JWM/*7&%4?G$+EJ*8T[($-T%A2X)[:5H9L!=8 MJ" \/6A;[6/MR)*,'D^KNL6$_PPN+J26VDBVG01L &7"^3[W@J52#.[11[;> M+;6T6FFV[66W-0_PVD+0T&7%6HE:# /0V KM&+;6S=8YY_-=E]&5VA+5;\8! M=/UT)6ICJX/ZGH11E)<%EH*T_,5(M'C=7-NK5?<4^W 9.CR7E!7!"6*>7LIC MT;@1H.KE=['W1SY@89PC5&H47(2=ORS#+9VQE^HV^@^^ +CP6P=6?I 0C%@3 M"M&=S?[#(V0%P99G,Q)]!T4P;M*%>(>77A0S]NLJECJ@3#\ M-,<(4>AWPGJ\D@V[D>J(%?F;O3>4^2%.2V,:!8^4/_FM:Y.2>?= M?D_16+87"2&4PK47.:0Q*O3+WUNN+YLK'K JD M?T/M[:>?\<[$8J^,:.7.J+F\JV"8[LA3()7JN#N\"4G,SNX8Q4FWVT7CP&-8 M\Q+PXU!V=>A(-'I07/%/_$0!(Y#JMA,+/?C0<>D M;NHPD>@UH'W2_I(@$F/B[]([A)%SMCKF&!:^$ _#_0=*KM*]I V"?S3H.%:_ M&!.97@7ZU]G6/J,J=]E".]#! WX,07MG GU[\B9P0D+ER7GB>3<781+$9'<1 MNB8>^YK''X&9+P633,,"30'-T-.-2WGU%I[#J1O;&**1QZ&76M"1Z&2@*9") MZQ)ZX\C^P_AK:D@E*XRZ44>S.VHA::_3;U $;T%$\';,(G@K56F^HP@NZ#^G M9!8^-@6!*PJ@,.88#%0A'A+%Y#MASX^A*;DEX=8+&CN?* J@.O#HI'"$C$3A M]4ZBN VC&/G_\#:&K*;:84=DO=;#(E&474,?L2TW(1AUAKXTT/#=<.5YM]=F M5\7U0\CSF=>W#'P]6BP44!] M#(%,:75]J*^>G!4KQ-HYIK5VP!&8C?5 M)=5[^!IB#%KU>IM\26*418A8<3% M4#OP>*P6$3(2%=?%V0E_/V.46-E']F?_!U!+ P04 " #W@P53:_(;Z]^D M =-P@ %0 &=D>6XM,C R,3 V,S!?;&%B+GAM;.R]:7/DN+$N_/W^"ES[ MO(Z>"&E:W6//XNU&:>LCN[LE2^H9+^%PL$A4B1X66>:B92+N?W^Q< &+V$D" M[+DGXOB,6L*2R'R82"02F;__/\^[!#S"O(BS] ^_>//ER2\ 3,,LBM/M'W[Q MZ>YX=7=V=?6+__-' /[7[__W\3%X!U.8!R6,P/H%G&6[_5T8@_L\2(M-EN_ MJW+W!3@&#V6Y_^WKUT]/3U^&J$T1QCDLLBH/88%_ 8Z/T8#-D&D[^V38N8UQ - M^^;U7S^\OPL?X"XXCM.B#-(03U#$ORW(+]]G85 23BKI L(6^%_'3;-C_*OC M-V^/OWKSY7,1_8+R#8#?YUD";^$&$,I_6[[LX1]^4<2[?8()(K][R.&&3TB2 MYZ]Q_]F%#*=7D_-01F=]^C#@E;$,CT[BA/\[_>(LA[-\+F$:02CAFH\C 2 M9!8"]V9BIQWN-/_#7,"F+YC?'^#?')V]JU/_2 M:.(:APV_>NMJU) 1KZC\K#GQKV2=$-6".F.M"M/C3W>_^&/;%60;T'8&36_P MCZ;_/W]/2?@CZ*UKE?=%%N1A0R3Z4;&PNL7K,$,:;%\>]]:XR;.=G;#+S((U MKZUQN"H*6!9G59ZC:68!7'\&1.F4P"JS,DC>2]#5FUT HWL\" AI&Q"0'GX! MPY4*BXSALE[_<10"9A3]Y-I$4^A2:2]'RF+QCORTW\?!.DZ0LH"S?M^<:5Q_ MY$,2M+[TI.OF%PAB2;&@$*S2^L-GQIL;&.Y5 #.Y% M+Q(!"^"/5PEV9A3\^ M9$F$S..+_U1Q^3*3G3F8QK5:&)(@A4+!-/_5+[]]^^:;WP%(NC'(\&0_BD36 MMQ:YRWU] .C1?-_#/,XB9)OFI3GW3SCL/PT2[ 7HN/R9L?BD_S5.R.2+-#)G M\1L=%G]^0'XSC2FT2B-'&E YZ?2H,=D6N33I[I4@2*,%*TQ=>0MV6#%KNBW, M"']7:9CM8'NK+#C.S?1FWPW%Z?;B M>0_38J:CV7 6#WO1@ CIYI,UK0&LF[>(\( 'H9A85/ 7:+F%M(-11?,> 6Y> M:##S3'Z$T,=&1X5T]WC]*D%-O@!82@U4LM3SD5XB,BY,#M;ZNK?M6=@;>*1+ M1-%9EJ+A*S3#=:+4) M(:Z$2-1SVBSST.M\7YMQ,5K?P)J,#F)J5I5X?-:.\F9&S0K'H2DVGP#L=W=J M(LRFNYGA7P]LYOF!WTTOP.E'6 *,4;]J>2@$%CP'BYA<>S#A#!I,Y+G+.%Q< M.AM/[(] .$ JAP_(?HH?ZR\6,>!Z@S[;6;XAV7P>C&0).8*/K-=C !0?2-$0 M(0L=U9(M#6@FF&+HW'$57IP:4;=B&G2";MA>_\JV&?%[P =A.?&\1M[ MHQ:[(/A&P2%;0#X$2*K758F#('&TZ#S@&\PRUV6%^D;HD!0!ONK+"O J3@'M M\X7?NR&1H'IPX2YN8J>KWJT0CQ+)O1N7SY\5FT]8,\UN4Z"?-=YZLA3]LU@] MQ_/8Z/(9)_>T:.T!/%($WV:MV[NV2,VCUDL)L)2)D:OY&"B6Z31\S@L8503 MTO\%TW(V/-M3-/4=D:8[;131HLL#$;:/P!INXS3%JAJ=U"B)?C7U)# Z_ ;& M,=13'/AHPGG>00D4(/KM$ 3_ P'F+8#=4\PPS"H'R$XA BC MZP0B]*Z2)'O";O_++#_/JG6YJ9*F(1]M>%0"H9.OOSHA )IL'B?N[JFH%7DP MZY&Q1@SJ+B!O!R*V[ +;/@IYCZ,B25;!*%AA[XP]0?88&1.=\ M&E6(0,R9T%*GFHP\0ZR?AAXUH%!# M=9/IR!L*>G=.,XW!/._2'4DQ*>CJSJLCH4+^GINT!F77' 0E.$LRQ-^M)\>X MAC!:B$B6;+$?DB%YV K1 8:F%#J/BQ!QI\JAD=(R'M2EOC(ESF!G!,Q H!M) ML%^Z!IFMJ%OX67'.2CEUNO"B*.,=SMUV&<3Y]T%2P>)Z<_\ :3X<,CWZ!)#E MR#[6M=M@1TWE)E9S0HHU=F#8# \V:'SP2"; ?R@?8)TN"1U8Z"3D4,,^!_=O M(\Z ),YF/5H&AC<^!].WLUYOKB*8EO$FQD>IJ[1$4HWQH8K28?=)F([NX_1N M2*,&[CNTXW_%S* @;D=M/H!%V9^6:.# VH:K$YS)F?UDMGA+T5P>3N(')*A, M#=:\& 19>CU_"^3&.WKSUFP= W<9IW$)W\>/^$Z]#\W3EP_!O[/\+$$?ZFQ8 M,IG?(;X,R!)@CHYP3(8 W1B #H(#-<@P@(RS$#!:@($%J"G3QKJ*.!_$39ZA M\_XNN$IQXN\QWB+#P1U@OA!G! [7P@^I7]B_S*9X#:9W^XQ.GS !INMF@+0;:%8/ M:M52'9?P;@OD>HG%N$"M+=-C"=_#[V1-KJ6=UN.EW!$A/ M6P\KD' MZPB1L^,JN6/[#%$(W=.7>]1]MGU59UY'0#0@20#$]UFZK8\P][T#S!*V50,) M:^FT VZ8 J_(RW_=(B9I0PMU8&"%_G4(J?Z(+N+'>C-*GA?&11F'00(^P #? M5]0:R><1ELM]+/;ADFPURKLLBY[B)$&8.3S>JJ[YILHM:42!8RUC1)PH.V4] M!MGLADX3Q8V@CR26-ICHI;DTYMK(^\")+C:D-QB.+:P1-Q57R[Z.L+AWT+A@ ML,J563[ _""?,XFCN*O6_X9A>9]]0-\L'@ =2R.XV\]>=6L<12ZCL4=1*@ Q M&1.\/T@?WA7LNDI1]VI'TDG4TX R ^U$H)MI*;IT$HCULH".YOOH>'%"0EU: M9GR A6HT]TYH!44:&C@C0.;4#UJ6)M84)$_EV_7/FO\G(PRK-F.NHS.D;#ZW M%ST22N1E+5"7106'&HARF%-9O'[KI)R'F14_9N6\F%),Z=@1(:=&Z-42Y=S$ MG1?R%E)/M/*Z3P->V+K#.M3B!Q<[7(Z!W([7MY)G65$6Q-S&!<.CF^"%'$9F MQ>%(DMRJOW'$BF",.QR3'J#N E9YCOV?DFLC#U">!CTLU"?@Y[A(XK,L?42? M&9J2Q"]_#XN2Q"U_(LF58'2]E[R4U'F]9C2ZCTAB0QKUWK#5(S9A\W0DXNVH MZF%!MA<_J_3ZELT&#_SW;,9\'9-L$W\EI_@K8;\C1HV2=>V/P+I.6-RFHO$=@SH;^ 8ICR=G MN:^2I7,LAGN(EP$(DG][3W;]62+'*L/-8>AJAB?9G,["-B;::PT_8E16M.E'2>%S\0]2,#()Z:&24U,5:<:4H.CK8 MHY&6%ZTU"BV\P&EK;ENGF;?]$.EG=[VA5T&KQR!.\,.LRRQ_A_K.Y""9B]A9 MBB',9[$HEB-*3M6T(TDLMKCE$>A^R35=/J?]1Q.1DVQ#.A*8J;S]7&:,QI)X MUHP"50?VS/]@:J0 1E^EM^_$R:"?<,81=!8^38+P1]0(\7-TV@+UP#Z<*OKD M&64D(( '^+W3EOA5UGC XX*.N*R[=W/)R](,Z+%QO$%^'N-\U6GTMQ@FT:HH M*AI?@KZ*59*P\Q(?/3T>W.0Q26EM!^0I9O2!\ GHUH!^5,\"7O T.-ROGH?H M_R!)#CZ! D]6NQ:/]W2ZY1GR$Z*,\]%,)1GKKZG=;YAM*-L,S])TZ]'[7@S' MG,D:$AK9-D2:>/QH#X\.-M6Z#\\ONWV2O4!8W ?/U^LDWLKR+JO/O(K1W$>2 M*RC2.=LV(_SJE]^^??/-[T 9/(.L&\K[4WP[B?+.LAJ\L@XIIUON?R.#_RIM M)F+->\3_NZK _B'(L[HGK;%L0H5K.]V:4E':DKM//2V*3J@8U> MO'FA&K%B+?#D@ M/#")#X_HT V"J(% MIW<%,2%*N/'BEHR>XM:3S/(1EO1Y&U8*[51EF<=K1-@Z@?<9(G*7I>P#)>MK MSPFF]&.B34&ZUM4G_1!26.+(1#31ZU<)FNH+YHL(F.EPIHB03$@-O7I&_Z^' M9@0;]_9S(NG8VGYXV+BD[Y129&22PH8PQ64-';T6-J/ \4-/(^)$U7F[, MT1M%\-59CGED'Z%;K OZG0C-=/,[^\E,XF=.#BX@*D8INFP/: MWO>165=T/0>/;,T6]D0$XW^=9R%)783S,4K@4L#PRVWV^!IUH4A!/Q" $&@, M!IHZ3XGH_'0XL4#Z31. V_C0*2).8^ERUV!\I<".\IT^FE(9L#H' 6^C(+_RF\;J?!^4TGWI_Q.F?Y&E! MHD>$"A"T,4"M 6[N6Q5P17((A>$"#=TD[&"7R/ (DK^A8_HE^HWL/E$?!H=C M^E$-!U2HD$"; ]P>D Z^KH TI'.("-Y2QV[_N-I!3'WJD^T9@T%=NE9EA"C- MA+;]X<;ARV80B&=@/_ 6:GJJP ->H,-*^7(9)U"95D"-A\%@CK>*P_E%EQND M&<#M &WH4R>()-"(G+LHBYV!CG,+MS$^3*3EQV WSCK@#CAU#)Z&O/L4R&7> MM06XL1]'M4H:?UR- .@-<7XX. / ('H\:!@+M0TK-DC$(NP^>F^J<(9EALIU%-+)K M"%E%48[KQ-'_O(]3^&8"S/!&]:"% M.&3(@5*W/&I^ +@/N$Z][UD2,?51(EKR&-TR'//M+!AYNPR,O+7!R/U3MCR, MO-7%R-NI,'*&?KS.[[.G=#J$,&.Z=7X(J-"$!^Z [1;.$M? K0W&1% M&21_C_<3'9*XPWIQEO HT<0+[0-0I\.#D$^X<$7%!%:RA5CD,1@.C M-Y#+:U5V8E% !Y$[:G,@:,=RYO&ZD>Q@%587J^_17Y*;ARR=PALZ&,SQ!WXX MO[ >);X?(>T6X T52:"1,W=1%M_M'0RK'&'FS=OU?5PFX[[=P6".)7TXOZAL M"_X;CEU\\_;5^@O0]/(I;I$8&G%S5V8A[OL\(*D/7G;K+!DEZ_Y(;HV\WMPB M(=,V@#;RMRES.=Z(=;@02RNMPI .[.-LQR=%;JO7?4#;"=!>_N\[ MY1+KV^N2E8\ZW%VEB.U!B%/HG@=EH*[SIG\'QAW8!VKXI*BNO=H^.'HJ:&#D M'S5RB1U><@E7/@HU=[L@24YQDD=TAIP +/WQ_%QE]6B0@X,T!4U;7_$R$E'T M43!9=G3^4#?@H8I%,@@#^N2^^/A XY&IHN@/8!=2??7D"II/H $2_:RG=4 M#_K;1@-XI8#(WB^51 +Z =_*7:ZY"[!Y@DTZF. MWG ^+$N6 (7)@%MR%(0GHX$CAP.;X7!EH^Q%YATKS<;#)+>;XH0J&]Z/EI"1 MI#BOT@?2I&N3D!4PO;V#1T>8!X=7%3-L-,IJ!].(O!!(@G$@ZH_D5H_TYA;5 M*6G: -S(GW7!Y7@CZ>%"+#5&?4CMWGU,\8I+.*AK[2 B1'3K6#NOV!<\@P== M[B\A%2)J+R1EB[7YYON/@JA),O7;+G94ITYO(1F:S[OJ]WZ#!UY>WW=Q9,1_ MX76XWE&N<#1J'B17:02?_PRGL#0/1_02IW) A,*,H(T!:0U0<[_."H%(#NP$ MS@(MJ]6OB@+.G!OB8 IW=@.? )'Q0!KYSOG)%P>;[X&SF!&EANEH]?[C 6' M,SG;.*1D*(R*8$'0$(AJB!#>$LWWBC9M35 \X'PUZ#^XH.1CD$"<:Z0\"_+\ M!9U.O@^22F9YCLB I#6SPWW&B# 1LE GDNXHQ#_ KKO7M#-&0NXE-=)FA>TN M%8;XT5EQ"T.(AE\G\",LU7>P([25;$)7/G<=8D2[6=T%YP.N^QR1]'/9!I?: MRIY(S6CTC_]Z>_(;@L3_^O6;;WE9L,D?!TG0C]# Q1Z2&]/$DR/?!!P]_:AB MY^06RB/,U]DX&?,2OMYG.*8:J?<(@D @<*\*96K)V%2Q;,=N4'^9Y>=9M2XW M53*<;U:=8D2!CXS#1A2.TCROXA3495J^\&Y8V2"C!UMCMDUF]GY')9O"+2ZM M.:ELN35[6P'BFHU1/4RK?#SGG'8O2(NR0LUHHGT9<>B2K'I\^3@4"-?^82.1GC4+G)X3Z( MH_O@>:;"3+T)/!Q[V?D%GVO=I$YUC:IW*A,*BX?!FBR/J?4X%\^DG@XZ M$5^7#S#O^6/FQ(1T7A_VI 9="@A!VI7FALYP;Q#RO7+^8*4C;@[:E%RQ3?Q\ MDV=[F)9T+6S1$:,$&RT"P$9;-H?')_]F+0Z MLNQC2[%Z:WOU*BT1SV*T5U*DH@$OGL.DPK$I[[(L>D([ZBSHTIK8N0VK0Y4 M;EW76H<=(LT#SDRDR^)-FPWVCIMSN(%(*4:T!@39H]WMK-J3^]A>=8D3Q474 MW4F=UN$=EP<4FHJ:1:(1,VRWUED5':O,G.)(H:^:/_LTM60Z:*AG;$3[/@[0 MH3 N8X(;MI0,WD/+EUDOQ[4G]Z%F=(D3Y8SHNK<&%IM(P .:3&7-HLV(&[9Z MAIG$16R&9#KGAI68%D641M)U]&VUJ\4G0-2T01N-Z_HF>)G];HL_E0?_%)\2 MU675GK9>QD4V7UZ\BU+.(NTC+/(*1GWM1JPGYE=S04=C9C](4A,F!A;NRU5* M?I"E+]T#H&GRP!)W32WG6YB0&\R!+IP%<^I97=O@2HH40.L5 <=FUAJF(&@6X^!%S%S3S+VAX%"Q#^+O'Q3-&ZQ].XAP]AQ1( MZ@XWY;6/P'^=?'ER7-RA'Z'_T2"^ON^?8$H=5>G@0( M0'-8TGC \4EP>A/DUSG)TQV1D9OBWW-#5SBO#Z--@RXMC+?89J.VN@+T7E6D M@X]F%)',Q?#I$?LRV-<"1M\?(D@II!]\OEN2BZ[DR)2NV MALXM+(,XA=%%D*<(A\6G--CO\VR?Q]@@FP5!BBE]G+#D) DPU70"L.[E-:)% M3Y LGC06;>L?7X5AM:O([0VY*L3I$7/X -,B?H347?H^*["3]'IS'SS/=?%B M1(.?^V43$L5W-,THS0,)=ISZ[N;UJP0-Y?>-EB4L#NYSC%EF:>W?PD>85C/% M/+2#N]XWFXF%2HW\V;=M=#8?MHZ0&@%(VO;M4SR_ M.%'*CL6,?+&VYLTM+)#-%^*,1^<(CDE&'EC54\RT7)P) M/)W[" A+:((@""I7Q?LF@Z^;1BU^'JW_O(5CX@CH0._@RE2A0D:?Q7MXC3& M:A!?,#M E&IJUZ:1'EFBMU"T%X%:T.OGV9-D)F<.]'3X86]QXXB+/T]:LZ-OP+DL5+%-SKY16Z5(C]A^?BM8]34QR? MTF66PWB;TMCA\(44^\'5 K,4J4ORKX0$WJ^B?U=%6:=;(!ZH&UR%$OVA+/-X M797XL4#U0^TZ%-N+8U=R'-(%(IT$1A[-\J_R9G!^VN&0(H$_^IHY$\_+62":W MWOLBX7J]9.(3DL,+#21__.P9/2K!WN&HYW%2S757+9K+^>- /AVB-S;TKXL, M&%5(3P8?=M$^,G1+Z.%]JO6??P[L'I-V^P>TPS^@<5:(P\$6?JSP6X?KS2 $ MBBB'6>]A["AQ_:E;42E0!,U8(*"#R:/H/,!S%#A8\-ISS?JL:#2E?T![<7@9 M4:@T.6DWOS$L5E*W1NHHCYA@IEJONPE"-J7!0Q26(8D:-MZ#FY "C,R;#Q3SW5>9D^%"JYF3*GDT?KW'K M7OH0WS=9UF@8/*,VYY*ILMU&+VDW%RX=,9CM+$O1)X0=[]>;'X(\#]+R(*@0 M#T) >?+U5R<$DK;#.M2?EB2*HD.>PP?T;U*2ZJEN"N*TS# RVW<@ON[T1TH9 MXW(,NPS5:G^J/OYY<\0IU>9FH#08U]49RI; 49CDFZ;^T&DN[R$\#5EG?8:2 M*FG\M^L]ULS%Q3/,P[B8RR]C&H68IG_'F*;PS6C')6_Z,B1H[_E" M)HT)T>-/2#\-[P"6D;$@PU5"IBF(%^,FL >&!IY5#+.R81NKI'%%7*5([:>0 MW,;^$)VQQCLM,:' MM0Q&Z&_9&S+[X 2G@3TC274>;3#/.L9%ZG #=984J3,-'G5"K;:[Y,X)'/@%U_U4_WX)X[K3[#I: _FVF&B2YCXT7G3'01=?_J* MKS]"G?KP*Z\[@ZE0V]W B$\V_A'="8QL'>-!79KA5A1.B,.E6"NVDC?&YL!* M,08IU; P.@T2;!J=PFV'MEP,O[I""!?F_^!0*\2HBP4\6=FWZ;.#Z>7AKQR!7QJP19;VZ)T;WF2 M'#G?SX);_=F=0U:; M-#%:BS@B3U,18$G]\3(#[W+T7^*1K;/R^\XL8"S_?AI!$QZ-K%\AT.4?X1/Y MBWM#H)O90Z2A%F$B:#X$=S#?-E<*S"$;1IW[LO/4@3 KZ&W#?_WZZ,VOWWJO M?Z$+!5U[H,^P::U6JK:]H/1P:N?),;3(F@FD"_ 0V2%#VQ08H-;*4 M.Y;B+&FZODKE,,XV<$V"A,Y(+9QY/;SK"XUQ,VKQ8YXMFK59Z<]EO$[@'0Q1 MR]E*@8ZC:"E')#UR-4],V2XNBBQ_ 2GVHHOB89>C('[S M_BWHDK0<^U:3XBF^A\_%@)CR^S!AKZ69C#:?LZ!X( F$(AB=OGPJ<-G#-KOF M"M^%T>+ B3$. MZN"SU0[G?>+%@4WTTM DI4P?GYN%AB3[Q97E*[>T9-H< MB)=9?IY5ZW)3):LPS*K!F\R) "6=T+5S3T:,,/L"3L^]+IOL[YZM:AWYL3!2 MKMC^Z9K#=^FRM^=N3WB3/B_W<2K3?S\N?2-N@YC+(,Z),Z/;:$4/PB<"CGQ& M][:@E![QG0)^@HO.]1O4NRZ%RSS(]8DF+8FRH%(S8(2MA,RT'"+ GD/Z7\8P MJ^]U9SVO&$SO07/I4R?%(7[_#8*B@"5]UI7$P3I.#DX)?A(G&\K^()>R"7,L M]=]PEF8GO@E>< 971[ \G-5#UFXY1>)";Z05?DN(F_G/U:TG3CG2>&NW-LJX MP^<5C-YWWZD[E!U.[/Q^2H]Q>0?G&^U@YD68?AS" M%$CDU\A8!/HD\M72@@,N3&;>T3?&Y!5QZ7X#%LV^@%U80)JT !!]PEYR-^1% MX% A;<5Y0\(1^VU9<+5XE>)<&M[OK65D+.C>6D*FYKUUW(RP['MK#5AHW%NK MV&5[;RV8[C).@S3TCF49&0O"LH1,32QOFA&6C64-6&A@6<4N6RRC>4((H^(2 M+>46DFKN-T%>OIS#]3RHE4[HX19.2(P,A3D,8?S8I(FJ8^W]W\N@\M05B\YE#.$W?HT25*F/>?*BY?0-SD)NO' MP[N.A3>35AL/;\"!*123N_2-ZEE]JBB3Q(Q-/ZJB8-VZD"4;]:RTM',QZK'$ M1UTB+)-&&@G_ M!^O;QR"!(RY1[8Q(85_L]33$:)'CH2W32N4HW6;ZCD7=S'B5UY_:0;%N/ M,E'<$],;1'$1)EE1Y21H)6Q.DR#NAO,<7FP(@5Z,E &?Q@6VT%+/V$\=SV.# M'<[APVEQ0(/L+$AR4PB+=_OQ!_-DQ*W8S2S/VAN&*$)\Z)QM:=2>"JY*N)O9 M":8]N_/+!FW2S)57FJ7'=,\=>KZ\N+Y,,=#S>!GQR3*E+?LH[Z;)?40LTOOL MC#Q;)/_0\DOHCN7VS;XF55;9H1;PUME&BJV_PH0W]F<1[#F[2A%6*_S1,D\_ M3TFL1!BCK;DEY!(&)?J:9U&*5H1X>5-C3J<6?@<1R7[LN3& Z+_ L>33#!DD M5R$Z\A0D597[Q!.]R9>6-Y(E3I0$OQO7:F^-!-+3'@X(@;VNZEY%R7K\P,4SF%OZ,P3.$67\\V> VJ+"J+#2TQJ?$P?UD5:B$=SJSBMVM,G#>:?.LL M\/5P5O=V@I(F8?*"V@&P(*^FGD@UP_R9U4\;X4^>4-V2 "$/+^F8B1UNH"9T MJ9[4Y6W+Y47W"V2K]ZSN@ 6V1MGA^!\_I>LX26#4C:]IC6F--)TMKFN'Z9 E M %'3D@&11T/)1%+=/JF]_$GWQYL[I$\R8L$[5:0-%"LYIY(W1H<[R[SXC;,H@AH9?%]W9<@&38=/<=#&LN_%QAIQA[;'&N' MLYS6]P@@ M=0W.7W_A\S!M@PLI>E5CRRS'(VN=;O@]W3E@Q$0(8/3N M_*JKUD$[D!M C!X_FDXM@?;4(EZHM7.E'Z?Q >[6,U71XD[DXW*91X@TW('$ M ("V&[CK5Q[T\DA ++3^NP#!4J>.F=)ZM,&GA?].H\=K\ _:_)^?-=-/[#]2 M)GAJQB]T.(N'8*4!$<)/DP3*'7R+7H AE Z+"OZZ)G[FIO$9#$CK 13>=A&^90( MR\G1Q@#6K3UOJ'*)L<"1+-/2E[,*PVI7D3P--$53MMOG\ &F1?P(:<37G'I) M>W;WI89U21/?/#?]&R\Y.T)]S_/Z%0[]\^JU,49 3Y,9<6E$HB\2?7Z]J=,6 MSQ4ESIG&=6:&(0G"P@WAC]L\JW )$/2_E/3#CL&L[>DY1%E,[K_BK19809450R+I=(]#C+?"\?3D_KT;6G-JU3:%'ELBF MJ#OC$U'3VZ^I:B9@%H$&C+#+?-@IX3/V->=EEG.FOI>8"*(;[1'CNTU%,()2 MC>V^_U86;^UK&4R=7YB/AT%WK3Z2D98QYO0V'^U":4$O# TB+MA>[O9=/@$B M,-$HB[)K"((2G"%-@$PD[Z$6'+8?A%DW%%AEK?5A2<86S9FS)\\/3EZY)'>U% MWN:QS7&.US?SG&ZG(\_#87?CP?2@&E0!G8ZMMDH3 M![8Q"AB7Y^YR9VNI3OD(CI-&R6@1!68G5?%;0'+?L5MHF0$2PHCOWA^R!&'2 MDU=;7TQ=?B@E&RPMJ0\PW^*[%N8CU<((KY];9' H$ 4\4<,)[$B/16@D%>]; MP8M6:2ENCE7.1(/30X*(R_CRF-2//*O M0:83AJV=B%.]?0CR'V%)SF^"++@"C2_L[%:QB\B09;?;D?8U+'UN_RH!M(I9 MNDI[_VPWESH,WG2Q+7"*)M#\"^X0$1 D>EW_V7Z[1RW1W$IGN MD#U"PQ1EMH,Y\??@D,:'>*^7/6E^*AS?GLV^(.%V2=N"G&V\I(/^/.B2.09F M8+SM.69*ZF@3$MV$CPDX-.TT1UK7^0'Z?T&Z01& ?.]I^/I\?-5S?=Q\76#6G2 MQMWD<0A7"1D _?ZN6A?H;(\(_!L,\N(6;=@Q?IB[BOZ-3.;=;.5A)R;15_3X M-.2K,OWM\8CDV4ZXH%#S:='%^YHFY.[8T/7+WC:8]_;!43'K!@.[#ANVH%'C MGG;3J_44,[H1Q*V!,;PD\!!V/$+XG$AU0R9.Z\R_*^&>^9JPO[%\061 !)OR M*JWW(XBO_,AEWSSAJY,0MH"'0L9$"Y\1I?4##;:<6?>!+/ H8PTDA;5DQU+K M9\N7PE/-IP)NJN1]O)FG0H76Q,YOFW2H4CV%8R%>EEEM.EC9=L MCBNKG[. WLSQ3BJ90#IO.=*Y.K16N6KO9RBEMV.,4_$DQ6J7Y67\$[$'/L#R M(9LG][H9!3X2'AM1:&1;!DQWL"/]EXE4"1CT("OBE.W+0(Y/XB;/+K-\%URE M&_P?\M;822H%71H\NIHU2=3P%ZQY!N8^SP 9#<3=J#Z1; D/A==+R3I#!S%Q M2=S"1YA6!\<;@9^J:>O8]51/*\Q^2?[J[7[^@(&MKX>EVC:LI,F+B9,J-F^; MX_0\2Q)DG#>_T!*=WDB.!:M%E$#LN&YS]T0=O(I34'?L?NOE^&(NN!8R^OP8 M4Y%)%&WH*@60$0'NH^%-R%.$S))8V;8_J73CM9Z-A>3[E1$,.3,'2CUAG7!3F"$FB*'E:> "'V8 BVY1/V#2,D"&>9*0O"+/"]V,S/?%J :YC MA2G6B+EY7WM(FO'9H3]"O3>XJC%8@\T!13>XK0 MX8+U52EY7RCQL\VGH_1F]N#DTB)L*H7E1649"9W57/JLL7%==:.-T6#J49QG MZU.2)$ 3

EI\M%G"X/K'.8 M"D).M6.6)T]BI4^'\\@W"R(U7&\#L/K6C2,PP4\D9<8M^VQ!7@X>2SQS6!XW MZ(NLQ>'1YF@QVZF"*0''!HUHG25$?9V?( 2$B.Y285'\%K 5_MC((*_/+A32 M:,\)L@7;;IT2B,UU-%!,N;#P,ZV3Z%+L,SUI:JJ8L0=/%D\?3K-]$0\<)EI<&(4\NJ4<C/[-CXA2=(]CZM@?*D7I2 '>D6^:*L+ M[;.,%+5%8_1J%=P$+UAC:>D5Q1"N,Y_)R1%IF;;3016X/>WF\S);3T1=R1'U M^BVSHM!B[O?!LSLGO&1"UQ<^,F*$1SK[8KGV%:^90C[T MF3JN*>P*4_JSNW>EZY(F,JR9_K_ZY;=OWWSS.W+#6+YXW>R,Y=USF!OQQ-ZT MZD;$)3&[NEYUO291(>F6H/B;%UW 9UG94 MKYB>""XLTJ?@W@3UA1^1E-&LUYO[!_@]+$J28^T3^C7^<6QQ89/!G89!VE*I M5U6X'K"II4,'(@$@53TJR/8D2=="\C79X8!?7=B4FY88-B_BB&OS75?E->4\ M^JDHD4B0Z:R'ZRDG=(OU"2D7G;9I0Y!U+8](84>,],IK:/ <0.F749Z2M78? MPVF I!'B3']9?I]=/(/Y;3$SW06JA7&\DUP4%=(@R068]("[6_0'AZ %\ M]>8((&:<@%=[/ DN00KK:0 Y3C-:W<^#'',Y=XG*M=EG75\<(XU-AI.R:$9K=?DW'\.Q(DHB%=2")%C\:$,V^;P6)P\Z.*QH+R+!# M16OX#7'A#18"X0R!P>/ B'JB[:%&OFF>'M;?_HBLRCV;[+ H\XJ;N[,/SY1#9@XKV+N1G=>4T-'7QVX%: MQA?Z)S"=<5Q?/FG0I ^TQ5A_,VW _0[!( DC]XR]%B(+IVU]!EB4T\!$%Q M06 \G.;B&>9A7.!(M+]4 =JW*>F--SB.$7__S&[#1EMCN/..G69(YUYOSN,"_'. M3@ ;CJMV++LMBVZN'H,XP:-=9OD[9* TGC#RLZ:V5HWAU+VJ($8 S;87SLH( MMKCM$6C4\I9V]>D[T!13%P&GP04[Y^9@Y-N[3Z/ PO1WO(-+2#&!">HU@(AW M? RE(L;&P;)M-];!N#?MN/=!OH7E*GR(X:,M3H2C^54O(K),$'33(0B\>G-R M\O^!DHSUQ:)4CDJ<8H!)>321&JH5'/KG!L9C=ZYN%/?OX%0DV>Q@FZ:SS^AM M78DI-[$^*ZR<(#P=.!(ZO1$!TYEL"^G42A#\>%^$#(MSWTZAY@,=/DC 9X^V#E6U=Z6VA M+8:PB^<].EO#Z#Q^Q&7[HELD[&7=3&E3[>'-X>R+$GRB31/P$L/$:[4/9V"< MY#+)B.V63U)F(>[[+$'#)''Y\GE]H =TN\^Z[6!5HJ3)=6/PV+;VF[+6(3!G M_U@Y$AB1*7Q2$F_CXL?+',*FT.7G\<%RJ?[<=U3>HD3U9U#3XPUJBPL6D\8X M;L-[M59GR)SMBQ7*P')[_2' =)3%"NW4\?:A%P9R#_/=+)^:H+$JUUN_:AF.OE(JK] ;F<1;] #%],%H]PCS80O+' M<_09M)_+LK8'RS6X?YOJ=H&"[XDT!!%JR13YIH^L=KLL!07V#"RHL)5GB$^R MSXP0X+3>399NU@6T"DMTFBQ?/'DT#[_,X]!35.#W>5(Y,"]9;1M8,H]F&)IMV:&UG>/D,II686MP0 M1MS>YQ6V7 22$%G6IG)^T.9J_/F2!<]!I_.[HNG7H,!Y':YQ!&C\ZL_'NA&F M+YZ+QR,>G(^E!OT%[7UZS^ FG=#]@_.)*-?]*DACO_&Z,P"D'[0^)4OM/H+K MQE%<1\GKHYG?TRDLN20H\ 6;Q@.$>3(M^*P_M"PX:_2C]=KH%W=Z[V!*Y_%T MT]*OP&<;9\?1@)^; N1C93(5R.&K521?-PDS]XBSE\EX'L&L)&[,.9T_)!L6NIU MXO>:<9KDBV7P#+)N0/\(GQY G-1'T[';TO$EF.#V[I/1JS*-8=PB6DV0Z+X= MM> \(G,-07VYM*C27/+T0+F%"<1@'HN4=AS7F0@T:)*A):_;>-59!O+104QO MW3;I!L1CFSW=T!EG.7A1/>3 SP]Y[WN6A!?Q&PW===L&-RBN@)KIR570#1+I M VJ!7U@OZ%;3E$8/@:?3KL# UJ,WF9STQ$B#AMDVQ67*O<>US8-!DYM.&P&, MN/KJ3?V,?X07SV%2X7,83J1\O7F793@/[1W,']'I_RY+HED^+2M"/,2WV= I M+*51E/@+R>$C3"L_'M(I<,#"VYH]UDF-AE]0/6VZC5,(PH?B8ZLJ16%9G;]CA!6:<\CDI0[ZCK[\^]/@P*%M]2(A];Y MCF13WP4)Q%&E'X+\1U@:)=_6'W(!MYTBVD2F!FY'P+AK6BX4BD(!ZD&/SY I M+Z?JB=[!%.9!@J9:1;LXC8L2IXI\'','I1IY(5=-"C)%H;:T.<%@T.O@-]V; MK7SUX"AEDFW]T,;X/46#;V(21,\G8A835']VYZ&IVJ1):[.+3F ^0Z*,1!M\JG[[(R\ MCF-+*1)B9M'$IC1X<'8:DBB",2PI5)GGAE_X5:>6\F?5J UO;)RE6B]IQS?Y<=/"XE=:[J&^VF("^ T)F MT::6I+B_@;4C5 #O9K#C@(Y&0=R+&04DQN[-[SC0Q_J8/HKR4YIM&ACULB_8 M,]?6:8_V 7LK5M#7N3]40(AJ0_=\.-+A?V=A2I9H%VC[3TJ_UFM[JNE2A-B86&NO7V'D?M%!%P3,I#AW+ILAHY[7 M([SG01FGJL5D$K'ZF.J*>3$:[09] 3#/(JO5=B'N[#@X44B*, 6G;@WW3 M@6)O 04PQ>(X+'4H6+!55 >3Z^$^:T*@&.CIJ4KE*.ZUGXHDD4)C4H 46$/M MZZX]5>531^E*K%,[6JRP]K?C$:Z*HH+1>85C->A#=FKJWD*T\<Q5JC-/)[WT51Y\<&/I5H4"]UVK5/<5&E<%EZ/(9/!IN=MGX1_5GLJ MFFF3Y3MZ1S4&B)IP6'>OF6+[E(),A-5N(*=4%2#TJ4D19$ M)-V=J@P5:[.NT(!'BDM2I'B51LAPQU&$, UC6)S'18C. MQ=7E2Q=JIWUFQ7E&0(C B?U9$7_ MKHI2^^&'I/M4&]UW% XHI1B$U(EZWQ?6F"_]3Q3FN M\!N]1[_&%1Z0MB/IY&%T5N4YZL#^(0RS"J'X)GC!8\RBJMRN8+IK4C7HO:Q0 M5'JO;@7VM!D-\@_#O,(Q@C02WM/M@%QY[>Z^#YZ9/R[^ M:Q>0[6Y7<[>%_41?VV3$>?F\IJ)>>O1C)@$1,PNU M7IGA?3[\FQID[#1U=/ZCC$2&Z3,)-08G; M@A0UYGR3SJ-^);SOXGU%2[1Y/4<&^W.:/24PVL*K-#05.*>O\Y=R D*D+1] MZ%UHU\O[F4)?0"U,U RP/Q=<5GE*O-EH[,OXF?BU9SP62*9S?L@5TR( 5=N! M@&I3=_%K?NC+L7>U*%^ZY9NSNVQ3/@6YB>UYT,5Q0<3>Y"+?1=UH":8&G\&= M\W6X'GO%\!Y7!L/9/ZYV^SQ[),[;.36#;#X/#@,).<)XA+H'B)DN"W$8:$B3 MU0^JU=N<6,Z"?5P&"0YW:X#*%-3 16-,#!3]T9R^5]4F2V36=OU!T6@>IOP* M"/$0RS!BC 7:V;U&7#*^^"GR\E\?XC3>53M]A84Z,M040U'=7E>'LPN M,GQI&^\($)Y#TKU1G4N:G5UXQ'E>CJ1Y,F@E/5C,B L] MXC_#)8#PF;EUILUIF,AG=)]85$J/R'6&F[&^TO_K];"B)436'E&O>4R2\"PE M55)*N-KF<'9#5S*=\R.PF!912M L/3ZC/4#791E'8+4<>WF]Y4L?<=.**4U) MF:0LO8V+'T]?3F$:/F#XKI[C>=XF*2>=_@B52'"E(D><);'K!G _T'8#_\ = M_2),5[3]-!H:K+!\>T 3T]^504GP^QXWQN%6%O&";5^0X'=5V"Z;#3"]"=PJ''9J47I"]"_PD1C9 MAXCP@ >>,%@(#!9D^X@41^_>HX:S2;T_P\3N/)G,>Q.+,H?@-@ W6H@>X,JC M]VARL"KKU_L'Z9QF18%H+H=X$)"@3M-%FG-!XC]AEPPJL@6/3OG A+B>PR+, M8Q( ?KUI7KY?I&5@3X*\-J0Z[C ,@ZH991CHC,Q3P$BH8 M,,GR7OLFST((H^(2K> ^KPK-S'*#7HZ#J@8$".^PKQL#+"90XN8X 1;. MR22JY^8^H9Q(#ET>.>Z2K4O^U&6%FGA=O6=#PU[NBU+V"1"7G43M2)G4IJ7/ M^CXB9K.U(SGKLA7NP"]S W/\BV +M<0LZ^\\>E)(BI:C+<>.MGW;QR,(-(3" M5B21KGK$C< J2;(G_"[^,LO/LVI=;JJD25!W"T,8/^)$/?3Q]U4:YCA:XAS2 M_\YS!!I#D(^T6TL5ZWBS#^E MZQ@GB.AFJ-,W:NE)<6_73TR$E @ U[0'>=M!""[WJE(IE591RM=M$\I%O<_W MP;/AGLGKYS;DDT.!_+Z@#)ZY6Z-K<4M8W@I:M#C[NTQ.TCJ<"!Y1?+TN _2G MB#ERS7I4UZ/ QU9G1*'!6?UH>8=U(Q@HDA\J>&2U4[4GA&RW#])!'E#5@:WM MY>O UA"@/K U+9=P8#MD]O# UEO7F&P.W655S]5SGP=I$82S*2&=>;U4CE#3 MI;C!).62^)K&AVM:7[X]-[4F&V:I,]C4;;K>T-1\\P#0B(+%U0\\I% $2EK4 M/(<1CL?RGY#.1NS:-0&Y/+%%*,<73F:YR>-P'H^$?$;W4;%2>D07]OAOW.+F M"[D1&!\>.-'9N83UZ\E=O MZ8%X_.RGB&+IMXY<@26]#-!S@+:MW:K\=EZ1OQ.6("8-O(EKP,C.N=DCWC*R M#.O\*BF#M+R$FM[J@RZ.-^G>Y.+@DKI1_T#C(9B$PUPV?N1P+6/2JY(;U?8& M[H+6C#R%*=S$\Q1(4DSIPPDH)TE]T5I7VGS]:DU[> [?T!-J/[.GD@&V+KZ+ MS0:BL\,C; >_1><+6I:[0CO]];XV'>=QR!A,[^$PJT^= (3M 2'^.1VY/O: MWU[P+"(-.6-U#LWR?8995@^NN8T=='*;IN=@=N%.5C=K4>%Q,^,SF=G..$NR ML_EO\@QIJ^+B&<=2XT-$5J61GG4BZ.H^\IU#A? 6@#1&FT_=&NQ):? !8NS/Y3!\>$;3>PQOV\6H-:,NV] M\U:R8,0M<7]P&MC E#]S@+'AG,Y?:RH(TH,9#4$HCMA2>#Y#L30E*T8:GP]3 M*;.;(+_.2?J3Z/L@J?";!S*A \0)IW9]M:%'EAI^-?#V00X><4_VC4,7'>/9 M%V,F?C$LI6RR.RY=!'F*OEH*>%.C2MC9K64E(D/D+J'-6^QXCU37$D1K:DE7 M:Z^BR'AK=?'#M:#XX?>P0+!LHJ9YE0JG"B>=@U#WUMTV MD81G25 4UYL? DQ">9W?QMN'6KQI/'C^C0>),$ M(=FIYG$T&%/AP:5J2J,H[ -91B2)1[8!>]H%[)L^'$!Z<3K8HJ+G?[!BF.T% M'OT4J-EYG7;NWNO-ZH69E<+S(A%]AE NZ>WY-G9K'Y8X60>7 \"4O1>&BH]K'[? M7G,E*7AP/5R]K>:J]W4)C.2V& <2[LTP'3#43?&N9P0*7S:9$ [RA5M:8HUY MMTHC8NW/?I\HG=#UG8Z,& &]Y(561X_:@Y\@;94'-:,C7E;5*!EBO75Q MSY87SS /XX*^H6[_6-1_+=ZX"AT$:%T6VBQ:G)+ MQM;1I$,MS_O4]*.[6Z'>U/[?%/2)?2[J_F&Q&5W+4A)V=GO9+")#;#P?> >\ M^C.UQ,#$Z$K6:HF!B^?P =^8G&6[7982,UPOUH#3SW&8P9 "T85KW1)G$D!- MZR"IQ63?E(B@BS(0+-92ZM]G^/:0ZA#3*!-17^=!V@)"!""@K4%.FHM22#B7 MO4(0K?QE:[5]!78.U^556I1YA97)AZ"L\KA\.4<:9NX,)WHS>[BZU"),F%.Z M;8$=?Q$:"NSJ$4#$OO?Q9*D8R9NU3/2Y8O?DJU5I=F%OT@&<:R49-<*G8 M1[,KXCW%S#E8FNCFA7PO&1VK#J,[4D1$^0J(09"4*PG9.NN;Z@+WV2J* M2'*W(+D)8C2ZR?6B>A3G6X&2)'$6 UJ=HLQ T/8$>]3U&,'Z\"+12P)Y/8FQ MZ>0U6&$5?#,-QA6;@>Q.>X:Y';]QGFD9HI,8:=TJ;C9VB*NUO5R4SP>H_K7Z M3%P?%?(Q@J9/*=V'G7P][62?V>?2T"VL%?-H^(5\?M_((4XF^RAZO!U;K(\R M^C++-S#6!;6HKW/K0T"(LAY$;4!OF@X"R/DJ$2&0R:!0!&_9=O:%)/,Z^5N- MO.:J1E/W&8_JUKMN3)\\/ XVS1:CP&REVFDJ*PY9.NPIQWZ(RX<'F$2]6T'] MK5;0W\?NR2=%CJ&GNDL+ICKJB8QIZ?H#X6@]&JT>8!ULH4>[+ M^_ZDM+N.*G.T+L&G6C<]W)W$G^[R@M8<@WJF[ULI.\OLY5D9)'8O_ 1=767Q^\9\J+E^ZR_3BNGR ^?U#D-8X M7FVW.=P&);Q*2W2H*.*0I):9.W#=ZX(^HVP?$RQ7>.E3MZ>)DY9P:>D9X)-D M>YA*8#Z4A?8E[,&.=PMW09SB9WFX+FX0EE60W,-\-\^+@P4MSXO!N8BE"RN4 MU.WQJ]2F T#KVGVN^F6V;V+ZW#*3R=7^12W?14D4'-_@%MQUS%MZ5HL>#T:" M/;62(C3H/%A?K52]K 0^/L+Q\- H4:O-K^5ML>)#Y<]BB[59WL]DB[58NN"; M1H9E@ &2((Y&I&WK /4F*F4980%2,;#AAX+UV@F_'N$=?GZG>>%_T,7M;7Y_T!]J2+5Y^N4B#=4UCIDFV>(5%51E#5;3!"MZLTS$(RB)=8"S$] M\H"++ Z.ZUBP4]YH4J50"6',#0 ]8O@&U7TP0(44> D@48N@ A#)2(,E"3=@0H M<0!I&DK>$>CNG@F%1V"UPWEE\=_I?(O*)[B,#VZ2X*7Q0!H1R_0IS6&8;=/X MIS[==5%(@] FY4@^(IU41$D#GRJF,TX;U'V.=9%/KPG.C<37#X72XLJXA-$D MLCU+HOOL+'LT>4@[Z.DA$?0!"1HO$E!C_% [Q,T7\[I%)@C>0X2#%5MJE>#Y M>IW$6U[I>)'ZZ'=QZQ7M3R[2!\$SR+I6G5?T]__[^!C\XXTD_G5=/[[[)O_OFSV___>G^I4B^>0Q_.DG^5+XN[^"? M?OKFJQ^?WX3ORY._7UZ^O?OSZ\?GT[._G3Q&=_GZX?GV_NU/Y9^VC]G;FU7\ M^M<7\<6/+]?1^MV;\.KL[W?)7[_[T_7-7_[T-MG=?_WU]H?'].[KZ.EO-W_Z MVZ?-Z[]^^NGFZXNO?[H^W?SM+Q?QIT\?HU]?_F;UP[;ZVTN\WX5O[K^)XU^? M/88_%,]O5X_ERU\>\]][KOZ>[LOK3R?Y/\YJM->A.\^^Z__QS\]>N3OU]\_[0^^^K#_=E7^7_> M/?SYW3=?Y>D=_/[;'W??_O6YO/WTW8>_?[@(HVW^^F]O_SO^_GVX^L,_P=G= M[?&Q>[\R'YZ=>ARBP=*O? O1?A[CBRERW4#2\QL]C)8.X/PAJ8P:8=Q1TZ6^ M-*IP)_3_#XJ=N8: CF1:0"C7;?6<=!*K:VD&EZ6M]T#.BR0V#J*_[U$A\0C3J^]#P@^9R82E1"'*9='$(DF5;[2:]N\_N M4E0+#**^SL$@($0 A@^]^^HC[(ZJ.WA3!PHIM.*7+=1*_"2>*5Y7&$L?@GP; M8T?1)LMW&&3F>30U!W.]9^@2)DROV74'.](?@Z89@)]JTWVF33-),EDW#9CC M^FJC2<;2)7VCNGI5E0]9C@VE9=U?:-#[^:0:4"]&=)W?Y1PLF$B0)>RV#A$Y MB8-?4P;V 6S-ETZ&)4=4W> U3D^G_E8N">*(M:9M?2%%6GO3UE+<%J@A7: M^5>)&V(0-UT?+V]A$F@GWM,9R*WS78,B61K@^D*4YT, .>WN\7A@(KA^?BD= MEHP TT"EU<.;FH[:@[EW-^@1)DTQ/<26(#V[)V092+&/+EW&V+@I6&^8%,K& M#D_Y:$[5EC99.@[00J'(%N(+U1(FURFJYI#E:XS-!N8P,DC(TN_AW.'1FUY^ MQ9S1ICYU#)>]W7.,P5JLRSQTE6#[23SIF]*K]!Z9VT40#G>EZ6L"JPGP6B=8 M29X(5&B(+B.5YR.D98-P--.U&E/2_[&(?E_:WL M<(%V)DF#DKI$HYY/YJ"/\V>$_?E5%19"&.E]QOT>SJW/WO0"*9,V2+*TD?^2WV).M_(<+LLR/B>H(IR3Y"I% M;(QWEW$:I&$<)'=E4-+G)C<9VN!>[N%S>9KHUDNU&-;U]V].HO!46P\$ZI% M.Q3HQO+ZTMA>RLS)UHI=EE=P-'9DLPI#_#(#)]F0) M('I* XDV2,7! M_">W3DV8F8M4\-6&']DO4L2PLT7D0XY0)VT@E=@TU&C+C4 M.%('^X0X<7#^O6X WWF>=639*TVO6KTUJCX5Z Q_493Q#NG,8A8<'4SAWF_3 M)T"T9Q;$,0.;9KXAPA<,"PK.LFR#6\]@7@9Q>A=OTW@3A\@:OXV+'XM5&GU" MA)*_E3&TLKLLAW;[$,6.2%&X$^T BFXTD./A2 :/BAW0IU=YG,R[\"=[UMD7 M?SC+2#ZIG.A#/-]9#I$IB'^::RL4SN#[H>D"P$FP26+UK J MRFR'J/":0T]#R =[I)0IEG;_65 \(##C_^#'PH]!HCR!3@4ZK9E]P$^',!$0 M42>"MQ#_ +ON?J%F(N0>Z+1980F_6QA"-.P:6;'W>1!!G"P)/U&OCQI%]_=5 MDF1/.-3I,LO/LVI=;JJD:44)F@6EDQ+H/+9S2NI%P9QU(Y"W8Y$/(&@&Q.F( M050/"8*ZN<^"4G. COUJ)N>Z9?CFIW0=)PF,&'KL7(O*8=R:LVJ"A(Y#VI'! MJK\83WWI,"Y!K87;&Y[OLBQZ0E,@Q%ZE)6)=C$%:%+ LFC_-J&OU9W>N2+5) M$]UWU(T\NP"-YS )"%W:IP?0>C%-]ZL1U@.I>("#=E@M)#0/5D!W6 M5NHC3"MX2R,-73FHU;.Z]E(K*1*F:R#]0-YU]'H>TI9GWZK36;Q=.$>;0)YY MTM$E"[$QVLQ&='T5;$2=LO80\]B22:7CT_EH)4\F,8@I=R9]=TF?CA.-6F>U MOT&,G_.0;4/'0MY)2HFT?%&TQ*>/6J!0/VE4L\O>;D1#9CMX'SR[V)R%D[F_ M_Q.1(JZW@9J#,GCV<_C5%1<+)ND21\1=?X1/3%!#GJ49OK]B8FM<0,F8"-=F MGRF!P@T;?_+)"PBB;$\R_K>#XDA 9E3?E].VL& A:\4T6^N1,I8&D MFOPHG M3';G/2-=O&:W'N.0Q4A[BW^XAW 26J^RFFPQ 2 M"[BH$N@2^7JMJF8%:(RS.E[' .\?FXO*3D42![- M': V?ZR>7YY?&>BCKK7;W::=5X2#\ZLE'$D&S.Q>5_86,,()?',]HX[H1O?@ MYFWF%OEU;ZZ]VHI""?0[2,NX?-$7..K-"!O] MZU#0DN'=25Q,A.@DV38&M#57J3O$@EI*&!2*=5H6B7G*[A^RJD [W@4IQ =3 MM_O#:74U4_18X#E,809_?X) MIN6+/5X&_5U7)Q.3(H3(VY.NNE]],2M&BT>PB&3#0PEW\3-DPWB$^3JSE\>) M2""+_%K'"N#$R@C_>,>UZ@3?8M?:K8INYQ5\9NCO2S#"!\QL9==?@*4F;6I. M,O$=!K(3]W;MT!%2,H42=2USI5!:#,B7;1U .RQU=7OW:<:3FGQ&]Z2(_#J9CGPTA H"RX5 VS#9*MU ?]3(85X\2B(8I@J$)8[D_M0 M5QX9HMNKMBT@C1?A@Y)*K!>E*ERIO0NR3O@W(TSZ,[@.!^S-KLCBZ/GX*!4) MBX/AFJRC7Z@!A8.>LQ1!ZCS#P?RSP( _T]3:(I% @4N! !*U:=PV!O^@S;TJ M"JFP6("(5VJO*,BC\/=QL(Z3&">1.:OR'!?V6>,;K+"@[@C^T73U=+PV%"R++QU>V"/M,D;6$'R/SG.#9Y(?@G]G^5D2%,7' M8 =GU%:F-$QO0,NP:$B= )MTE&,R#&!>VM*!C@ 9"I"Q !YLJ /] -82'RR M;1AHFZNT*N(4%L4J1$JY($\QR8\YG!._ZEDG-L1D<%42(\I+6O<#3,$AAMX54:GL,RB)/B+GR 497 M;+,)XOPQ2"KT8QQA+]HFQJ&0RRV,.,2. MS G:2;&+]DOPJI[X"W ,FLEQ8SP](//C?[$4@/@P?P+X!Z'"[PV- XBV'N*Y M1;FDC_0]4BI7)=SI)=Z?FP8W)I&+I7C_9C$E@)#B]6K;$6IG_G;[8K6^(R(E M)V^"O'R9T8SC3./0;AO.+KS[(0T!:I#&W" M[6%.@R_+51KAZZL]2>V .L]H7>O,.T,(KLSDUB!)@*#W6;JM??GW/4^^;PQ9 M2+D7)J/)$>M"R[5:(^]"!3,-#?"I0FAT)W<,0UVZA-6>:*=;4>O M=K"MU'MA.";,L86E<&B!Q3FW2CSPZWG7ARIK40%!ST:>N92U5"+/Y!JI%"4W MI2[4HG)ZMQ?O^H2)[#SF4"*_?U^8FM3% 5]1:G'+TGJ4C#VOKM2:V&6(D@Y! M5K$@2[B!L!&W9LC'V),J.4.?!N&/VSRKT@AM-6E0HA,<.A(C/4W+?-6':'U? MKLEXCJQ#4[J$Y6:;$E9,N655I5MO$C-7 MI>F83JQ"&\JF 2%7_RT3B&(WGPWG1AB1@R* IS -'W9!_N.,/AWEI&X-1A4Y M.B4B >X'VHY+\>?HBE=:%Y+'#IO+'5+T.]NP!X> MYS2.HA;*=%%*.%)Q2% M;=+2"8@PM2]P843.C M?2.?T:EO5DJ*O)Y'VPDTO7A6C;*5$Z'ZOT'TTUB)3C7<7H"ZM26!A/LP@[%(QMNTAKC. P$U"#'$CF"77)! M$)+L?II;FYH>28)T;+/1)#A+ M>#:N+]'>Y8T> VQW-S+P0Y9$.($#>:YNO+DIAG"HJ.24R KKU9U^%>RSXG> M]EW805A/4EW&?34OK&HKB(8UV^$TAG$61:NF90QR%G(0U)>;&D$\S[15; WB MYLSY PZFCS+O2-%@MF:PG8DG'\;M=BVEQ;2"\I*"'/0%UM^GU0RQC*>1CFYA]*F' M:')N+97,?UBPC1S9O.$M K#O$+G@+KFY7EF OXB!F*0K]83_ZM=17**K'997L8_D:82]C?-0<"T M_])OHA_N&GC<%Z]U72AK+28X8''2D@C/PLEM&[ M/"L*D%8XU0.)2"0U.+):2*^0W.AO*ES(X@LJ1-Y'Z5EORA>O+<4>LZ:_9S87 MXLW=IYJF^R#?PG(5/L3(+C7[Y- @K>!*,@P(ZG&^])<)1W>I:N')F;0$,=[> M?;+3EJ@C7U,NX!MC%Z46TI %7HQX#ED*#2F42_U)+>@3ZA:C)8]#;>=4$K6Q MKC_W]J@![/ PH,P#K@0!YB@3"=BB_ M'X_6:@=",^"1<_'5P8IG7; BDVP,']>3#">[NH?/Y6F"S'F1*.^1"8%SNB(; M(VI[87V=VCY:I1%3 M,P3]##: MU1!J2K4T-(&<)@^8W.ZB^2%.X&RZX7%\^[\"A1,]+%' M@U*Z)JY@%!SP(IALM\M2XJ:GKFES'1:2(:A4EN"]ERUI*!;E^MT[@ FPH&S.8,@F"4#82U:2XV0E<=I:(OB[^D\5X+X! M*3(?[/ -[1%X>HC#!U# _!&/4A#=^*O_5%GYNW63%(3^D[B7T?:=[?"NGN5? MX.%Q:XC&I095^1 7H!8=FKE^&4['[).W;U>+ALQ)NC,L7:J9X\=XX -P#S"A M?#CX4LC2N:V"-H-G3?KX_#))0&M _X+%J>>^?"19#CB,0BR8H"&6W$Z1&GYUF2!'G["[UC80I+=!(D MV<+0"1 /2(Z"S,D0_0? /L02.@9LGSCM"BQ0BW TP-,T;Y0Q"&Y1(GBI,([ M!:SI(WUI-_P_/&B!W\+7T^,N.438)5'9V,=1H%Y(V27XM4)1PD2!/6Z<"*+\$I(8(S<4S=$R-6?.@>0XUQ_!W(JA+S(<*A=TP$ M'ET121Q(8_' N9@MB)"DBJ YC4$;!X/#+*3$UO\VH9F(YF#@>M7$+_6454D$ M'H)'"-8008 =-L!7.\W .&J8! 4S=-$8D7H\NK @22AXL.=JGY78!X8$+.BA MRWB?>Z36)SI0,08?MFL[!I.&&&_K8(:T.\^W[$4VO*5PQ2%>LP]C_F*W3[(7 M" NT"5VODWA+KTUU(AK;K@#U!4QG$CYW.0QK="X6]=J&$M+EAW-3LXD/T_!5 M-$T%/@GW@AB2/F2\:'D^O@H2-G^39R&$D= =3F/KFU9>-X<>O0/6:#LFHJT#\M5'UKCIUI@?M*,_I<)=QX#EDM5Z.$??R4 MKN,D@=$M#&'\B,T^\4/3UHB,ZV' JZ@>B%SI5?58R%YJ!_.H;+06RQ.8+HM< M&TH-:??9*HI(W$F0W 0QLE;/@GU:46*;/.@'1WLT?#'2+0A MG<"GATZY>J$H%?SRH0*;^E5-)4"V".!'6(H$R13VVM<]R8$*MH41T?G.ZR>G M6!A'1EJL\""C^GQYO:%&^E5ZEJ4I).E3?XC+!^H )MFWB#IXPQ,7U:ZWC8_P'P+\UX(@7JCW)%._1@*?[8F9PD#@0B7Z>-#0XJ;%E80&O:M'](? M5ULB![P\(-\+!\G)YWJ#\T$&:2S60^RM7MW4IYDVH'O(7/[*7*N%EHSZI8 . M@YNFBV!P0XR8P?V5N6;P]68#\:VL/ 5([8&G;;WZ3GKT#IC*68U[HY00$:?; M^I90R-6F'6@:^G6+'Y+-9^Y@71X<)(=9/N3@'>0X.:JM.[\XYJYAR'/)4IVK M"JT<)ITB;O*6>'^:K\@_(DXWXI:_=<)H4L<=7W&G6W3*)A[)QHP_RPJAUP'? MZY=9&23-13EY&Y55Y2;)GCAYF^C#@(>@H%>XV(=$WT[%>83^E9.GD)RS4@37 MR/;.XVW[SI*.]!0G"1JJ2:^&CE/9(\SKFUF< 13/O\/E5Y0$%.T(C%049PCDI*7]E:NBS04,,13Q5Z] MFWHB'2#2! GN][?N^4 M$230Q'ZXBUH N.]QW;F)8&N[^_P&A&L:"D.Q?!\2R>,0(I#\$."2&>+M C<# MJ!VH&WHUU ^('O*9MRCWVT$>/R+[Z28)0A(265,CU#5U>[!O.H"GNH=/= L6 MP>.Y9+5>;/8^K\1F>M.P?@^+F_KT4PWHYO":NS+7AT]$Q@;M)A?/ MF!BDTVZR*A4'^]2M<0(RVASL27O/K.:L@,=OX4)=,QT'4Z3HG'5%DO^NVC+? MB,84_4@_/I*^7RNSV&%*L6&)=7R>R^M)FY3#;#MV7H_FD 5?!G*VYJV'C?NV M.< S%EX7;GF#I?>B1,"Y5/HOM>P;3P%K F?M5'Y/BT9LX C,HKDVO5ASRKMZTV?7ZEX,1SIJ%;NWM%R"\L\P[6 '^%JOT?X M("VO-TAUT- H1=4#IC\(N@'PYY*8C$0I"!Z M9<%"%0:OV''/QV?Z"--*&$31A:ODM"&669.8D)P"MEF&#@1%ED1')%-/C-_6 MY3"-\%WF$7YO5^5D(]RC_3&N=L41?@R5E0_HB$SX0_,6DJ=9.!:FC,NJA"29 M$'U0A TG-&;Q);BJ'YP=@755XL=Q:5:")-[%)!UYAB?#.H^<"+$3,$Y+1$31 M/D=;0[1UX:0^414V$&S;-#EFR+- 9I$!S5^TVV;LVR>_"!\1[7#2^%T1TF>6C!H MQNM2#S3I4_!-0!,BF48\,1,]',4Z@NMGQ1]A^9YY+KHJ:58? M0BV;"Z9.MFB.A>95-WZ43)XB,Z^ZFZ>]M/;^-=V>2#CH]5B:/E LT$RT#9HCTT,7N$XDT!"0XNV.,ED][' MKP-3M3*^Q)2L\*(N"WK->)VRQ]S5#UG^(Z)+\3!]4-^KOIC-T@,_00">Z(## ME^A^9*>Q:($0M=GE[8N[A1%$1EMTF>6X+H$P$J*V>>GM:@1W;4JF):1BXBY% M(!+N@KVQGZD#H?W=,'4P?&]++/T"?@]6Z$=QX6?*#S")+IYA'L8%)/%VBDWE MJ>X#8-T)ER0,_:95EZQ&( #)RIV+@GU[<$[>DM!JV-\'2059):D*/.PGYN8$ M'7J0C/'BA@*SY(_S&^F64!BQ9/(H5%U*XXBN-#M0<8.[@V5)6'_58A&;FI[KWY#5C_=HC< O31?K;KUNKV9KEU7TBKN>;D# M9,BYSV[0^ _HP*B1<_"N)[ D7]<0 MDPKJF),+K FVR&E_[Z)2K(\O+2VF>%"@]T$8E_\3U_/SC.MAA3N Y5#RKFWM M>[NL//$._AC7FB?@;Q.-_8#AB/*6X]!CU M16!X? DNGH/=/B%/S0F"*8"Q:7&(8+3:"/\U3C"6$-)W0?B YL\/LNL=X3PE M^ 49\QO<8%.A;Z;$T4WD7_$S_MFO7:H0-0>*2B#5\U'YD83:4R5;LFN]/W5HNUTFRM!**KJ&Y%ZAC7Q][#B.I(K!]?8 GHK$>D>YJEQZ18'3(?*JS& MMSFDCZ70Z0T2OQC2YFB[1CV#'-39,VK-CG5*0%[DA"]A@C1QO"'I.&#N<;,6 MFPP;U>[:B2'AKU*AY5K,P*Q>G:J^+37+94 MC!H,\V"I$*]X$R7;;-QB4X4T[\*._5Y9"F@?2$&Z1O<^J.\SO+/?QMN'TJ)\ MSR/I#7+2W:=.$RQCR'W9524,];P(#IXE4Z-[Z: MJQ@F^D9^(&TZ]*J+<4(D/#%^N! 1]T5+]B8"HWN)5@PZ5Q+>A*%W'Z'!@!F, MW1[MK#QZZ;)YA1#:!DO/]3U+60(AWW0O*G@LU>GK-P!KSJN;-S/8EF(QF<3M M<66E.\ "(N9F#VQT*KI54\ST,LM)].QA_3Z>N*2=O&DP*54#D6@LW*6F$Q2G MX'&?T_1SK+OAEK_OSJ\^0-FCMK:!-UZV% PX>$"\2[[9) +A@=9T')^FII?L M*6^F/QH+A5H'ZC"G%64TFJ2+/S^=A*B!3)1KGMBW*F2^5M$];K$T54>?W\Q, MQ0==?A4:-_P\L2BZ>;589PAR<&J=&KG3><+1'L"KF!S=-[@]$[8).B[C%-G4 M[_$]^Q6^'J<06Y$H)[.4*"9C+2%!CCZUPQ.C-?M<[6,?FA P_)"Y*K-=MHX3 M6,BM;&DG?Z<8&57#\XQZX2XM=/P@KW>XJN]<S6:^20-36792MTQ M_*PYO");(]N43^CHRB0DP661%-I?>P"OUI@VE1R-9,0@A]:89<9SOB?'>"C/ MN7"])8QW:G /'1PW2&ZG08(UQX4T'XA&5X]Q)QK4:7A[!,R8^FI>:J8Q<=+W M67U9=Q.@<[;,3!-V\FJF":GBFFF*A3N_4E:]5!3>)\LZ>G]E/?V+39?N-S*I M*.>21MB<;G_?CS4U2.0+2YLW[G0:NE* M7>JO"_K\M$B89+=Q>IXE29 7;.0?3P!:G?UYSK3(&\C&@".N?&,ZT?PJ=S6O MWS)"XB=[T.!.(/?!+(=/M[_!YT21R(R(PWSKX1 M149$<3PWMXOOY)N39(%T9P.T!\_OC0[8WW./U_[.U]_KG:XYBW3%Z+$%&NH[ M.76*U(GF\/\28J*%\+^]227A\CU%E_UIQ21X$FYG_.8^#0H!2%:46'YS>M8S\D@^3?M9_E+FESCRN3D4/=^O+N6QY^T#?R]LFTH&)[/^L0[_TRIL9LE$:Z6]Z@H M_G78V/]'U,7K>4I$%(_W\C5_+BD[H>]A^NF65LOJLRI1Z YL M=,[K#57WO0?=XCHQ@^9>';I\DH8&@VRE[LY?M;,&G;:S_#Z[> X?,%QN,7:Z M/ >B;U6KL[\O3XN\@6 ,..+,BX@VX2!.[^)M&F_B$&<[0!M"04ILA_1O.-VY M9HY,N]'\!?E8D3O<3T?PT&F T&Z?9"\0%OTX@=N[3\4M3/"+6Z$VU.CJT>S4 MH&X@-&UFN+U-,2HMJ6_DB$;Q?SQS68K3TS/7TPR;0IOS.(=AF>7%:K_/T1DS M6J7X"77YO(P;W5P=R"NJ'>)B.X?Y=H1H5@8V_?M%@W@OP M^:NJ[/(^X@:7A8%1<8E6?Y]7A3!OQ*"AUYBX/BD#U@M6YM^FPP*6SO3Y^XD\Q2&-QQ,Z@H3^<#T@1'JH/5N74539(X3%T MP:P[%PQ^7G5=E<,';U('_D1S^#3W,GW6.S-E;"KY"M]=FPSD[V/V4_[8K:(5 MG4/,DT8?=O0:]*@B3OL\QLLA[>C-J4Z1+_ZK4U7/GU^Q,\56%Q T_"RD*W7)\RYI5IU]'^?=3R&)A\5A8#1<@6R4A>K5 MD#UOZK/7/B>\=> M,X\!/0>4<"X=.0MR%JBC>HUM^T+=GUVHHFQHS&NQP)6]=PL?85H)@R+J/_MC M;TW @(L]NETQ2^^"7' ?[BG#I^CJ6WS3[4BQM@\GKC>]W-="%2OJX%/9BF@: MJEWY/'ZG.G7^Z?L_B&KBB"-+G"Q=@BIL'&XK(+ARI[^5<_\*@0,$,T!/BLH8BK"6F:C/O( M7";L=I)&*M(I-[FLKB14&Z'3G)6;SOL*R@Y 9CCENZC>*66!N!E.1;\9;"$O M5]EY5@-F:+1U\B*5H_FXE!R42/KP4Q-&T@>9J/F=05'3O'USY%5%IK4<]S/I M[./'I6,J<9]B.4B#QCJ5P98S[Y^X-I26'9SZ7%UMWGAIHUD/G+1' 3N$FY08 M:(^/-7\$8+#++*__DA5['JC-Y>Z1-D?#.:VIJ31 ,R'[K\IU]>9F]_D)6\:H5<\ /ZW^.T!K\J\(1>06SM[SOYWY1"6IHE#GPA#=LK-/:^? MPSB!P2&6D3,;G"8N.<[A$ITRIYVYQK?K+5>#M4UHV,.F,V&]FSXZS_4X-/GF M[H<61NZS^I&W9^NGG+_,"-5V#;"L#%K7+*?"VCP&D6?NR9,[/:Y=U/]5^6_[ MK&YY?5%NW$+U(6.E1F>?-UO\WCN(??1@>-;-7&VGL_4;N68.LX2LJ*B)QKUD M(7[1E?D:IQJ<[^N:NV.OG!T2OFK..4W6(D#N,B"4+LI'(;-R2)ZZY0T77'B" M^C]]&>:#0%6"HR[AA!TR;\^!.YRY5.=/R%?;JGX&OX1T4OPHE,<$WK\D: MA FG,Q=U0 XM6.U^V;>' WTT^-]^Y\SD/=DRY',')(9;O*#[0+4R' ME*0S/:4&<0@B3^ #)8WER_\-IKRW1U2%KEW#&G MJ:SI)Y=,H?A19OL-!%V(4R:$VV<=_9(5=VW62HTS%AIY_DA)-;^YDT54PL,X M1[:TX(U5Z+#2)]N$*GRZVB>36UT3FBR%GU)R'\U#A,U&&LFCB]>_<]CDOIS# MIXXKZ>_E,'D 7Z1_+N2*2Q3 %_*Y!=QKE(SN+-W>:I1HXZ1Z(CHC%Z,Q(LD] M-;+&GLJ:\.,K6@U3^UBLJ3@<*!.JJ/:OS(KXU[+Z6?#-([\JUQ&)']/F*6]Z MQY2F=@X?I83EN,>>T-O.$QKM'.Z[)$QM=D\J[/T=TTRUVY'PFK.U4.F;''X$ MZ*2B:O9U.()I]D#)I-G9,YVLWH%,HY1_D2G>\G7U6$)IUJL-F#:W.6S LZ;A M;2.G7\L WF_BUWF10QT9\;?]L_BE;"(3Q9Z%< _%+GX3>]5Y.BF^G5!EI2 O M9LN=:#T)"R+6NZH6*OI]]GHK_G'GO0[;)14/QY.9+!1.%:%0*+T7T9(AWCIA M0# Z']Q%DUA0E"8.H\Z:6;@Y[6B>4E!T3&G";2^EA,!EV'\BO+GFZI"QIZYP4H7H":HRCA^UCL[))2EG'-"',)>#'6F<5#Y$9X1XTIU$4DN*/\JZTR.0:+O&:?>*Z9Q8C@Q- M#QI2E S)SK:W=DA?3)01 A[ M@%RRUQ-L8S67RK%>>A>_IRU3:DK3V4Q8["*-%%],P9^)R^J/K'[,2RMN-T9> MB>R?<,?'3A$1V^?PABZ-P,:UL*6EXUMS)3C7A SE' M!VT&WK4 7JS=)J&L9,T"=Q(F@8^5PACZ8#GET04EG>'SP25.!Y%4C/Z]!@A- MK52[MNJ@4#"1"3\16N@>X%O^G.6ENHG,V])#(4560IHU2%+3S8QY(N:< MV:PBN[EOZOPE:Z%D^UH&M86>7E?[9,8>UX0FJ^"GE-+L@U3,\ELSG1T6E<;J MLF8&R"7;ZE>ET%FR1DC ZM^K[\C,/-:W<.>$):ABIH>9YF(Y0I9B6C7M>5$U M1CQ0)1%\><3N'FF339W3FMY, 9I)<_#:NLH Y9"?[7;B80?3G>=GIRT MR>8B6D6J:_R[F$>=M54-J&99DZ\!MD"5,1C4, AD!\T<)FFFXYR)3I;_('XE M+BV-V9U"A3T/&"HMF.S\^;JM=W/91_CN_Z5J 6,$DD-CT"8'KDY+UOGDASHD0X72+X(#QOKW[$:RN'M$UH8P;,;O)PD0S M@\XV92'QP%:)AAOJ&B\&;JB;T53Y^N;&'1\J+LY+J/@ MS8 \[E>2)Q@?C9*IR'""Y2"\5H5NTKYU<5_A^D;.#BFO4->GGURRZ])] M@3>!<@#AGNE@Q()3F_&0-4B)@).OS;[Y\IAEN[]=[R30=Q\'%E)^NP[,]&!_ MFC[_F>IE"U)C+T:J/%=V6/]CTW=B MT.M+7C+=C_VI>B8_7%ZZL$6*8 2!L:B;S7J]?]X74)SE*]_5?)W+&UC\7' I MQY2;L^>J;K6]?/8!M,9G]@=6K/N$/'_V1U;11S3%>A^)8>C6..IB4)YN,967 M'.QC0IK]6NT?VNV^$-14>^VT=VP-^7?6.S!7[+SFXG@P,*2:IY1]@C"ONLF* MSZD/NX],]$(.LH5&;^PV6%%4/T%]1>83#=2-KELW,A,:LKV*8DE',-XI#NT< MNM&3.9]QM))2S7?B-=$G!G(OVR=>*_^3-2M41%)=N],&5ZWLS53WZ0*F.7E! M O$#&,D7TM4ZKZ0"JFH)W>;-W]5Y@9_<^:E6%P8MN[M2_4>%IK$_];\0H\9D MD-I_)ETW#ZG8>@4Y0_FHO=>RH]*AKTKE0Y(1H%YKVQ>)6L?LCS'K:^SAC=GM M]!>9_.2*Z8^NF/HL$[*R^C#\1GPZK6)S EYB^^=D2T;[3A\WPD!>^&]76F/]\]']US(N>0=C>>EK_8QJ1844*U M\7=>\CHK0"'9/.=EWL@K^X7KA]:OU>O.2N\;=.^$D(EVGV"31-&(K?4,YE ^ M9SW^%U0S[&]'&7H$%V;3-I/+L8FK6#U^DJQ7ZT]4%$FQH.]D +;41^$I[=LR M<>J/8%H_G#8E"W.^7N^>L*(R0%#@$LBTSC9-;30W"I_CQNKZO?I8!#NOV0G:'_XDC 'W2/-X>(G!N.V@E%(Z/*>O/=KB< M2(F+=II^='5NEL.&<*6)(R"^\H?VJA2:RQZFH.*?6RBQ])M0;K;Y6A8@,T'1 MESQK][4SE S&8OU@XE;IAUNQ?D#6C\CTD$GERD-X@"H)!_.24FKZO:HV/_.B M,)O4CG]W:O*ZSZJ_050W;7I,JKY[Z$&U]B#]R?2TWF+P:T!F1<,BTDJG;CN) M@T)BOS5^Z7JM]:/'Y>$7%Y0C348Y6.(W@ MW!)/9M@HU?=F?7=F^B_(*!5')^KKF,&A-.X+N_A GSERO357K!+8@Y*L-0R$ M#74#L6K;OSMJK(4(HG&$^R3*.:PC%@W?ZV/3Q8E +/;;O([I%+4^NAH;T#ZB M/W3"Q%-X0QTK]5'VFPGV-Y*W\I7=/V4EZNV] B2^LLG7TAIVPDVIYF5I1(T. MN&G%U'Q^_&Z&RA:Y@JA)<>TC-LF/M*/?M4Q'W?9'V#"T#VU?Z]!/Z<.84KLY M.*E^.="[MS(>6V4Z.C?@&F R4ILS=8NIGK9[>\5&=<.3;/80<=BVCV,(IE9=@+>=S 5O=0WE):\DY3H+T7LS+2%X4&J/UV5X&_Y "MIN/IU :G:Q7Y;IZYM\\YMP^>5>U99^@]>>T%P0R?VRUG&022I+? (_RJ2HV5\\[ M<1/)31) 2>VZ,+O/4KP7'H*P-0C23_J\"O+$D] _ >7F,B^S<@U[I.7/X5=5 M#6 ]GR 3=6,P.B(])F'GJL)#) MNM$JJSJ:2H8)7M=2T"S=H$'C\#'9#>+'3,>%Q)"-R/$&DJ&DIXTFNVOYSG(0 M&;-ER\6WVZM2[R=^F>6U-$TZK7OXB8?AATZWSF*M/@'RL/F($)3%9Y1!>G%) M/;,9%7F:#UP 6@GXIN:J_/ HP@(O%:#;>L)($J7]3FC PQ=YUZZW M*A_A["7+"W@?A"XE70Y.B-;WZ[OJR^!*5]]FW<=E)K_\_,?TE 9X>E3=-VK] M:(__I&! V>F*VDT3T@3,".R3&>,SW/R]NMQA\:#*0(*]$D\SMOIS.?8A 445X$!C%19YA: MZF' @VLZ?JE53ULO7P1(3Y R[,A$LN.#A&5H$_I?A!8AS0'F#-]7\"O+=?=7 M#LX\T>9%/%"/O*M:)LN)B@=JGQ7@W8L*ZWBOHT3-5@5!F_N\K>2O5T,GJIDU MT]-FW;R9-?%%^%J7LX1'#3LYT0:C/5[:I^WW,.A&B]%D!Y/V>.K'?@/"6VO_ MT/#_WHNM(#>MQ#9^DW842K%*RER@G-T\KO?)^] M(K51'48%<+&+#G&8=8G,""A-#J.!AW["A4#*00: /$T/"\AS&9J FQ1L!4*$ M$UWHO>/H$(0=[3G#@'9PG)U4'K18L)TY[""UTA,Y=5 M+>3>4FT?<9B%0-9 %4D)O2S_IZKT]54_O_/V>BM.OS.V2"9V##XWC#*2@6;P M46:^RJS/2JW*^C#KO[QB$/\H'C/Q]<1FU].P% UW.N'B$0M^9^MUO1]8+ P\ M;42HANX\"+CH@7NQB(LT.R.*2&RA9W!G <'+G9^@#[@],&BY=Z[T0R5>PWB: MT0BKF1Q;P&IV$6#O7LT^:F[IJXG0/&,UG1RCQ7*P8P"B):]1Z(-?ZDH> A$% M+GSACJ%>:-3$C!W5TA_P4S(\@'SV7(3JM 1A/K M\RYXL4= C5#]35<3/-IW=B!R)%'^@P3B=H!(OA#7A7# NHB+_$!T&]$S<8TL M#TWX;1CB 1W"8!;WM+::*34>^XR+=-+K M?1JWJRDO 3?>;NCU_B)@NR[U]O[ M0'_ YYGD'7:L%/%E/XJ(&D;\6U,45.3K4&C])!)NDH8QV"ER3#3,/D4DTR&, M0".>#N"=$$.:?63I$D(<+[_/8?$2(("SQ!8J% M7M:I31])W(OE\U'%OWF+2^IJ?,K*MGJ6T_XA'L7F MYNY' /%&=U$[B\=AM=I$-TKL;OX M)K&==$P!QG*<2FJ;5Q<]U=Q79YN-M.QGQ4V6BU=%I\EZJ\Q: X#ANA^"P1A@ M:M&C3"O%IC&+Q1*,FLGF<8L\5/7NB1<%7,M9&8(BE4V9;IL^#M6>^=CUY**- MVCK5J*LE+C5!Z1JJASLU(970@)'B?.S==)-*E<>$8;HJ-WSKUG^)(;7ZV;C, M"PLIA$' >FP7DJ_\AX>"^)J#>EAN4@-!F'D,=:6/KBIA7#ZYJN1>6EH(.? 1 MUKNJULA98A;G@,1>OYU7FQ"2W*"OA2>G1V P1'I9Q$LA+IQ$,(50&+SCZWTM M9G7QNGZ"K?8]>_:$$JBVS#1FT#K1>^.:_)CI;@+)16X-*ZC_^2;>*2=*PQA. M4?_ H!.[+E,RW4D+OMV=1"^ _;\>Q/[[G]4"V?]K+/M_36,\4.)6P&BOQ>"% MN#N'$N"O*3UEH %4*G8=I%:*?]] MYS_E7YP:J<+W5+V'Q7H[@Z@80S5HTBYI%)VH&!W/(%+%;?W$-WN)VX#*^2;Q M0Z$ZB"\_B180M:YWW=L]J*SAVJ?Z,YT'&U'9A,9ETFG4AC"?DS'_*W/ W]B? M\IL.:(8TN^*X7$3WSRD6BO!%^,IW-5_GFU0E;NZVNS7Z=.L/'1BRQID"\5ET-3MW\ZVV[S( :].B6=^SV'?6A>Y M38YIY:;!9GN(4MH8KHBD>CQM/D7]$7]N/)H!3VPI^.77A_N\+9Q6 OE'>(%^ M^?73PV=FNJ7"]1Q/VV4?&))%*1Q(+Z"X6ZMA09] 7H>*0+>[=>@BNN?GE$94 M/U'8WHYA ZFP?>O\RK!IS;J7?2$U(W$R<''*33"YQC'=#W%&1HUK.#V^ M7HMA,FS" )5.322./>31/X= OYLB94("D;@-CS1^S%F+K MZ[P4DJ8TF$= :!TA,*BK,-=-3V=7MV*"??YL-T?63=)X+1PHJ1^I=L 1EL@9 M591TRU"JA]LM!RL\[Z );F5PC7@DR[V8D';EB_R,:LA'$[F);F91[3.\#.C7*)=O_-]TXKS7,NR2'!\G_)=XR\! M:KJP09^EB-<>@K"5"=)/>9&9"AE"(1M'CT<633 C2$4:@1*(**20L&I(F&YL M">=R;0' P7T9^?<"!WJM-U"!@R\,>*37)WG!K]/V7*BK%$8HZ M!V:P*'4!\DA?DP.!T>,66@3>8H0G)Y(EM.MT7V<;_IS5?V]4G9R-S(X*^&'Z M3J9$T48E@N$:8XH5\M*%K4X$(P@-F2 NBWG /V"'?"3&ZKM_$.?<# MG8!J 0LC?[#ZKU@&BH<:0IG.D\JL452B&GX\>TC=,Y[4 ^F855#H[TG/L(=9 M;H*&/=?ZHHR!('?SN/<=%H*+Y:($V]1^JFFKLDX%C5%!M?GBU[CD7&)%.X;(:"D, M90Z1NB/5V;R,4,Q5H_2*N3W9B6(^I802>&E8V;L)I\N-*IDW>#ACDCA4!RGH M>^JGF^P!/7OFY0:"!2Z+S!DPTC5BT"JA-60PV_$;BI!"N9%!0'JJB@VO&Q6( M$0RRMGK\0[:KFG\Q835G;5OG#_M6/JMM)31H&;:%A%RGDB)10IURHX M0O&"F,J^IH\TA*I>KBCA)&4+-6+%LVT*UR**H?F:"0VP+.+9"'9A@FS!@K*2.T MJDJY&6>9B!%SR'8(_S/91AE#5#7M]?:6O_#25Q2I:4%0T,U2)_K84\88CM!$ M;+Y#T"'MK%E+9&P@G$5EV_:X_.]#\1SE3=N">:-"A'3J=?]!/XCG0B \#^<@ M*LJ?8(UH=YEX%Y3I!&3#LYJN;3DPPK!L+C"UV030]W+3$ M::ITHSGTH_K#(2RD-&KV$G,CPTV[BNH3B;K3&BZK^FNU?VBW^Z(+'9:AWF[ ME.X;*QVF:Y6NQ_24H89BOM:U76H(_3&9B>VFXR_6,@J8ZRSS2?%?IU5]7KWD M<0I^$DO[/,I1X_LAS%M X+&:V7E5BGDWXF6[WJJ?6]! -.JI)Q8P)I._'QSV M@#4\Z\=/_9J\CSM.I^0[^4V;LOS3RA&JJU+\N);H+\VLI"K ;>@'8L.1EOHV MS"4>ER8.82 Q[$,OV=B%&-V:GUT.UYSG<3W<)$H@2@>N#GI()N9^D37-]5;[ M::]KZ:6]>.7U.F^X+(;9_;'1?VU^<<)QP&!PH>H>4/5,=H%B>6I(722T;]-T MC9JTRW<((]#%/9RCQ$N/9B.I)V$_(S[5%2*M_$=*1?;917U2Z^6 MH]0$E'0/!VB# 9JVSM?@3839R,UQ>_1CJWHH$VF-$;,-9]INZ#Z?!UHENW%3 MVZ0.Y\AQ+),C!J>U8MSQ75:+?5J\]6JR96AIOO)F7><[WQ6 6RSZ@6WCA3TT ME*_O!D]Z'[R/+Y%FB-F<)J]6-MFIT])3DP!M8ZKK$YO4]7"V;Y^J&F@\83&R MWBQJ)8?IZZF?0%HU]72,16^C4Z]CQZR0YIL=G*1IXPR922XXC55/LM.V^^)9OG7>^-[%UQ=0 #$9(;=@)DHB;=R(Y0ZIC0FAO MKNX,"!*412D?N;@X>#,C)]D:1457VN-$Y"0G"X".)QU;TD.81UW=90JB(S:B M4&.?LZMR"__ K\)E7A \HA4\QDP.Q:RQ%NAVG,D$GU(XBX^46N!-+734?'.? MO;HSC70;)ANEC">P)^LPA8^(H6"EQ/17[^:E.+Y9\>\\JR_*S5?QKCIO/EV= M775@T(-=0%B7Z),0<]E%ALWL,+F)(O",; ,(E,VW*BOA=KW,RTSZ MIFBV0C+WK "=+K]O_#NK0_ITOH,Y@SX([V=U"B15GZ.C<7DZ=!#G[S(9]:I4 M[MH1;,0@=?4]#JPFX,'J *'4=, _80(O)_@=PW3BU%YT.OX?Y.'*#KX7^ZP'E?Z-;ZN:JW;2JG?QVM9950OI-*O? MKEK^W QK$IB2!)X @(0#CMFA$+ ME;8LH>^W#O-7P9D"\B_D(?#Z18@&=U7AP^SI)4(]&$#"&(!D@^8*(TIM0X_) M8-#DV*[S^>#P;1W(3UIQR^%4?2>,\M*LOV$Z9[FW[,9B-\EB5\*Y-7\25 H M9#CUHEZ*MS5_+)4#;OUF11.+@RK_5RAN=$%=$AU%/,2ZJ)-=T^F^4M5&G'>\G*TYL3Z274 -6)B*V>]*36[Q!N>="50_8M^*Q#> M[)(ZRZX_(WQ(;4_;&Q,,&4JU?_P$.E<]AB]DY:-5N<&+5[FU5"B+O$ #114O M7EG?0[]U::0B'Q'C" <_L;01#O,!I'Q)6:!\2=>&DLZ3%H6+!X,* #XE /JQ MDG?$I3H;W\?J+M]!#-,G+:2/BT!T?6+YDL# )(T04'LI8!22[62AJ>1UE>U9 MNZTP(\)(63M(#X@N,KI,"6] "\9NA%AB#%L5;],G"S4O13""]!R$P$I"N4PX;,MRDI!BZ<,6:QYOEI CKT)@ M;. GXQ<^94YK9Q(R'[.L0LDKP\]B$BH:',AJXE+-TA7QN[A'ZJP0N_5L\YR7 M.>S/5BC<^IIQ[@'5>\5T?WF2AR-,Q.TD"QI%);J(,_A#7@/6X&ZX#"7P:AO3 MAR MJJ:/"IZQ4^3?&/1+FQ_HIL?AZ [03UV?6]_I,YP@UMNVR"+./IJ\IJU *C35 MFEQLMWPM!)^+5W%:A3YW*W;)=8E7QW%Z0N08$M1?C\)@&%:5?>:!.]T@P:+- M(1I;Q/E,HXXE>0B'#SPXP@?^PAMQ40P!Z[V)0$>R#JCO3BL#)'\F3\!/IP_H M).M&N/D> ];"58?/,I?*Z%E#Y+F M+\5OG&^&:3Z ") ]4DA8'@+&GG,OG937?)>J[HF#GU^6QY]%L+@(T .X@-Z] MAS*3&H8N;,KRH[:?79]?.;R4"\%LCR;Q0%/?",N=L4PPGJP*]G7C^"#Z"N?K9/L'&RTEF-PL1^Z3Y,=6*Z5T*$ M&P\MXX8$U@ L \-N6DI,'83G( =?!B_MQ"?A M;+,1@S8WE1 KB__(=^?5QND:U(N@NT"H,W1BHA>#;LE/ D8+O@)NJJE MHQD M>2]&#HK-T"B)#64\4Y=\W%-!?8_H5^26[R .O'R$'&JW(J)WL DFZGHQU2V5 M-N(C!=_ /K*3Z(#*&S!+"]35QH=Z8(++PTF(7QN<4)P@VW,D[H8" R+# %:A MT,9$.9T.:C&9,\@'5>9%@RAPR_\:]9F 25 WU)6)\B;RR8:0));"B<% MOZ5\9">QGDQQNTR93"]JUWS+"@+!!I;-. VK^$EJ=WE*/SSVV2.N$0)2M-8 MV+B=4US"\)P58EZJD,K^H>'_O1>T@3VQN>7/60YEM2SH^CD0Q':T@?P2ZS^U M8OW'I-%5(H7I[UD9C(GQP([+/&Q[G6)Y:%VW4\/)C&CLSGB$QV*G#<4>D8,M M7XCX)51U >N63F)Y.ZRLBS3YF<2=MV%AEZ64=1E3Z8AZB&4/*>[2OB[S=E]S MB>W["C\U?OMYUT-#)*L^"S&=N\G!UB1$//$)NN4OO-R[D<7,WY,> #,)C)]# M FB? HDX]+SC+3][K+F""_1OY+X'Z[L@^SA%OIJ3&(SM(=(359:PD('/%1;4 M]8,JF7IP_4$]#C,#H<4&EP'![";9)XK-X-D",M15V(VX/,7C!EK)"P= H4:! MCQ^8OAZ 8E],#KN7=E29.Y2%Z8^OI2#H(%H ^IJ)OVX-T@45RV%2^V[C"8X\ MN5YV4;M2_FV?U2VOH4 I6,6#9NBNO?8#+,$&/:+!98%&224T=W@"9WZO=5[Y M(;"ELG/J4Q(B#I6OHQA"J>Z88NT&23AHOC0=>G#EY> ..8G!UB) .:DT =D7 M5V73UO+8_I$)Q2MOWP"2+4(RA,ZL[[UBIK^$TP@QMP? M(>19KE)L929H@_:\VTDN\) M9DC6?U]RV>-H)J!&A7D=LWSY5-41U>F+311>#**TS_OMN MZ4L*N0A"A?\0_91ROSSXAWILU.TXSV^3RNQPB.-F!G,HUVQZ?=_4?)?E*H9N MY@NGNRH)?&$QA399<>_8E!%D*9/&_:JTMXMR [Z*H)]9YSE= %2):)\\D6\P M>Y>'&2&1YI\ 1<>)GPXJ"DHP?:ZXV#M MN*_@5VZ-HPN]E_%AV;K=9\4]KY]_H5 WU6P5C+F>+_CQX-E8VCV5*3YS8XZ4)#:,),X'P MQM-!WCHC3=9-DBI5,)1&=_0JG>D"VMWT8$L2R834MB!CA#T7-\3C; FYLU7K M[LEA1OW4Q0G**$N( >UM^WB =W:3'8WK E<(M7\FBSTK3 ME,.R;MS$9IO9?$ #1@YC)N%#!=FK/S/!C(A.S/^@%6K/L0VU8U.Q>72]XRP(]8&2T7N6!32[WOX0YZS-_-[26 MWDLQ:UYUH'!1@U",V)(\^FX&S/#@A[A(&7Z#(E)'2JQ.Z.XH!TH*@WP,M:AI M/IY-"PC.F93.4#^W8*"^XVL(F/9X/&>7(;%&9_WPRSV^0<[,//8%03L_BBIF'"XZV)K(:PWBGA'"G9?=3@C=G+ M3%V992?.T1ND>[9@GA.3W$G3#OC>/#6O3,<5DUV[FI([E0TCNX\+7Z51,T(4 MHFI%'%L&"GLUI$=BUE2U\TD12HE$9[21.IYJOE54-X)L2?(V:QXDW;JGH/_7 M7_Z)%VUC?O,%?O/E__[RY9]_^8O:&4W=]F/=K7F9"[XN][)XC?B/R". 4G_"U!+ P04 " #W@P53'MN[ M$8]" #L, 0 %0 &=D>6XM,C R,3 V,S!?<')E+GAM;.U]:W?C-I+H]_T5 MWMXO]YY[>OHU2;9S)K-'?O4Z<;<<6TXGV;,G!R(A"=,4H8"D;.777P D)9(B M2 $"-+M+S,=VT05J@I5A4(]_O%?C^O@9 M)A'#XPXLW?WO]X@2&'O91N/SA MQ?W=R\G=V=75B__ZY\G)O_WCWU^^//D 0TA #/V3^>[D#*\W=QXZF1$01@M, MUB?_)U[_WY.7)ZLXWGS_ZM7#P\/?//HWD8<(C'!"/!BQ'YR\?$D7S)<\(Y M M^/W);)6<3)+ER>MO3MZ\__[=Z^_??G=R/SL[>?OZ[9OTDW_[1X#"+W,0P1.* M=QC]\*( Z7%.@K]ALGSU]O7K=Z_R/WR1_N7WC^P'I;]_>,?_^LW[]^]?\=_N M_S1"=7](EWWSZM>/UW?>"J[!2Q1&,0@]!B!"WT?\A]?8 S&G9"M>)\*_8/_U M,O^SE^Q'+]^\??GNS=\>(_]%2K>3DW\0',!;N#CAF'\?[S;PAQ<16F\"AA#_ MV8K Q0\OEOXN?,DH^/K;=Z_9$O_!?O('^>,,AQ$.D,]H?PH"MI6[%83QBQ.V M]/WM56D3["/&NE?LEZ^$W[[ZIUWD_K@!!(;Q"L;( T'4!=?J4C90OZ)':0WO M8OKO-86EBF[U\U?_-,3[NQ7=^PH'/CWX%W\F*-[-Z")O,7DG@V+#UZ^X?-I& M4D,*Y!L4>%^6!">A#T(_!'%"(%[@#5/L M5'E)T;-M"9-4/ 41BO!B0VT(910'0(%&R7H-R XO(K0,T8(RC_[.\RA*,35> M&TH^#T')O718WR!7D@B%,(HH7G,4$3&;G3'?^7E.PW?#T4GV &J$*U[AED4(QN^MC4*^Q%^+$Y(]QL[>5QE5K' M)&4%+H \QLT+F++9-?Z /(KBC\T)@, SD$>R>0%3=*PWA/)8-GYOT-17C:,\ MAH(OS5DM;P7])*"7ODSS101Z$&T9&'H&0$!OK"S4LL#$Q\D\7B1!_H<<%2DJ M=X5A3%SVB% ?($)^=LNE<.<"I:JV/>E5S1W4 W 8Q6C- @T+@,@6! FD%H^> MPE1) *:)"62W_.IQ5-NC/A@+,KO' 2\HW:G97B &"E4TI,8VE58V+Y^YY("# M =T0S$+S (7\_S1%5&5ADW>=/0*;@X&%N8'5V(=X&1MGJVIR-1"N7\+H'7R(A]4AV;/6%RM;*F^X>HD"=-_X@T/3.II9_F5+1QI#*AY6_A4 M/7HQ)A'84!G>,@S2T *B%I#JF2W',.EQCX[ M0S-/ $B_PCM(.0 >\3Q 2Z![_AI7LJ)+#A#KW'QZ3C"]]_\%_4Z;D5G:QD%C M\)(TED$//XA8^,+W49#08P+K;@VJVE)U>1N'CX.C%US$X\(!CO8P01P3-*<8 M4M"4!WB]IK)4B-=JG;ZNX'I[VCN',4!R+Z:2*QD\@%VB;4H;ZP[&V)VD)BJG MLA7QUV8CPDWA. 5\Y18R1MS"JY "DC5?F7Z]*;T-*: F_MB@I:BU3*I("A

)%$+Y< ;/[8)RM-%Y=4 M(X4> L$-3H_\9![%!'AQF88,LXBBQI/@%B":\TRX;+U7C+BO8!!'^4\XN5^^ M?I,EQ/V'$N",@,J[FO"K]UEZG[6ZC7I(![R+K)^0\AX \7*S@/3W_G5*;R&V'-68 M:3W^EYD64>8CRZ6B)XO]'WNEV8* G?])? 8(H1?=Y2\L%KW*0]QK(#:<; MQ;S(6DDZFF*UWIG-G@)N]V\&GV"<[/S'6'5,OS)_G23FSRK1'NX5([#GXV$S%C\]^[*U0#7JU];W8D M-K"61]]H\ C'(.AH]/*LHAMZ+^-7POS)\A.T=0@; (Z"?\TDR]CYK1L?YO"6 MFVZ'HG3QZ 4)J[;[@+'_0"VV%;9* 1Z'7R-'PXS/W[GP<,XS<&DT^$S[>@DOG>C<5.$+?HV(]&:.1WR.[Q.2*;L MS^APX_J0"=1'++4!W"@#JDWD,Q67XFM\NUW51MBJY M7$=+24+!'7:2&]GK8FV@'99*0!X;AV6(:2R@JL/PBRP1Z18&[.GO>(-6F-T. MU:5[H\9E"0J:"K1V.M,%Q]FR:A9 ,ZG MD%KFXJYFG.">G-\1L:Z!:XXBL4=1B **MH*Q;3"=7F+4&-I*/E.!V8XGTO91 M'!//ZGQ5G8!JZ?3IY90=LA[3WDV6,\F$X$89-F@BG\M,@#.>#,^QLYAW507B MF(5MDES*LCHBD,O1G8(/HR;9SEQ# 'N ^Y.5^&X+8%=8*+UM NKXC M#A$" W?-56MR.FQ4*?:O_:Y;J>@K?,609>8 MG&T*?B XBFX(7B [9[VXOM,W)P46E6C2P93E>AJ0EV]4$L2"3#AC:*MAE MH]9(.G.63BMD" /ZXR7%[2,@7V!A3W8"A6)P3O6K$D.;:.;:(F:XI1,> XKB MQ%^C$+'-L/:O/?"V#;1+3T>'S:VD=!HO.=I1/Z;5=>!+B9$U-.I@2SMGPNW1 M.;PTVV5: 1 MF)Q=TCV>\4%A"<5RNF^7>\JFE,!"4VQ$6,4JX!O MD&(&(YN!*#OXCL<9L\JU#@GM%773120ITADE3JDO8BO6(8(U&G]-2"Q3?41T MN_]0)*P9^<+RH[(%1;)T:/E1/67:5KTF!?"2:@VT#-.$!V\W(R",Z&X804.? M_U>0DM?_5Q+%67=C F'[)?UKIMDU*S3ZLI MPDWPQG0];*2;VUXK>89ZGGQC-7XN!.;VP"L$S\7D,O5.;H*);'2%UPL'4TA. M??DV"6YB7T8H@T_!)MAWG@Z*Z86!.2R7/G@7#NYIY;*ST6=JZE<4B\F6&H4E M_)2LYY!,%T?9-%S*IS?\CJ=)FUY<=Q82X!K MIM[ZR6Q4Q<&Q"VY;3L2T-_@$VU=2)-]%J;9I1I=YB\F[%]H/^X=\T]Y;+\A MUG?(]NMG4_YL;J$\V4\?52H@D$>:[:)[ #.05&?5*LXR9PLG6;]X-ELRA<[N M^CB$;,[-([+,C%J(;N_2]4>GE@7U]-+7K4''*'H&BPO41\AL@*5X>@T@USZ7 ME!!7)E?4D,MMIEFAD,$B_XZA#*5$2Y9W-71RG50FZ(-BD8W-$ >B1&4YVD(^ MI_ECU5XH%GDJ #6V\RFBF.N^HA)-36P>6&GHPVB_)GUVY:EJML-B2ZITLV&=+PJ3>0 M($P==$#B;HTU>XD^#BZ^*,DRD^'!.HZI:FOJ/1#,4DVV<++9!,CC-&,EE5[J M%:*_LC'C128*!JA++S9H7LF3Q&!C/AL\0V$J;D9YMU]T,$&(3DP\T,A).6.: MT+7OO74*ERAD7OQT<<,/MQ3K6A<9R/VTEE'M%'"1*].&E=+1DEYLT&I1GB2. MZR8^P=AR)5,9PO =Q0I%-*H(WJ?\">&23Z7I%.+A;FO:#N@\(52"4OGA7;WR M/"OHLZL0O=76.!\F77XU-(9M\KK0UVE)0A/"9SC<4@C<=M^'R-+8134,QB\& M-50U-N?4H 2D!L6I"(A0&$9T24< A$1U/%1U7]H0S;#@A8)'/"V][\A"'P'C M%4C9I9S A*_6I*0^P0?^F_Y5_@'RH#UR12+FO';7"Z1)(3GA=A7T\%UY61KF MS'8RA$?6]4C_':-Y .^@1__2VK2L;AB-0.=W)'DN+B9>BZTZ@,Y%1A:E,5L. M:;+G8F/BC5E);O:(LU!4H\!_!H2 L'II$$3J-)8=-)]UR)3SM/<*&($PUF&I M%'[567>XCH 6E7*>.IF$V1B/8K^;;GA?E(M'2#P462IE5,=BR*\F'6B;R\*@ M8GVIH#J7AB8T1AWU:Z1O+A'=8W]*(I';I;P(ZRJD2BR$O.W%9Q2O?H'LN6GR M (@OI^B5%ARP3Z]&F)Q[*G$[P7..+>XIF6NMA8>LJ_4HE>>6N"DP;1I#J-^L MQHHJMX3J@/6#;2;EHF>H8M5 SNA%T?]JO) MC;;8-LQ!.LT\JZ--SC*-J-LQR]S7AA\/C7PN%<\S-O=9A]!/%>U!(;,9)K(Y MFJW+#,-LR19:R]#%9*.-WB=*G8%H=1G@AQ==R\6GBWPINT-+&@%J!H H8]E: M-P1O$27CZ>X^8K.V]DWQ)BQ--QVK:W-K&F@,YL[?P/Y*HI\RI9TVLOEZNM'J M'X*6-K6N4C=*6294D>/00P$LI9K.\!#.O15$W=X3S B3'0Z::PZ@(Y7GD,+T M$,ANNI,UZX];5\)D2+B:X#E^&K1Y0(MBU$ARUW,3^=[8LUC-$'%;)D<,T.4] MM2]Q:*:XR\:;=*,$@@B>P_3_K\+S#($S>J==6LHC:8?Z-4B%!.TUJBE%92GZ MX:N>:D^:ZDN>O"RT%*$XZUAR"1#A+^<'0HCRAPS)03-$MSYF7]+00G5C74S, M6(S]YK(\>MNCO67!.U8=9BXD*N0V57MO1BQR!X>>$XBVUOJ 2@%V/1A:\<0T M"T =837N%$)'02WGH8K>I_MPCH( ^@?T)), MVPV!&X!\/I"MI[-; NDZ/FGZX);IZ=JW%^*7WT*RP3R3,&VK-HDB:,GGTT1E MC+J@*_4U+@1VE41NC6[ SH&-SZ$Z'L!AQ;[O*>JX:V$MAB2A*"! S9B]L[=C28T MGHB[T4AII\.2**8>A'YT2;=]"_E0F!M S=\YG%MR,)H N@Q.Z1^22NIB SV= M%$JD=8.WT(=4DOU+3-@VI9Z8Z[\<+Y,$E#!JMU4XD[D7T\4!_] O-5QB!6Q2 MK)).?>B!7K$4Q4&%W!U>?CM?L2X6"ZJOIHN+1V\%PB6\I8IF&O+X0,A+N%D< M:0L":"L/7 F!@;0HD;Q4J='65 F CA34XY3V3ZL^65F1 B4$QB4%:K3M8",Z MZP*&8@7-6^K!$.1E[1SH-LH_L*TG #+/#,'7CNITV8:F% M4G>9^EJEJM"W27MD9ZG3EJ94W26;3+O=EOA&>:?98$W-^7GB2<0GL_4_\:@$W+5U[R05\B0V^*S46R?)4^!] M61*5;R2^JH9%1][>G,Q"A""^*2]+#$"7K-2 [O(C0,D14_0/ZNSUU M-AEU=+NNCO]\W!W(S("'XI]"_!! ?\E&<*B:G1I*%0 $\8M.[5SK"WRL&IMVJ)H61[AP7W9' M"0&WSSG2K*\DI"D0V&!DL9?S=477"9,_0<4!)1$AT73 M-CQM]L>0)*IAT.'A5+RZW:,F ]=U+$Y+#,KO;1+$-3NXH)>3QAL4>&F#@J#0 MH$!?#/F*A5X'6?<#JV>L#6:G:8&%=?LZ4C)P71\I23X?S?5K(^<8_<'T-3[F M+0$[]&=)7_1[LDM-\#KU&:JN:MOZ- !TW%:JC9^U"1U/Q;(4!Z7!= 9EAZ2P MHZEKGW!L]WRT@.R2X5:[&YOK& MU<;&4G6:F&;C>\YE69(HG=@"0FK^^$,U#+U]H$*K>N6P**NY*"[:TPU,#8,N MA3HR@.R>*D44W!9WZ4A&J0Y'D=ZC=$>3.;O6T>7@EM=.:4\GVR]TL;7N80J! MZ0]7JZQH^?(FA.;:.+6QL5R0)*39^(S3<>K4Z8[_:_<5IK'>AR#Q4U+E-)&+7-"8UG7(P>E,O%TR.5TK#E/6ITN*KO;-?+45":9'.CQ MI%_*TM+MW&GJO404(Y_3L0\^-P(<#W>;Z6:N:$.'I_<1G"XNHABMJ9:Q4V!0 M >%XXJ<2YZK4,3B]5:FX$I(8H+"0I'V+HB_L0G$?>NGOV!NJCCG57-KII4R. MA[I$,]6\2U/#>G3S:2D+0_>,PD8<<5L*5@AO%%Z3%.&<#EP2-/+HPWI*01X7 MF^6(::P$7H?AA1&@,P+\P\"_HRFODR# #ZRMY"4FYSB9QXLDV,^*2Z^--N3" M*((C, 1V&&-J@I/:E?IHRJS>%;IUF1&P5888ID8K&4XWSG]E\9#+0Q\!JS5( MFG'^_< XWX?=5P _*N.O0M8\4.*H!](M>PA)(%5-F-X^^@J7M$,=3\Q$@H(Y MCPU$PY28? O7].Z8]N'@#;I88_!Y@);M<3&!059;<12'5I%(.2\=1<$.Z4+% MA**TL3=7-^QRB;:0E5C9=,UU\!B1_=8BU/IBLC,1XC+8Z?7.1Z!Z;4[7A3-4$N[2ME@#I M&;M4JEIR]76'SU\M:N6L-33F?/"-F/C^O^9^97?>"OI) /?OV!$KNHBN,37F MQ89WAX"-Y02I#OB,R>!VHOL(<^%K.CH=SMY7U]CIP'V69H#\K _>)28U4#0L M6I?UG5Y-9'LY=2+@&',4F]HZ:1JQT79W.M:A6<3I+^A?^>PVND#4X^%!QGR. M,M6IA<)U^KMD#?VFDV7F?I!3; M[J2S%18>GSCHT<]M#F6^W\(FZ2WJDD5("^,>^FG$*(N#HX"S"4VA3&Y3V9B. MV\_M[?AS SKQPH[:SKE6N9$-EC:A3'N',OCX?1Z MVKD-G1;EQUA>*NA+U\G$/;G.=-EBUQ7Z]-";KA6RXWP%W>9T[10U67[GL&]0 M(>;SW#Y(MWU0*8JXG_$U6\%?8!3S*,0]'_[3'"F2B<&J+/XT&O_HT];LZX:& M,)QB0/SIXAP1Z-&_BR:;#<%;AG/:EJR4\M)),KI C M%E:3![HIKL+3C*F(30!+.<6BFNG/>G6UC:#X-'24+?X9'.EF2AR+A"IN9^+1 M$T4/ER,15$3KB>@\DXPR5MVL9"NKVYP0%K]/A^.FF:$9NA?K38!WD/GACX=4 M8JWW$<,PGX@L&6>%J5)J*ZHKWP,_&3<)\5;T+Y@_," ]IHJCVX!R_UI-F8?& M2L%[C']5>W\6[^M?80O0@TQ4UV;9FQZ]#9ZC(&FY:!L_OVJXN.[0IM(^5)O> MKI,J,K0^P?@:1X>MQC%!\R3FR!:'KF?MPCM=PHV '(-PF*:RT:2,?F*I&07P M(DL%C\@^OQ:$/LA;""SHUK(6 OD?\LTK/EP<)_D6VA6$?E/' J6D.Q-PM%7[ M,=!IMV=\#!*@=L2$C7R M:ZCR]ZFHA'#)9*]SF=\Q0S+%C*^X5D_^I MT9X+JDQ4BB$-G[O549I\:2*'42.DPJ,9CD&@=V $GX[T MU(@(T>%!BZVH>7384QO<#T#)\)'DB^A;]VZ>)FN$Q'#4WK;4'F1>C?$6'B%. M=\=/%.Q1M?CG+,K\QDZPSQQZ(SW3-AAE[(U(K:,RB%8%M33#A7OO3DHK-*_@ MY$6P,W];J&+X\42:61\A64)2VI,4B^J^&R=C:BE@K,NMD_L6S+JJ^PN R)99 MI @OXE56@@&RZDT0^M64;_6'K\(+1@[TD@+E9C#BB82-):-Z=[).H-1M*(/R M$9 O,$YA*6$M_-CQ:3'!+G9\Q,1Q.T'E^/ ?US.#?2U'8T5SGM7._Y+GKUOQ M@2RC[,8O:CL[=06EMGCF*&/9QO:$I8*#ETPQYDX4HBOY;&"@J??:CDU&.AR] M*,9K2+B#RU+75F@32=E*^U@,5PGVP %'^JN2" M3;T@XJ@BKV\1$S/"2::S#15]1>]>"W'Y[^ M;1O^ Y94)^QTFE%M_FP.7CZ_ M3C&L2)N;P5D6;EK%7^3C?,".!Y6&+HCM.QBNV^B(HQKQ4<$;L&OQ/<^0GX'' MPB\'+[,"M%TD&[@24Q'G-*:'&4Z2,[G+,0EE11*_)IU9)X$JH]',9,@TM.:+ M]B56Z57[L&3==%$]^]9:H^6"INKIRSD5SY^ES& ,41)HD ME=FJ3?B*3J(=5*@XPZL8KN4"V;9Q<&1<.Q\7IN.LBFI!T6E72C6T_#O=?03_ MPN0LH$ GC\B.952![\+L]:!KBK90B1WZAB[HZO0WX'G \A-8PW/,3'3?HE.+ M@^/V@1HG35(RZBE>2 #0C#S4OJQ]A.NYI9R0)GCC9EXC)G5'V@36W397M/[Y19OY@6,B_, M/:SCP8^B$2UA;0TF.DZ6%7LO M]Q%<),$U6MAY6)8"[$2=.Q E.2XX;>K;X.9.UIC$Z"_.FX\P7F&_9XFIP\!5 M9>N@I*>6-6,;#W4@5M[/ AQHO"&8C\!"A4E8APHKW8[G4A.W--\H%!>W&Y57 MH:B%@+P*>'4;9P49JP\4JB@XKFW3.R<:/KJ2F);?)G1L7;%DF-<24^S9'>QT M5_R-M1AHJO,6'QYJ 'C&Y7\[BCB?IM_%&+:G MB>,HRB<8TYWA-63]@ZWH_3*$)W,$&^^U%:JZ&7J==Y(."IVA47B.@P"0_0^D M#J7<2D_]R$K2T^Q#:,]QBLUAH#7TX='Y:9Z)(/ MWBEQ[3D9?,CYJ@Z2P<_ !L4@8%6B=W@1/]"MG<,M## 77#Z*3R'$*[^:RQ.K MR1T%4AG,^39[BSK=S>CGUG2V#%S7X?XN^EJ*KOI-HW2=_E;T&'(6M;,,7-=L M5S@24APODK2#^L7K3<+.?'%I%87;\+W;(:^*]&XDA)NKR$= MQ="PB(NDR3& M:SQ' 50QA\TK. UN*+*GA18&(\EZ+FI"J$E/"!M:=8D>V;]LEDXT@!L34V6H M9W#4AUI4/O.P%$Y;Y9,Q<:*Z6W/#+O3.TS4$$60C6*_6&X*W?%:'S0/5!,_Q M54[S3#52T%2_O*?E0U\?)7'\?9_$8=8=MEQV(0-WL.[PT3N;%.]J2BA,5,_] MX]]?OCSYG\\??_GF?__G5V^3//X6?O/>_^N[[?*W77A_GCQ\^(Z\_^ZGM_^Z MG^VBX+NM]]?KX,?X57P'?_SKNW=?'M]XU_'KWR\OW][]]&K[>'KVV^NM?T?F MJ\?;V=N_XA^76_SV9H)>_?T"77S93?WYAS?>U=GO=\&O[W^S/[#J&_GVV]S]'CV\DVWOV\)=]+7Q[F9^\^ MSL[>D3\_K'[Z\-T[$M[!7_[SR_H_?_U_#_''Z]VOO[^.D_C^]]4]N?GS])?) M#_]['[C.:3@/<0I M2O\=0$Y:ZN@7"EOZ'=)@#+FA.@^-@F..-1KW,E'S/K4LX32F6I>R\ G*Y=*T MK>'2_5%C:RLU3-VQGFM3!W!XEQ$LZRY9_SY8>=D>T@7SX'^=P\?>#-TTW$R4LC@?=]Q&VR MN1FBVXS>CGQN(:;!CHGJK44P:X&Q@3&<+ FTGNW6 ,[I':XC@YNH:"Z-].GY M+M='>6_OM.(+ST^Z723B*T'N!:08V.M+"4-UZ3T_ B'V4.BEXXE#PXC M5+MWU.8OE#7SSO4>Y=I64^Z9[9&$C6-/+WOG*$JGL,OJKOJ/'3\S25(\4UN" M_9L>-J.1"I8A5]A"MBE[.6!BD*ZTEA9;9=M$Q\ R3&8)G%$?4R?JH9/B;UA M>\:Q=.SZ:$I/*?'&/.?T?:D-) C[=S$@L?9-D&,[;]_0_+"A,Q"MZ#Z.=R1W MW$P"=*O\.\B36;*;;=_?KRZ[Q&0!>2>'Z"J\X1(]2&U6A^=HQ<\J\PP6\ W# MNO[Q>I 266]?GRUL#??T7>O4QEZ$^N4IQWBQ//U30/_'@Q?RAE-FG3$+@!2= M7#69X2(7<9D[QO/B$1(/12SR^W-"G3%(+HI7J'9W2'5AUVW=NSH^RH0T5H"H MPO-,]&ZH B S?/'HK9@*NF6D/A! BLER*XV8JY*DTJ@1-!)1I A0_-,-9:C* M1A+K/ATQHT3$,%8*J,69''$MWE0_'F^004P/4^5[?7O4GR@5^'[SB>=TTPE/ MLAIX"$L%//R[=;B469W+\OM]WPP9'0]/S/GP_8EO02)8\I*25&%9;S]_W M3'!,A1,O?$2@1T4B AO>T] '(>2"BJAB#6.TA1NJ8SL.X3IEL*:+\QS6)(,U MV1^*#!:[T>B.!]>"T65LE[9&X(=]NDA=_D*XJ1D]0NEFC](,D"6,)Y0D<*O+/>%J3^WPBBOYMQ_S BWQ]3K%[MOYL M!4_9^G?I^IJW;X6%^\];N 2(_ *"A-6;).O4+ET\;J@<0_\<;9%/F75+D1^6 M0I#&VOFCMKI4&=$'\FPU5XXQ(,G]!;/>"@%5O>.2W0K>KNW: (6WREDG(0@K M.[Q%T9=+ N$5O>)19L?CD-Q:K)^U;AM;71?O?@9L-S%K37*+EJO2@]L,DK45 MP6L%.G*Y:2>JJ^ERIA(D.5GVZ;J?(=LEO>9L(0%+R']Y3JFW/P;#4E^:>W < MPW"DRG09;C:0U?,5T\\\XQV"@0_V.GR!"0B"XDTSBK'W):U*VQ#D,9YTNGOF M+OEO#/#!>-#K^R0(BKR^8X!3WMRD@#4OI28@*M]6#Z)6D$"\.$XF2,,8\DFP M"FNZ]JD-LGJ?$ZM"4I=OKH>RI!9DV88A"L]Q$ 24>7#OU2L$=.#X?Z]P8:$ M="&Z_A5+4&38+?_JV#V53KTZ.)E/A[TB AF[8;CW,^WU\[*!I]MW9\/2996A M+N; &=D(_0W3E8K^B0& 3TJVS++"U,6C3V&:YK'-+'56R^TU"OI9P"38H_'L M;Z1(N8J/O!*J__)),5M '%-E8QI\VB>**!QKP:=/TV<](I!&)9FX;J!/1;[? M27]^007DT[RV&F2)N3(XBQ&O:N*5R9C7TQ0.:;+JEX\)TI_ZBGJIR$3'N-<3 M$Y!N-->I8C/6^*-6P#O$PE36^SJT14O<[(V!V68NDB37FP#O(*1[>L3S "W3 M$3/=FRU?Y O/P./TL+!N2F3+:EWZB47_387F*LQ!%$4D .%=$C%G M;YY":# MBDI8N';O)9E[%!!4([7AER<5 1%L\/;N7JG>3V(9U]D"\IR4H8F;.8\-F-U" M-LNY.[OVZ[A/.3+"L0-='+5U%N.F5D\DL\[3X-EQ'9&)M+!>S*;-^B!UPSD6 M4>A$;OWGC9K+B$N_E.Z3W\N\0E2'0 \O0_07*VWMU$RC1,ZCX-'M'DQ'MU5Z M^0ZIFL656?([E8:+1R](V$WE#$?Q=/$!8]:MY0Z2+;W#WN' MW(JM1 9C(I6 ME832I$XM%I@JJ.D>O\YQ#I>A*73=>="/6=X E#H?^1T"^P%BI_[K\DF[?%ZUQO(9V3I*M&I'\ $-( M0$#1G/AK%"*V1U:!W)W/PI6'XXP99[F8FHY=]WS'IQ3!!>*E)_4;L>(:R$,? M2%BDBS>@0&K#G:9[G\:SWB3IHGA!?77D@=#W49#0NRJU;R'5>/1V0B*V^:XC M>?:0IHM3!HF9SA32108I?Y+1GLNC 4+9UGY*UFR\%B;T4E\!0MP%C?*Q!\Z_[RU=G^BZCBIFWE MWNVOH&[/G-=#(Z[NF=5K&SJ6Q$L%^&O#HRK:D4- M2WK$.C=%_'P?(0O-,9KHC-73DR6#''.4[T4176"R9B.F.';W(8KE M2MSJOW1=BVB6OP+J.&G4GGSV0$7F4]C>,H MMSR5%W@5P[7<&55=TTW 5E[4TN&N"FPMN,^Z<9]3UA<>1M'$^S-!$>+T>$1V M'%L1+!<*5>/X%/U0(=GT;S2!EK/R$9(E)),E@;Q([R,\'N\I.#WU7[K@A:0L M,OH+MFO^]7+XHJBL40L7GPYIUC5,.H>11] F?:4'#B M;VO:NQ8=TTAILX]S/?EW$8KPHK@D)5>4K-> [/ B0LL0+5@Z50SVUG.36<^2 M\_>U^7Z=R:;B&!H"IORB: "RJD-I$*!+2RKK:YH2H[(CJA>*!3$WZ>D */8V MCD/(>L/;\D:;(;JY*Y@^V.70:2.%^W9<]Z^J96S.\1H@2\G7M9"<> =*4E]Z M@ZZG5L'T:YZ_0CBI[@YAKC2N L71\Z4V VKH9/#Y7X5S$8G_N&7-660U)/V@ MP"GZ7U4NE5=TY#:;5X 50NF__P2E *@ZH^0/ECRK'%[;:P6P1/":Z[D6]3ZB M$*V3M6'ZE5=U=?MOI&)EXV[J(CDBX-$&!TJK#I,#Y8V[3:T\PWPN:AI#8'.R M3G>G,/165#E^L>8GMP)U9,)M^LKMA-9_F0Z.@XU=I2!'S:+SW K4L2,G>S2: MN5PE9-5P=0HT1;?0@VC+9,ZBBRT$YO;U2X<_8KH9S!M3XNA].$=! /T#1I'" MBXOXZQ$=G@82N#&.O+O 61+%> V) C?JOG,:#%#A0NVF#6=+C=R6FXT>%]*8 M.KAO^]C!#2!3PH,//I\#6#^QRWS410C7W>.G^1B_(%XCIKG!VAO%I%""/0C] MZ)+28D;H<99+"#WZ:K31ZEK>U5#%E,%7[%' JR)S-2OWAG3\U=-B3@U53-E] MQ7*:LK&DIYG] "SE7C6;OG]:#&NDE(N)8KEJKO$DSQ+"R&/%"C: &ZO/TVCY MFLBKGY1=8_#T[L1!@!]8NO\E)N+)#B^[Z75'5>A1UBSWG.8_K^=>W,7 MA)ZJ]]2-2QICO[I7;QR+?:U2D;ZB%W7$$^)P YE,30#3U R7*$0QO$9;2$4J M!N&258).H@C&]Q&D\G>-%G8T@!3@)VDJY$BN,6RLV\-I6I\T X^*OEW==T^* M;[6$,3JOJY_LSRS!E?Y@SCK:\ 370U)GE^SDL\.2=K,Z&P$J.L9B>BAD:[:L M80RE(\'41.NZ7)[COOJ@271X7+&-2P:J*\='[C 4 MS5@CU4SD-QIEIL7'VF:(;A\")41;@J>"!UH5]MQ"/_'22HH\X*CP>B3^VK$: MDZ1OP^[=9!GE^(LZ1V>-I2V^G,M!'@=[%:GI-JWIJZU!53=Q;76GW;):S;$O M+4V#%FU<.]2!E[(JD*^#E=LGND-"+Y73Q57HLUFA"0B"W16]A]+SBT!0@T.M M,315>J.+C-/\# 6>ZE/;M/$=ICJ3NE86WJ8T7YAJKG1G.(SI/J9S"BV$?J&@ MMJ_P0 ,&SIX1Y&_Y=9I+DKPNNO?M7ZOQ>@-")-G\Y_BKH9VH6K[4;-95HN1> M$0+6%HLI'S=M[NFB&.0GM+$L]5/[T&HU_ ]!8&++^2#7NT>W^7 M #^XP+6J,R6DJ['$"E,2< XP&JQ@ER(';K8*2J.7%"7ZF\OOZ.NA MN' 0\&(&/!3_%.*' /I+>!5ZVHV FH_<.8J\ $>)XKP1Y45U>LF#:$5O6A'R MLWY2&7_)\0$3I;\VKN F64*3&SS'M9D@KH9;[:/P&/L/* CRCEU%_\W.4T83 M0)>A;AWFRE'1V$U7JS_ M>G1*K;!1@T-S5:LLHB2(01A?0LG86>63T5&]NN4QCJ9-Q28&CY4NB1W25V;@ ML+YX]@&>SB:ULI 6DJ_"3 E]+A90M!'01W<]QNU@L MH,?2&O;8W=++$'N+0&%"?83ION^J%48K@!]$]H@TSU7HZB9KZ R3#68WWPPW M21-5^+$PI"E2.C7?.4UGD54\=?LU M6=G7S[3+PA CR%M]%AQC[G@=EG'<^5=&?O9C%!N85"DWT9/F9!XA'P&R*V09V.N\+83F;'"AU$$H MO<:+*6:@TJ1CJLTGL(:EQ!"+>;@28-TZ>*VR+4BR$1+13%/ JYNIQ0S;P^HC M(GZ!)&YK4)Z'$6@J1:D1 RYJ%)ZG##Q/&1@1 \Q,&7B?'IX0QAWUX4T.SS;G M:@&Y#E H7/K:SU3/I2R)[ :0>%?,#CK=%7]CS<8I@'=T7M4MG@I)C;0, M[\IWBY:O!HS+P+JZM(L8V]W^?3B_4J@M/_RU4[=!CX"%K3I)R6%#&R:+!0H0 M0_&"ST8T/+9"L+S;FY8>MYJH9?R!:9":7";>6&W^W-7W36LV)DF\PH2EZMKV M@H_@#8TK1[%=@3-\3#ACJ9U&6)J6Y_3#S@R6"Q-KB(\YM=P&>X[0FB9Q%(.0 MO?+VP\DBP!&SLT0WMQU%RC>P,QS2*U1$" /&G M'/GH%QA1RV@5#F?X%%V,.NT@4/3BKT?!FX;-9\QX[R1JP0*!(5WF M#&Q0#/)Y#OK\(:@+745;@+@<9UBQ^-2QF),>EJ#QGD4I/+GS3Q>0S)E^HV&:[D$N\E%YM^,ZT F5R[IGHM-4Q^X\WBK%Z6Q("&],1 M%5,LYZ6)EP\=<]G P&9+6<.,H7.C?LLY!PQ$F70.4VZY)Z'/'2GK$:9&@,/7 MDW)TRYEJHI3:V#7CXA$2#T5I=ZW]+Z/LM]&;_NX>K9B,1PXT*9T+B(%@E&)) M8]D7RU&34KW"CT<0C1)O/&=%]R912F'!1V_% AF%IR6YB&#-=R,@?^UV<\IW M#\:H4/X7S&9/I2=1-1XK^G9PQ3RU3!#N/&=$YXB)CJTZA_/X*HQBDK!S^1'$ M"6'[H(?5=BL].4=7;FRN&F!<1S"9AKDN00F>HOT M5VW,0_!>(4I_J#C6T@C[*NVTP7>^:K$SZ%'HW^[LNXXH:=8&B^BJ6+/X#L (:OJM%;A4 +@TD1*G9%2 MO+I$&A.S\KHPR&*10@6$VYSM.H&LXXJ!.4"S!SQ;X20"H7_!?%T(4W/+0"B4 M)D@LX[1F0411F>V[Z2!Z0&SV0#>WTV?(T??#%.[&'1NL.5"+/' 7]2IDTY31 M%BHR0?RUX\)3$0\:MFLNO_.Y\KY?&]Y+]?US\?WHBN\;%.X?K\T8F3'0MX4, M!B=EJ98KWK(@L*R"DZI0/*SH+@PNK;\J)#!2)JW)!,.%HL4U7;S>U0I7B>05 MJ[_O::1*O8\H1.MD;9A^Y55=:9I&*E8V[J:4C2,"'FUPH+3J,#E0WKC;PC.> M:SVC?VC-7RU#<)83H.R=5BBC7V?4L1D&CTF>-F301UD*_6DUA?ZP@]#O(5)E M!5&W(8':TW%4WF"<.5V,VZ>[VC9]HFDC=],A1,&$="[LQFW1]2V,8H*\.*M/ MXXG1MW?W%EM+-4,<^+EH(9?+J:\W*Q#&>,U/)YNSX)GB.HVVM;&RD ME?'"ZL&Z!+*/I87:5-T7I5:#(K(GI7HY:E-8SWEV_F:8_:B0UYK6TKGQ $PA M/\ HYW5K%60O7#4W.5!%>J]"CT"*^PQ/?)_/K +!#4 4,95*G/95G"8'*7%> M@B*. GAF9+%%H3356EF /19]8(WV;H((7;=S'V[YAGJ1G3VPKT58#M1U^T3Z M7,;2IZO1K91%([Q5T^Q7*5Y1:NUPB7N6'VNOW(,)L(%UW2+4MPU%B[JC:H MX]*R$E34[U'34:.FNN0SBEBTBVRR5@3'?>2]QGRI&1_0G456,(&)3,\>6S$?5QFJ#>.&NSUHY0) MB&,0Z/7B$GPZ%@,FVKGSMCVZ_?SR#.Z\JC6:QBM(9BL09K(X62X)7((87H4Q M=:4CY/'.G[8[F3C=T%BD<1#$,MKFR%W7T:97G(H2OH4L'X1U[<(AKT),0#"# M9&TG.C:@[8W0"@^#<*X;40D"(OPLUSLK@HB?L6(9?7Q&IYR[T-YUKRM+9TCL MX#X)W:JSO6?=JBL7!MM]*2970%[U6 PTRB94U'PY#@$0[-IC@9A99PNLBJ)>C1QDDL17CQUT-,-JSE0@,! MC'7YTGA3X%)Q4*G"JWGCPT+#(F/QN-JI8; UEQ*?]M=H_Q(@PET_%9W5\/DX MK$;3_HUUY>J[CJ>HDZ.K,'7KAQ>!-XC_:!2U$^;F@MQOXY?.;PZM,< R#8%J76DL/H\D M77*NN1JW^#P9; S"9)=;N0P:2&;5S+O"@3_#9WBK4A9Q].4XS(1@USD/>HZ5 MS<#C=!Z@)9 /DE4^&4F_1GD ^MGE(5RMX<))/K15^/YA;=0("<)_U. M'F2OJ"!DI3*IHZ$20Q-].QYU)MQ]7D?6^\2_4@S\$!R7XH?HV_'P0[C[G!\F MD@$51T"PR_H\89A_!&2)V!U^@Y"CUU!>?N,Z MU+:GUX!)$J\P819V6/$Z"7Q'XO?WPKI<*CL'<10???,C?@1A+;S.WDCD;-$:7@UOV.G:8 MMJ7]]K%?\8*O:'66EA"8N@ZK)X3">*RF!31N-X+UCF14!ZG#(FX[.+;)"M>> MC8PYFG"E+;/(1X#L"N/-[L4;A+G)4@8K4Q<*=I\19[GI8AN/ VM%A0(8R3^5K/ M@X4ZJ<<>1@H]3Q0:W42A?7.TP]A>B]KO&(KC/L_*#*BADX8R?)\>G1#&75.G MR\ZJU7$5(EA.KLP:SF$MG4R,*#+ .(MGKAZ26[77++4-C*L9HW MM#&<70F:N>GMS94*"I=*R8)' M'PW(:Q*KSM(N3?7*-M8IVW8#K%:@KE[[-$Y1.P$-]KE62F[(CG2&F5Q:0^6; M$?#A:)L&VU@KT?L#P5&4-^F5HG;YBS&8CLH>S366[NL%]!Q[O#"0=6<)8UXK MR'-AN NCSO.FY>J?0@6B(+60HHKW(=JO6UBNYI&SI-8CZ/UMB;>OZ.>I1J?_ MX!AS;!L7U3@U@O6.I,\4HM>.'T-5)(:=N&8F'CV(]KX?&2%KV,?QI5OS<9>M MGQ+T%BX1HV,8LS>M3O)3NZ"3 (_L,B*GB9HK408$6'J72:(G4R -U85EYI'':GLGMC5V/-TP19>\O@BM[7'G^".Q,'J++BL)S@ MMB-3)8>K.4T%E%)-? LWF,3,8:'D2[K=P1H7'L"'>,62,D%HPFFH7W<,<:%&NIB;;*)YEE8P M",QQJ;3<.(Q2'1T,S@W1/$6///&)]S)(U:^)(W2\Z+B471U5#(ZOT/8=?DX MH8L%N_3F9L1SJ*XYCL,DI(BC"1>EN/Q>=@RRZ6C1L9PH,56,#)E0X.-J\[.8,)V%,=F?8-_'\W;S^*&Y, M4H0R.3]#DY4S\'CETSVA!?(XEL;.F6CEL2C$%OH8G+.AR;J)[U/J1=G_L7TT M376395O=JB,Z<;5$,3=*PB"SWEIAUMMQ,^NMT8D('9EU1O\Y)3/\T%3"H\BJ MPIKC\."%%#$X Z$3E[A9G9(;@K8RURX[*O:\GC+$! \II8PPE D%G_I06&D-XMKQS8Q,'E#EPC=E3RPJ' M)JZ^1XN-Y&P<$\'8G %5?MQ!+R%4-MZ\G<]0W+&>X6BQD?#CF C&Q@GH\N/B MT5NQ=L"=4^]K%QR%-UU/"G-#!;2M_55(5V+5VEMX#F*0Y3,9B1#5+CPF%TU$ M&X/C!X0E;O]XQ1!BC4;9?_U_4$L! A0#% @ ]X,%4V$=!Z65&0( GR86 M !D ( ! &8Q,'$P-C(Q7V=R:61D>6YA;6EC(,Q\40N #V)@$ &P @ ',&0( M9C$P<3 V,C%E>#$P+31?9W)I9&1Y;F$N:'1M4$L! A0#% @ ]X,%4P*5 M27OL!P JCD !\ ( !24@" &8Q,'$P-C(Q97@S,2TQ7V=R M:61D>6YA;6EC#,Q+3)?9W)I9&1Y;F%M:6-S+FAT M;5!+ 0(4 Q0 ( />#!5,QR@NH& 0 &$9 ? " 7U8 M @!F,3!Q,#8R,65X,S(M,5]G6YA;6ECD8 "8 M$0$ $0 @ $>80( 9V1Y;BTR,#(Q,#8S,"YX@( 9V1Y;BTR M,#(Q,#8S,%]C86PN>&UL4$L! A0#% @ ]X,%4US9FQEU0@ 7 ,$ !4 M ( !#X8" &=D>6XM,C R,3 V,S!?9&5F+GAM;%!+ 0(4 Q0 M ( />#!5-K\AOKWZ0 !TW" 5 " ;?( @!G9'EN+3(P M,C$P-C,P7VQA8BYX;6Q02P$"% ,4 " #W@P53'MN[$8]" #L, 0 %0 M @ ');0, 9V1Y;BTR,#(Q,#8S,%]P&UL4$L%!@ + - L #P, (NP P $! end

#!5/O%:T86 0 *,C M / " 1-1 0!X;"]W;W)K8F]O:RYX;6Q02P$"% ,4 M" #W@P53?'[I&]0! #&'P &@ @ &850$ >&PO7W)E;',O M=V]R:V)O;VLN>&UL+G)E;'-02P$"% ,4 " #W@P53*F32ILH! ";'P M$P @ &D5P$ 6T-O;G1E;G1?5'EP97-=+GAM;%!+!08 ../0 ] *(0 "?60$ ! end XML 68 Show.js IDEA: XBRL DOCUMENT // Edgar(tm) Renderer was created by staff of the U.S. Securities and Exchange Commission. Data and content created by government employees within the scope of their employment are not subject to domestic copyright protection. 17 U.S.C. 105. var Show={};Show.LastAR=null,Show.showAR=function(a,r,w){if(Show.LastAR)Show.hideAR();var e=a;while(e&&e.nodeName!='TABLE')e=e.nextSibling;if(!e||e.nodeName!='TABLE'){var ref=((window)?w.document:document).getElementById(r);if(ref){e=ref.cloneNode(!0); e.removeAttribute('id');a.parentNode.appendChild(e)}} if(e)e.style.display='block';Show.LastAR=e};Show.hideAR=function(){Show.LastAR.style.display='none'};Show.toggleNext=function(a){var e=a;while(e.nodeName!='DIV')e=e.nextSibling;if(!e.style){}else if(!e.style.display){}else{var d,p_;if(e.style.display=='none'){d='block';p='-'}else{d='none';p='+'} e.style.display=d;if(a.textContent){a.textContent=p+a.textContent.substring(1)}else{a.innerText=p+a.innerText.substring(1)}}} XML 69 report.css IDEA: XBRL DOCUMENT /* Updated 2009-11-04 */ /* v2.2.0.24 */ /* DefRef Styles */ ..report table.authRefData{ background-color: #def; border: 2px solid #2F4497; font-size: 1em; position: absolute; } ..report table.authRefData a { display: block; font-weight: bold; } ..report table.authRefData p { margin-top: 0px; } ..report table.authRefData .hide { background-color: #2F4497; padding: 1px 3px 0px 0px; text-align: right; } ..report table.authRefData .hide a:hover { background-color: #2F4497; } ..report table.authRefData .body { height: 150px; overflow: auto; width: 400px; } ..report table.authRefData table{ font-size: 1em; } /* Report Styles */ ..pl a, .pl a:visited { color: black; text-decoration: none; } /* table */ ..report { background-color: white; border: 2px solid #acf; clear: both; color: black; font: normal 8pt Helvetica, Arial, san-serif; margin-bottom: 2em; } ..report hr { border: 1px solid #acf; } /* Top labels */ ..report th { background-color: #acf; color: black; font-weight: bold; text-align: center; } ..report th.void { background-color: transparent; color: #000000; font: bold 10pt Helvetica, Arial, san-serif; text-align: left; } ..report .pl { text-align: left; vertical-align: top; white-space: normal; width: 200px; white-space: normal; /* word-wrap: break-word; */ } ..report td.pl a.a { cursor: pointer; display: block; width: 200px; overflow: hidden; } ..report td.pl div.a { width: 200px; } ..report td.pl a:hover { background-color: #ffc; } /* Header rows... */ ..report tr.rh { background-color: #acf; color: black; font-weight: bold; } /* Calendars... */ ..report .rc { background-color: #f0f0f0; } /* Even rows... */ ..report .re, .report .reu { background-color: #def; } ..report .reu td { border-bottom: 1px solid black; } /* Odd rows... */ ..report .ro, .report .rou { background-color: white; } ..report .rou td { border-bottom: 1px solid black; } ..report .rou table td, .report .reu table td { border-bottom: 0px solid black; } /* styles for footnote marker */ ..report .fn { white-space: nowrap; } /* styles for numeric types */ ..report .num, .report .nump { text-align: right; white-space: nowrap; } ..report .nump { padding-left: 2em; } ..report .nump { padding: 0px 0.4em 0px 2em; } /* styles for text types */ ..report .text { text-align: left; white-space: normal; } ..report .text .big { margin-bottom: 1em; width: 17em; } ..report .text .more { display: none; } ..report .text .note { font-style: italic; font-weight: bold; } ..report .text .small { width: 10em; } ..report sup { font-style: italic; } ..report .outerFootnotes { font-size: 1em; } XML 70 FilingSummary.xml IDEA: XBRL DOCUMENT 3.21.2 html 158 411 1 true 37 0 false 4 false false R1.htm 000 - Document - Document And Entity Information Sheet http://www.gdyn.com/role/DocumentAndEntityInformation Document And Entity Information Cover 1 false false R2.htm 001 - Statement - Unaudited Condensed Consolidated Balance Sheets Sheet http://www.gdyn.com/role/ConsolidatedBalanceSheet Unaudited Condensed Consolidated Balance Sheets Statements 2 false false R3.htm 002 - Statement - Unaudited Condensed Consolidated Balance Sheets (Parentheticals) Sheet http://www.gdyn.com/role/ConsolidatedBalanceSheet_Parentheticals Unaudited Condensed Consolidated Balance Sheets (Parentheticals) Statements 3 false false R4.htm 003 - Statement - Unaudited Condensed Consolidated Statements of Loss and Comprehensive Loss Sheet http://www.gdyn.com/role/ConsolidatedIncomeStatement Unaudited Condensed Consolidated Statements of Loss and Comprehensive Loss Statements 4 false false R5.htm 004 - Statement - Unaudited Consolidated Statement of Convertible Preferred Stock and Stockholders' Equity Sheet http://www.gdyn.com/role/ShareholdersEquityType2or3 Unaudited Consolidated Statement of Convertible Preferred Stock and Stockholders' Equity Statements 5 false false R6.htm 005 - Statement - Unaudited Consolidated Statement of Convertible Preferred Stock and Stockholders' Equity (Parentheticals) Sheet http://www.gdyn.com/role/ShareholdersEquityType2or3_Parentheticals Unaudited Consolidated Statement of Convertible Preferred Stock and Stockholders' Equity (Parentheticals) Statements 6 false false R7.htm 006 - Statement - Unaudited Condensed Consolidated Statement of Cash Flows Sheet http://www.gdyn.com/role/ConsolidatedCashFlow Unaudited Condensed Consolidated Statement of Cash Flows Statements 7 false false R8.htm 007 - Disclosure - Background and nature of operations Sheet http://www.gdyn.com/role/Backgroundandnatureofoperations Background and nature of operations Notes 8 false false R9.htm 008 - Disclosure - Basis of presentation and summary of significant accounting policies Sheet http://www.gdyn.com/role/Basisofpresentationandsummaryofsignificantaccountingpolicies Basis of presentation and summary of significant accounting policies Notes 9 false false R10.htm 009 - Disclosure - Business combination Sheet http://www.gdyn.com/role/Businesscombination Business combination Notes 10 false false R11.htm 010 - Disclosure - Acquisition of Tacit Knowledge Inc. Sheet http://www.gdyn.com/role/AcquisitionofTacitKnowledgeInc Acquisition of Tacit Knowledge Inc. Notes 11 false false R12.htm 011 - Disclosure - Property and Equipment, net Sheet http://www.gdyn.com/role/PropertyandEquipmentnet Property and Equipment, net Notes 12 false false R13.htm 012 - Disclosure - Intangible assets, net Sheet http://www.gdyn.com/role/Intangibleassetsnet Intangible assets, net Notes 13 false false R14.htm 013 - Disclosure - Other current liabilities Sheet http://www.gdyn.com/role/Othercurrentliabilities Other current liabilities Notes 14 false false R15.htm 014 - Disclosure - Income taxes Sheet http://www.gdyn.com/role/Incometaxes Income taxes Notes 15 false false R16.htm 015 - Disclosure - Stockholders' equity Sheet http://www.gdyn.com/role/Stockholdersequity Stockholders' equity Notes 16 false false R17.htm 016 - Disclosure - Stock-based compensation Sheet http://www.gdyn.com/role/Stockbasedcompensation Stock-based compensation Notes 17 false false R18.htm 017 - Disclosure - Earnings per share Sheet http://www.gdyn.com/role/Earningspershare Earnings per share Notes 18 false false R19.htm 018 - Disclosure - Commitments and contingencies Sheet http://www.gdyn.com/role/Commitmentsandcontingencies Commitments and contingencies Notes 19 false false R20.htm 019 - Disclosure - Subsequent events Sheet http://www.gdyn.com/role/Subsequentevents Subsequent events Notes 20 false false R21.htm 020 - Disclosure - Accounting Policies, by Policy (Policies) Sheet http://www.gdyn.com/role/AccountingPoliciesByPolicy Accounting Policies, by Policy (Policies) Policies 21 false false R22.htm 021 - Disclosure - Basis of presentation and summary of significant accounting policies (Tables) Sheet http://www.gdyn.com/role/BasisofpresentationandsummaryofsignificantaccountingpoliciesTables Basis of presentation and summary of significant accounting policies (Tables) Tables http://www.gdyn.com/role/Basisofpresentationandsummaryofsignificantaccountingpolicies 22 false false R23.htm 022 - Disclosure - Business combination (Tables) Sheet http://www.gdyn.com/role/BusinesscombinationTables Business combination (Tables) Tables http://www.gdyn.com/role/Businesscombination 23 false false R24.htm 023 - Disclosure - Acquisition of Tacit Knowledge Inc. (Tables) Sheet http://www.gdyn.com/role/AcquisitionofTacitKnowledgeIncTables Acquisition of Tacit Knowledge Inc. (Tables) Tables http://www.gdyn.com/role/AcquisitionofTacitKnowledgeInc 24 false false R25.htm 024 - Disclosure - Property and Equipment, net (Tables) Sheet http://www.gdyn.com/role/PropertyandEquipmentnetTables Property and Equipment, net (Tables) Tables http://www.gdyn.com/role/PropertyandEquipmentnet 25 false false R26.htm 025 - Disclosure - Intangible assets, net (Tables) Sheet http://www.gdyn.com/role/IntangibleassetsnetTables Intangible assets, net (Tables) Tables http://www.gdyn.com/role/Intangibleassetsnet 26 false false R27.htm 026 - Disclosure - Other current liabilities (Tables) Sheet http://www.gdyn.com/role/OthercurrentliabilitiesTables Other current liabilities (Tables) Tables http://www.gdyn.com/role/Othercurrentliabilities 27 false false R28.htm 027 - Disclosure - Stock-based compensation (Tables) Sheet http://www.gdyn.com/role/StockbasedcompensationTables Stock-based compensation (Tables) Tables http://www.gdyn.com/role/Stockbasedcompensation 28 false false R29.htm 028 - Disclosure - Earnings per share (Tables) Sheet http://www.gdyn.com/role/EarningspershareTables Earnings per share (Tables) Tables http://www.gdyn.com/role/Earningspershare 29 false false R30.htm 029 - Disclosure - Background and nature of operations (Details) Sheet http://www.gdyn.com/role/BackgroundandnatureofoperationsDetails Background and nature of operations (Details) Details http://www.gdyn.com/role/Backgroundandnatureofoperations 30 false false R31.htm 030 - Disclosure - Basis of presentation and summary of significant accounting policies (Details) Sheet http://www.gdyn.com/role/BasisofpresentationandsummaryofsignificantaccountingpoliciesDetails Basis of presentation and summary of significant accounting policies (Details) Details http://www.gdyn.com/role/BasisofpresentationandsummaryofsignificantaccountingpoliciesTables 31 false false R32.htm 031 - Disclosure - Basis of presentation and summary of significant accounting policies (Details) - Schedule of accounts receivable and allowance for doubtful accounts Sheet http://www.gdyn.com/role/ScheduleofaccountsreceivableandallowancefordoubtfulaccountsTable Basis of presentation and summary of significant accounting policies (Details) - Schedule of accounts receivable and allowance for doubtful accounts Details http://www.gdyn.com/role/BasisofpresentationandsummaryofsignificantaccountingpoliciesTables 32 false false R33.htm 032 - Disclosure - Business combination (Details) Sheet http://www.gdyn.com/role/BusinesscombinationDetails Business combination (Details) Details http://www.gdyn.com/role/BusinesscombinationTables 33 false false R34.htm 033 - Disclosure - Business combination (Details) - Schedule of consideration for business combination Sheet http://www.gdyn.com/role/ScheduleofconsiderationforbusinesscombinationTable Business combination (Details) - Schedule of consideration for business combination Details http://www.gdyn.com/role/BusinesscombinationTables 34 false false R35.htm 034 - Disclosure - Acquisition of Tacit Knowledge Inc. (Details) Sheet http://www.gdyn.com/role/AcquisitionofTacitKnowledgeIncDetails Acquisition of Tacit Knowledge Inc. (Details) Details http://www.gdyn.com/role/AcquisitionofTacitKnowledgeIncTables 35 false false R36.htm 035 - Disclosure - Acquisition of Tacit Knowledge Inc. (Details) - Schedule of estimated fair values of the assets acquired and liabilities Sheet http://www.gdyn.com/role/ScheduleofestimatedfairvaluesoftheassetsacquiredandliabilitiesTable Acquisition of Tacit Knowledge Inc. (Details) - Schedule of estimated fair values of the assets acquired and liabilities Details http://www.gdyn.com/role/AcquisitionofTacitKnowledgeIncTables 36 false false R37.htm 036 - Disclosure - Acquisition of Tacit Knowledge Inc. (Details) - Schedule of fair value of identifiable intangible assets Sheet http://www.gdyn.com/role/ScheduleoffairvalueofidentifiableintangibleassetsTable Acquisition of Tacit Knowledge Inc. (Details) - Schedule of fair value of identifiable intangible assets Details http://www.gdyn.com/role/AcquisitionofTacitKnowledgeIncTables 37 false false R38.htm 037 - Disclosure - Acquisition of Tacit Knowledge Inc. (Details) - Schedule of business acquisition pro forma information Sheet http://www.gdyn.com/role/ScheduleofbusinessacquisitionproformainformationTable Acquisition of Tacit Knowledge Inc. (Details) - Schedule of business acquisition pro forma information Details http://www.gdyn.com/role/AcquisitionofTacitKnowledgeIncTables 38 false false R39.htm 038 - Disclosure - Property and Equipment, net (Details) - Schedule of property and equipment Sheet http://www.gdyn.com/role/ScheduleofpropertyandequipmentTable Property and Equipment, net (Details) - Schedule of property and equipment Details http://www.gdyn.com/role/PropertyandEquipmentnetTables 39 false false R40.htm 039 - Disclosure - Intangible assets, net (Details) - Schedule of Intangible assets Sheet http://www.gdyn.com/role/ScheduleofIntangibleassetsTable Intangible assets, net (Details) - Schedule of Intangible assets Details http://www.gdyn.com/role/IntangibleassetsnetTables 40 false false R41.htm 040 - Disclosure - Other current liabilities (Details) - Schedule of other current liabilities Sheet http://www.gdyn.com/role/ScheduleofothercurrentliabilitiesTable Other current liabilities (Details) - Schedule of other current liabilities Details http://www.gdyn.com/role/OthercurrentliabilitiesTables 41 false false R42.htm 041 - Disclosure - Income taxes (Details) Sheet http://www.gdyn.com/role/IncometaxesDetails Income taxes (Details) Details http://www.gdyn.com/role/Incometaxes 42 false false R43.htm 042 - Disclosure - Stockholders' equity (Details) Sheet http://www.gdyn.com/role/StockholdersequityDetails Stockholders' equity (Details) Details http://www.gdyn.com/role/Stockholdersequity 43 false false R44.htm 043 - Disclosure - Stock-based compensation (Details) Sheet http://www.gdyn.com/role/StockbasedcompensationDetails Stock-based compensation (Details) Details http://www.gdyn.com/role/StockbasedcompensationTables 44 false false R45.htm 044 - Disclosure - Stock-based compensation (Details) - Schedule of conversion of the vested and unvested options Sheet http://www.gdyn.com/role/ScheduleofconversionofthevestedandunvestedoptionsTable Stock-based compensation (Details) - Schedule of conversion of the vested and unvested options Details http://www.gdyn.com/role/StockbasedcompensationTables 45 false false R46.htm 045 - Disclosure - Stock-based compensation (Details) - Schedule of board of directors approved an equity incentive plan Sheet http://www.gdyn.com/role/ScheduleofboardofdirectorsapprovedanequityincentiveplanTable Stock-based compensation (Details) - Schedule of board of directors approved an equity incentive plan Details http://www.gdyn.com/role/StockbasedcompensationTables 46 false false R47.htm 046 - Disclosure - Stock-based compensation (Details) - Schedule of estimated grant using the black-scholes Sheet http://www.gdyn.com/role/ScheduleofestimatedgrantusingtheblackscholesTable Stock-based compensation (Details) - Schedule of estimated grant using the black-scholes Details http://www.gdyn.com/role/StockbasedcompensationTables 47 false false R48.htm 047 - Disclosure - Stock-based compensation (Details) - Schedule of dividend yield assumption for all black-scholes stock option-pricing Sheet http://www.gdyn.com/role/ScheduleofdividendyieldassumptionforallblackscholesstockoptionpricingTable Stock-based compensation (Details) - Schedule of dividend yield assumption for all black-scholes stock option-pricing Details http://www.gdyn.com/role/StockbasedcompensationTables 48 false false R49.htm 048 - Disclosure - Stock-based compensation (Details) - Schedule of employees??? tax obligations Sheet http://www.gdyn.com/role/ScheduleofemployeestaxobligationsTable Stock-based compensation (Details) - Schedule of employees??? tax obligations Details http://www.gdyn.com/role/StockbasedcompensationTables 49 false false R50.htm 049 - Disclosure - Stock-based compensation (Details) - Schedule of employee stock-based compensation recognized Sheet http://www.gdyn.com/role/ScheduleofemployeestockbasedcompensationrecognizedTable Stock-based compensation (Details) - Schedule of employee stock-based compensation recognized Details http://www.gdyn.com/role/StockbasedcompensationTables 50 false false R51.htm 050 - Disclosure - Earnings per share (Details) - Schedule of computation of basic and diluted earnings per share Sheet http://www.gdyn.com/role/ScheduleofcomputationofbasicanddilutedearningspershareTable Earnings per share (Details) - Schedule of computation of basic and diluted earnings per share Details http://www.gdyn.com/role/EarningspershareTables 51 false false R52.htm 051 - Disclosure - Earnings per share (Details) - Schedule of diluted net income/(loss) per share attributable to common stockholders Sheet http://www.gdyn.com/role/ScheduleofdilutednetincomelosspershareattributabletocommonstockholdersTable Earnings per share (Details) - Schedule of diluted net income/(loss) per share attributable to common stockholders Details http://www.gdyn.com/role/EarningspershareTables 52 false false R53.htm 052 - Disclosure - Subsequent events (Details) Sheet http://www.gdyn.com/role/SubsequenteventsDetails Subsequent events (Details) Details http://www.gdyn.com/role/Subsequentevents 53 false false All Reports Book All Reports f10q0621_griddynamics.htm f10q0621ex10-4_griddyna.htm f10q0621ex31-1_griddynamics.htm f10q0621ex31-2_griddynamics.htm f10q0621ex32-1_griddynamics.htm f10q0621ex32-2_griddynamics.htm gdyn-20210630.xsd gdyn-20210630_cal.xml gdyn-20210630_def.xml gdyn-20210630_lab.xml gdyn-20210630_pre.xml http://fasb.org/us-gaap/2021-01-31 http://xbrl.sec.gov/dei/2021 http://fasb.org/srt/2021-01-31 true true JSON 72 MetaLinks.json IDEA: XBRL DOCUMENT { "instance": { "f10q0621_griddynamics.htm": { "axisCustom": 0, "axisStandard": 12, "contextCount": 158, "dts": { "calculationLink": { "local": [ "gdyn-20210630_cal.xml" ] }, "definitionLink": { "local": [ "gdyn-20210630_def.xml" ] }, "inline": { "local": [ "f10q0621_griddynamics.htm" ] }, "labelLink": { "local": [ "gdyn-20210630_lab.xml" ], "remote": [ "https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-doc-2021-01-31.xml" ] }, "presentationLink": { "local": [ "gdyn-20210630_pre.xml" ] }, "referenceLink": { "remote": [ "https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-ref-2021-01-31.xml" ] }, "schema": { "local": [ "gdyn-20210630.xsd" ], "remote": [ "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd", "http://www.xbrl.org/2003/xl-2003-12-31.xsd", "http://www.xbrl.org/2003/xlink-2003-12-31.xsd", "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd", "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd", "https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd", "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd", "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd", "https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd", "http://www.xbrl.org/2005/xbrldt-2005.xsd", "http://www.xbrl.org/2006/ref-2006-02-27.xsd", "https://xbrl.fasb.org/us-gaap/2021/elts/us-types-2021-01-31.xsd", "https://xbrl.fasb.org/srt/2021/elts/srt-types-2021-01-31.xsd", "https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd", "https://xbrl.sec.gov/country/2021/country-2021.xsd", "https://xbrl.fasb.org/srt/2021/elts/srt-roles-2021-01-31.xsd", "https://xbrl.fasb.org/us-gaap/2021/elts/us-roles-2021-01-31.xsd", "https://xbrl.sec.gov/dei/2021/dei-2021.xsd", "https://xbrl.sec.gov/sic/2021/sic-2021.xsd", "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd", "https://xbrl.fasb.org/us-gaap/2021/elts/us-parts-codification-2021-01-31.xsd", "https://xbrl.sec.gov/dei/2021/dei-2021_doc.xsd", "https://xbrl.sec.gov/dei/2021/dei-2021_ref.xsd" ] } }, "elementCount": 478, "entityCount": 1, "hidden": { "http://fasb.org/us-gaap/2021-01-31": 86, "http://www.gdyn.com/20210630": 31, "http://xbrl.sec.gov/dei/2021": 4, "total": 121 }, "keyCustom": 123, "keyStandard": 288, "memberCustom": 15, "memberStandard": 21, "nsprefix": "gdyn", "nsuri": "http://www.gdyn.com/20210630", "report": { "R1": { "firstAnchor": { "ancestors": [ "p", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "dei:EntityRegistrantName", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "document", "isDefault": "true", "longName": "000 - Document - Document And Entity Information", "role": "http://www.gdyn.com/role/DocumentAndEntityInformation", "shortName": "Document And Entity Information", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "p", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "dei:EntityRegistrantName", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R10": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:BusinessCombinationDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "009 - Disclosure - Business combination", "role": "http://www.gdyn.com/role/Businesscombination", "shortName": "Business combination", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:BusinessCombinationDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R11": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "gdyn:BusinessCombinationAcquisitionDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "010 - Disclosure - Acquisition of Tacit Knowledge Inc.", "role": "http://www.gdyn.com/role/AcquisitionofTacitKnowledgeInc", "shortName": "Acquisition of Tacit Knowledge Inc.", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "gdyn:BusinessCombinationAcquisitionDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R12": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "011 - Disclosure - Property and Equipment, net", "role": "http://www.gdyn.com/role/PropertyandEquipmentnet", "shortName": "Property and Equipment, net", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R13": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IntangibleAssetsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "012 - Disclosure - Intangible assets, net", "role": "http://www.gdyn.com/role/Intangibleassetsnet", "shortName": "Intangible assets, net", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IntangibleAssetsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R14": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:OtherLiabilitiesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "013 - Disclosure - Other current liabilities", "role": "http://www.gdyn.com/role/Othercurrentliabilities", "shortName": "Other current liabilities", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:OtherLiabilitiesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R15": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "014 - Disclosure - Income taxes", "role": "http://www.gdyn.com/role/Incometaxes", "shortName": "Income taxes", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R16": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "015 - Disclosure - Stockholders' equity", "role": "http://www.gdyn.com/role/Stockholdersequity", "shortName": "Stockholders' equity", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R17": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "016 - Disclosure - Stock-based compensation", "role": "http://www.gdyn.com/role/Stockbasedcompensation", "shortName": "Stock-based compensation", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R18": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:EarningsPerShareTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "017 - Disclosure - Earnings per share", "role": "http://www.gdyn.com/role/Earningspershare", "shortName": "Earnings per share", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:EarningsPerShareTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R19": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "018 - Disclosure - Commitments and contingencies", "role": "http://www.gdyn.com/role/Commitmentsandcontingencies", "shortName": "Commitments and contingencies", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R2": { "firstAnchor": { "ancestors": [ "td", "tr", "table", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c2", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "001 - Statement - Unaudited Condensed Consolidated Balance Sheets", "role": "http://www.gdyn.com/role/ConsolidatedBalanceSheet", "shortName": "Unaudited Condensed Consolidated Balance Sheets", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "td", "tr", "table", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c2", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R20": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SubsequentEventsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "019 - Disclosure - Subsequent events", "role": "http://www.gdyn.com/role/Subsequentevents", "shortName": "Subsequent events", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SubsequentEventsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R21": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "gdyn:UnauditedInterimFinancialStatementsPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "020 - Disclosure - Accounting Policies, by Policy (Policies)", "role": "http://www.gdyn.com/role/AccountingPoliciesByPolicy", "shortName": "Accounting Policies, by Policy (Policies)", "subGroupType": "policies", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "gdyn:UnauditedInterimFinancialStatementsPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R22": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "021 - Disclosure - Basis of presentation and summary of significant accounting policies (Tables)", "role": "http://www.gdyn.com/role/BasisofpresentationandsummaryofsignificantaccountingpoliciesTables", "shortName": "Basis of presentation and summary of significant accounting policies (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R23": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "gdyn:ScheduleOfConsiderationForBusinessCombinationTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "022 - Disclosure - Business combination (Tables)", "role": "http://www.gdyn.com/role/BusinesscombinationTables", "shortName": "Business combination (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "gdyn:ScheduleOfConsiderationForBusinessCombinationTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R24": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "023 - Disclosure - Acquisition of Tacit Knowledge Inc. (Tables)", "role": "http://www.gdyn.com/role/AcquisitionofTacitKnowledgeIncTables", "shortName": "Acquisition of Tacit Knowledge Inc. (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R25": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:PropertyPlantAndEquipmentTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "024 - Disclosure - Property and Equipment, net (Tables)", "role": "http://www.gdyn.com/role/PropertyandEquipmentnetTables", "shortName": "Property and Equipment, net (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:PropertyPlantAndEquipmentTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R26": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "025 - Disclosure - Intangible assets, net (Tables)", "role": "http://www.gdyn.com/role/IntangibleassetsnetTables", "shortName": "Intangible assets, net (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R27": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:OtherCurrentLiabilitiesTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "026 - Disclosure - Other current liabilities (Tables)", "role": "http://www.gdyn.com/role/OthercurrentliabilitiesTables", "shortName": "Other current liabilities (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:OtherCurrentLiabilitiesTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R28": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "gdyn:ScheduleOfConversionOfTheVestedAndUnvestedTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "027 - Disclosure - Stock-based compensation (Tables)", "role": "http://www.gdyn.com/role/StockbasedcompensationTables", "shortName": "Stock-based compensation (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "gdyn:ScheduleOfConversionOfTheVestedAndUnvestedTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R29": { "firstAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "028 - Disclosure - Earnings per share (Tables)", "role": "http://www.gdyn.com/role/EarningspershareTables", "shortName": "Earnings per share (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R3": { "firstAnchor": { "ancestors": [ "td", "tr", "table", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c2", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "002 - Statement - Unaudited Condensed Consolidated Balance Sheets (Parentheticals)", "role": "http://www.gdyn.com/role/ConsolidatedBalanceSheet_Parentheticals", "shortName": "Unaudited Condensed Consolidated Balance Sheets (Parentheticals)", "subGroupType": "parenthetical", "uniqueAnchor": null }, "R30": { "firstAnchor": { "ancestors": [ "span", "p", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c68", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:BusinessAcquisitionDescriptionOfAcquiredEntity", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "029 - Disclosure - Background and nature of operations (Details)", "role": "http://www.gdyn.com/role/BackgroundandnatureofoperationsDetails", "shortName": "Background and nature of operations (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "p", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c68", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:BusinessAcquisitionDescriptionOfAcquiredEntity", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R31": { "firstAnchor": { "ancestors": [ "td", "tr", "table", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c2", "decimals": "4", "first": true, "lang": null, "name": "us-gaap:CommonStockParOrStatedValuePerShare", "reportCount": 1, "unitRef": "usdPershares", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "030 - Disclosure - Basis of presentation and summary of significant accounting policies (Details)", "role": "http://www.gdyn.com/role/BasisofpresentationandsummaryofsignificantaccountingpoliciesDetails", "shortName": "Basis of presentation and summary of significant accounting policies (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "p", "ix:continuation", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": "-5", "lang": null, "name": "gdyn:ProceedsFromTrust", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R32": { "firstAnchor": { "ancestors": [ "td", "tr", "table", "ix:continuation", "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c2", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:AccountsReceivableRelatedPartiesCurrent", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "031 - Disclosure - Basis of presentation and summary of significant accounting policies (Details) - Schedule of accounts receivable and allowance for doubtful accounts", "role": "http://www.gdyn.com/role/ScheduleofaccountsreceivableandallowancefordoubtfulaccountsTable", "shortName": "Basis of presentation and summary of significant accounting policies (Details) - Schedule of accounts receivable and allowance for doubtful accounts", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "table", "ix:continuation", "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c2", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:AccountsReceivableRelatedPartiesCurrent", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R33": { "firstAnchor": { "ancestors": [ "span", "p", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c80", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:BusinessCombinationControlObtainedDescription", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "032 - Disclosure - Business combination (Details)", "role": "http://www.gdyn.com/role/BusinesscombinationDetails", "shortName": "Business combination (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "p", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c80", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:BusinessCombinationControlObtainedDescription", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R34": { "firstAnchor": { "ancestors": [ "td", "tr", "table", "gdyn:ScheduleOfConsiderationForBusinessCombinationTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": "INF", "first": true, "lang": null, "name": "gdyn:SharesTransferred", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "033 - Disclosure - Business combination (Details) - Schedule of consideration for business combination", "role": "http://www.gdyn.com/role/ScheduleofconsiderationforbusinesscombinationTable", "shortName": "Business combination (Details) - Schedule of consideration for business combination", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "table", "gdyn:ScheduleOfConsiderationForBusinessCombinationTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": "INF", "first": true, "lang": null, "name": "gdyn:SharesTransferred", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" } }, "R35": { "firstAnchor": { "ancestors": [ "p", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "gdyn:CashConsiderationDescriprtion", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "034 - Disclosure - Acquisition of Tacit Knowledge Inc. (Details)", "role": "http://www.gdyn.com/role/AcquisitionofTacitKnowledgeIncDetails", "shortName": "Acquisition of Tacit Knowledge Inc. (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "gdyn:CashConsiderationDescriprtion", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R36": { "firstAnchor": { "ancestors": [ "td", "tr", "table", "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c85", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "035 - Disclosure - Acquisition of Tacit Knowledge Inc. (Details) - Schedule of estimated fair values of the assets acquired and liabilities", "role": "http://www.gdyn.com/role/ScheduleofestimatedfairvaluesoftheassetsacquiredandliabilitiesTable", "shortName": "Acquisition of Tacit Knowledge Inc. (Details) - Schedule of estimated fair values of the assets acquired and liabilities", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "table", "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c85", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R37": { "firstAnchor": { "ancestors": [ "td", "tr", "table", "gdyn:ScheduleOfFiniteLivedIntrangibleAssetsTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c88", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:BusinessCombinationStepAcquisitionEquityInterestInAcquireeFairValue1", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "036 - Disclosure - Acquisition of Tacit Knowledge Inc. (Details) - Schedule of fair value of identifiable intangible assets", "role": "http://www.gdyn.com/role/ScheduleoffairvalueofidentifiableintangibleassetsTable", "shortName": "Acquisition of Tacit Knowledge Inc. (Details) - Schedule of fair value of identifiable intangible assets", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "table", "gdyn:ScheduleOfFiniteLivedIntrangibleAssetsTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c88", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:BusinessCombinationStepAcquisitionEquityInterestInAcquireeFairValue1", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R38": { "firstAnchor": { "ancestors": [ "td", "tr", "table", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c4", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:NetIncomeLoss", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "037 - Disclosure - Acquisition of Tacit Knowledge Inc. (Details) - Schedule of business acquisition pro forma information", "role": "http://www.gdyn.com/role/ScheduleofbusinessacquisitionproformainformationTable", "shortName": "Acquisition of Tacit Knowledge Inc. (Details) - Schedule of business acquisition pro forma information", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "table", "us-gaap:BusinessAcquisitionProFormaInformationTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": "2", "lang": null, "name": "gdyn:EarningslossPerShareinDollarsPerShare", "reportCount": 1, "unique": true, "unitRef": "usdPershares", "xsiNil": "false" } }, "R39": { "firstAnchor": { "ancestors": [ "td", "tr", "table", "us-gaap:PropertyPlantAndEquipmentTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c2", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:PropertyPlantAndEquipmentGross", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "038 - Disclosure - Property and Equipment, net (Details) - Schedule of property and equipment", "role": "http://www.gdyn.com/role/ScheduleofpropertyandequipmentTable", "shortName": "Property and Equipment, net (Details) - Schedule of property and equipment", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "table", "us-gaap:PropertyPlantAndEquipmentTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c2", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:PropertyPlantAndEquipmentGross", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R4": { "firstAnchor": { "ancestors": [ "td", "tr", "table", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c4", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:Revenues", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "003 - Statement - Unaudited Condensed Consolidated Statements of Loss and Comprehensive Loss", "role": "http://www.gdyn.com/role/ConsolidatedIncomeStatement", "shortName": "Unaudited Condensed Consolidated Statements of Loss and Comprehensive Loss", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "td", "tr", "table", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c4", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:Revenues", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R40": { "firstAnchor": { "ancestors": [ "td", "tr", "table", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c2", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "039 - Disclosure - Intangible assets, net (Details) - Schedule of Intangible assets", "role": "http://www.gdyn.com/role/ScheduleofIntangibleassetsTable", "shortName": "Intangible assets, net (Details) - Schedule of Intangible assets", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "table", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c2", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R41": { "firstAnchor": { "ancestors": [ "td", "tr", "table", "us-gaap:OtherCurrentLiabilitiesTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c2", "decimals": "-3", "first": true, "lang": null, "name": "gdyn:AccruedCustomerDiscounts", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "040 - Disclosure - Other current liabilities (Details) - Schedule of other current liabilities", "role": "http://www.gdyn.com/role/ScheduleofothercurrentliabilitiesTable", "shortName": "Other current liabilities (Details) - Schedule of other current liabilities", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "table", "us-gaap:OtherCurrentLiabilitiesTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c2", "decimals": "-3", "first": true, "lang": null, "name": "gdyn:AccruedCustomerDiscounts", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R42": { "firstAnchor": { "ancestors": [ "p", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c4", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:CurrentIncomeTaxExpenseBenefit", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "041 - Disclosure - Income taxes (Details)", "role": "http://www.gdyn.com/role/IncometaxesDetails", "shortName": "Income taxes (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c4", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:CurrentIncomeTaxExpenseBenefit", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R43": { "firstAnchor": { "ancestors": [ "td", "tr", "table", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c2", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:CommonStockSharesAuthorized", "reportCount": 1, "unitRef": "shares", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "042 - Disclosure - Stockholders' equity (Details)", "role": "http://www.gdyn.com/role/StockholdersequityDetails", "shortName": "Stockholders' equity (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "p", "ix:continuation", "ix:continuation", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": "-5", "lang": null, "name": "gdyn:WarrantsOutstandingShares", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" } }, "R44": { "firstAnchor": { "ancestors": [ "span", "p", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": "-5", "first": true, "lang": null, "name": "gdyn:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedOutstandingNumber", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "043 - Disclosure - Stock-based compensation (Details)", "role": "http://www.gdyn.com/role/StockbasedcompensationDetails", "shortName": "Stock-based compensation (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "p", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": "-5", "first": true, "lang": null, "name": "gdyn:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedOutstandingNumber", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" } }, "R45": { "firstAnchor": { "ancestors": [ "td", "tr", "table", "gdyn:ScheduleOfConversionOfTheVestedAndUnvestedTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c39", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "044 - Disclosure - Stock-based compensation (Details) - Schedule of conversion of the vested and unvested options", "role": "http://www.gdyn.com/role/ScheduleofconversionofthevestedandunvestedoptionsTable", "shortName": "Stock-based compensation (Details) - Schedule of conversion of the vested and unvested options", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "table", "gdyn:ScheduleOfConversionOfTheVestedAndUnvestedTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c39", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" } }, "R46": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "gdyn:ScheduleOfBoardOfDirectorsApprovedAnEquityIncentivePlanTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c3", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "045 - Disclosure - Stock-based compensation (Details) - Schedule of board of directors approved an equity incentive plan", "role": "http://www.gdyn.com/role/ScheduleofboardofdirectorsapprovedanequityincentiveplanTable", "shortName": "Stock-based compensation (Details) - Schedule of board of directors approved an equity incentive plan", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "gdyn:ScheduleOfBoardOfDirectorsApprovedAnEquityIncentivePlanTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c3", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" } }, "R47": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": "2", "first": true, "lang": null, "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate", "reportCount": 1, "unique": true, "unitRef": "pure", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "046 - Disclosure - Stock-based compensation (Details) - Schedule of estimated grant using the black-scholes", "role": "http://www.gdyn.com/role/ScheduleofestimatedgrantusingtheblackscholesTable", "shortName": "Stock-based compensation (Details) - Schedule of estimated grant using the black-scholes", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": "2", "first": true, "lang": null, "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate", "reportCount": 1, "unique": true, "unitRef": "pure", "xsiNil": "false" } }, "R48": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c3", "decimals": "INF", "first": true, "lang": null, "name": "gdyn:ShareBasedArrangementofOptionsOutstandingShares", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "047 - Disclosure - Stock-based compensation (Details) - Schedule of dividend yield assumption for all black-scholes stock option-pricing", "role": "http://www.gdyn.com/role/ScheduleofdividendyieldassumptionforallblackscholesstockoptionpricingTable", "shortName": "Stock-based compensation (Details) - Schedule of dividend yield assumption for all black-scholes stock option-pricing", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c3", "decimals": "INF", "first": true, "lang": null, "name": "gdyn:ShareBasedArrangementofOptionsOutstandingShares", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" } }, "R49": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "gdyn:SharebasedPaymentArrangementOptionActivityEmployeesTaxObligationsTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c3", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:SharesHeldInEmployeeStockOptionPlanSuspenseShares", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "048 - Disclosure - Stock-based compensation (Details) - Schedule of employees\u2019 tax obligations", "role": "http://www.gdyn.com/role/ScheduleofemployeestaxobligationsTable", "shortName": "Stock-based compensation (Details) - Schedule of employees\u2019 tax obligations", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "gdyn:SharebasedPaymentArrangementOptionActivityEmployeesTaxObligationsTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c3", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:SharesHeldInEmployeeStockOptionPlanSuspenseShares", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" } }, "R5": { "firstAnchor": { "ancestors": [ "td", "tr", "table", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c34", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:StockholdersEquity", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "004 - Statement - Unaudited Consolidated Statement of Convertible Preferred Stock and Stockholders' Equity", "role": "http://www.gdyn.com/role/ShareholdersEquityType2or3", "shortName": "Unaudited Consolidated Statement of Convertible Preferred Stock and Stockholders' Equity", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "td", "tr", "table", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c41", "decimals": "-3", "lang": null, "name": "gdyn:RetroactiveApplicationOfRecapitalization", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R50": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "us-gaap:ScheduleOfShareBasedCompensationEmployeeStockPurchasePlanActivityTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c4", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:CompensationExpenseExcludingCostOfGoodAndServiceSold", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "049 - Disclosure - Stock-based compensation (Details) - Schedule of employee stock-based compensation recognized", "role": "http://www.gdyn.com/role/ScheduleofemployeestockbasedcompensationrecognizedTable", "shortName": "Stock-based compensation (Details) - Schedule of employee stock-based compensation recognized", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "us-gaap:ScheduleOfShareBasedCompensationEmployeeStockPurchasePlanActivityTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c4", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:CompensationExpenseExcludingCostOfGoodAndServiceSold", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R51": { "firstAnchor": { "ancestors": [ "td", "tr", "table", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c4", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:NetIncomeLossAvailableToCommonStockholdersBasic", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "050 - Disclosure - Earnings per share (Details) - Schedule of computation of basic and diluted earnings per share", "role": "http://www.gdyn.com/role/ScheduleofcomputationofbasicanddilutedearningspershareTable", "shortName": "Earnings per share (Details) - Schedule of computation of basic and diluted earnings per share", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "table", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c4", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:NetIncomeLossAvailableToCommonStockholdersBasic", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R52": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "gdyn:ScheduleOfDilutedNetLossPerShareAttributableToCommonStockholdersTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c6", "decimals": "-3", "first": true, "lang": null, "name": "gdyn:ConvertiblePreferredStock", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "051 - Disclosure - Earnings per share (Details) - Schedule of diluted net income/(loss) per share attributable to common stockholders", "role": "http://www.gdyn.com/role/ScheduleofdilutednetincomelosspershareattributabletocommonstockholdersTable", "shortName": "Earnings per share (Details) - Schedule of diluted net income/(loss) per share attributable to common stockholders", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "gdyn:ScheduleOfDilutedNetLossPerShareAttributableToCommonStockholdersTableTextBlock", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c6", "decimals": "-3", "first": true, "lang": null, "name": "gdyn:ConvertiblePreferredStock", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" } }, "R53": { "firstAnchor": { "ancestors": [ "span", "p", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c152", "decimals": "INF", "first": true, "lang": null, "name": "gdyn:OfferedShares", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "052 - Disclosure - Subsequent events (Details)", "role": "http://www.gdyn.com/role/SubsequenteventsDetails", "shortName": "Subsequent events (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "p", "ix:continuation", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c152", "decimals": "INF", "first": true, "lang": null, "name": "gdyn:OfferedShares", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" } }, "R6": { "firstAnchor": { "ancestors": [ "td", "tr", "table", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": "-3", "first": true, "lang": null, "name": "gdyn:RecapitalizedNetOfTransactionCosts", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "005 - Statement - Unaudited Consolidated Statement of Convertible Preferred Stock and Stockholders' Equity (Parentheticals)", "role": "http://www.gdyn.com/role/ShareholdersEquityType2or3_Parentheticals", "shortName": "Unaudited Consolidated Statement of Convertible Preferred Stock and Stockholders' Equity (Parentheticals)", "subGroupType": "parenthetical", "uniqueAnchor": { "ancestors": [ "td", "tr", "table", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": "-3", "first": true, "lang": null, "name": "gdyn:RecapitalizedNetOfTransactionCosts", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R7": { "firstAnchor": { "ancestors": [ "td", "tr", "table", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:ProfitLoss", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "006 - Statement - Unaudited Condensed Consolidated Statement of Cash Flows", "role": "http://www.gdyn.com/role/ConsolidatedCashFlow", "shortName": "Unaudited Condensed Consolidated Statement of Cash Flows", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "td", "tr", "table", "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": "-3", "lang": null, "name": "us-gaap:DepreciationAndAmortization", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R8": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:NatureOfOperations", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "007 - Disclosure - Background and nature of operations", "role": "http://www.gdyn.com/role/Backgroundandnatureofoperations", "shortName": "Background and nature of operations", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:NatureOfOperations", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R9": { "firstAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SignificantAccountingPoliciesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "008 - Disclosure - Basis of presentation and summary of significant accounting policies", "role": "http://www.gdyn.com/role/Basisofpresentationandsummaryofsignificantaccountingpolicies", "shortName": "Basis of presentation and summary of significant accounting policies", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "div", "body", "html" ], "baseRef": "f10q0621_griddynamics.htm", "contextRef": "c0", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SignificantAccountingPoliciesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } } }, "segmentCount": 37, "tag": { "dei_AmendmentFlag": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.", "label": "Amendment Flag", "terseLabel": "Amendment Flag" } } }, "localname": "AmendmentFlag", "nsuri": "http://xbrl.sec.gov/dei/2021", "presentation": [ "http://www.gdyn.com/role/DocumentAndEntityInformation" ], "xbrltype": "booleanItemType" }, "dei_CityAreaCode": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Area code of city", "label": "City Area Code", "terseLabel": "City Area Code" } } }, "localname": "CityAreaCode", "nsuri": "http://xbrl.sec.gov/dei/2021", "presentation": [ "http://www.gdyn.com/role/DocumentAndEntityInformation" ], "xbrltype": "normalizedStringItemType" }, "dei_CurrentFiscalYearEndDate": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "End date of current fiscal year in the format --MM-DD.", "label": "Current Fiscal Year End Date", "terseLabel": "Current Fiscal Year End Date" } } }, "localname": "CurrentFiscalYearEndDate", "nsuri": "http://xbrl.sec.gov/dei/2021", "presentation": [ "http://www.gdyn.com/role/DocumentAndEntityInformation" ], "xbrltype": "gMonthDayItemType" }, "dei_DocumentFiscalPeriodFocus": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Fiscal period values are FY, Q1, Q2, and Q3. 1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.", "label": "Document Fiscal Period Focus", "terseLabel": "Document Fiscal Period Focus" } } }, "localname": "DocumentFiscalPeriodFocus", "nsuri": "http://xbrl.sec.gov/dei/2021", "presentation": [ "http://www.gdyn.com/role/DocumentAndEntityInformation" ], "xbrltype": "fiscalPeriodItemType" }, "dei_DocumentFiscalYearFocus": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.", "label": "Document Fiscal Year Focus", "terseLabel": "Document Fiscal Year Focus" } } }, "localname": "DocumentFiscalYearFocus", "nsuri": "http://xbrl.sec.gov/dei/2021", "presentation": [ "http://www.gdyn.com/role/DocumentAndEntityInformation" ], "xbrltype": "gYearItemType" }, "dei_DocumentInformationLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "localname": "DocumentInformationLineItems", "nsuri": "http://xbrl.sec.gov/dei/2021", "presentation": [ "http://www.gdyn.com/role/DocumentAndEntityInformation" ], "xbrltype": "stringItemType" }, "dei_DocumentInformationTable": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Container to support the formal attachment of each official or unofficial, public or private document as part of a submission package." } } }, "localname": "DocumentInformationTable", "nsuri": "http://xbrl.sec.gov/dei/2021", "presentation": [ "http://www.gdyn.com/role/DocumentAndEntityInformation" ], "xbrltype": "stringItemType" }, "dei_DocumentPeriodEndDate": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period. The format of the date is YYYY-MM-DD.", "label": "Document Period End Date", "terseLabel": "Document Period End Date" } } }, "localname": "DocumentPeriodEndDate", "nsuri": "http://xbrl.sec.gov/dei/2021", "presentation": [ "http://www.gdyn.com/role/DocumentAndEntityInformation" ], "xbrltype": "dateItemType" }, "dei_DocumentQuarterlyReport": { "auth_ref": [ "r409" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true only for a form used as an quarterly report.", "label": "Document Quarterly Report", "terseLabel": "Document Quarterly Report" } } }, "localname": "DocumentQuarterlyReport", "nsuri": "http://xbrl.sec.gov/dei/2021", "presentation": [ "http://www.gdyn.com/role/DocumentAndEntityInformation" ], "xbrltype": "booleanItemType" }, "dei_DocumentTransitionReport": { "auth_ref": [ "r410" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true only for a form used as a transition report.", "label": "Document Transition Report", "terseLabel": "Document Transition Report" } } }, "localname": "DocumentTransitionReport", "nsuri": "http://xbrl.sec.gov/dei/2021", "presentation": [ "http://www.gdyn.com/role/DocumentAndEntityInformation" ], "xbrltype": "booleanItemType" }, "dei_DocumentType": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.", "label": "Document Type", "terseLabel": "Document Type" } } }, "localname": "DocumentType", "nsuri": "http://xbrl.sec.gov/dei/2021", "presentation": [ "http://www.gdyn.com/role/DocumentAndEntityInformation" ], "xbrltype": "submissionTypeItemType" }, "dei_EntityAddressAddressLine1": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Address Line 1 such as Attn, Building Name, Street Name", "label": "Entity Address, Address Line One", "terseLabel": "Entity Address, Address Line One" } } }, "localname": "EntityAddressAddressLine1", "nsuri": "http://xbrl.sec.gov/dei/2021", "presentation": [ "http://www.gdyn.com/role/DocumentAndEntityInformation" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressAddressLine2": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Address Line 2 such as Street or Suite number", "label": "Entity Address, Address Line Two", "terseLabel": "Entity Address, Address Line Two" } } }, "localname": "EntityAddressAddressLine2", "nsuri": "http://xbrl.sec.gov/dei/2021", "presentation": [ "http://www.gdyn.com/role/DocumentAndEntityInformation" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressCityOrTown": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Name of the City or Town", "label": "Entity Address, City or Town", "terseLabel": "Entity Address, City or Town" } } }, "localname": "EntityAddressCityOrTown", "nsuri": "http://xbrl.sec.gov/dei/2021", "presentation": [ "http://www.gdyn.com/role/DocumentAndEntityInformation" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressPostalZipCode": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Code for the postal or zip code", "label": "Entity Address, Postal Zip Code", "terseLabel": "Entity Address, Postal Zip Code" } } }, "localname": "EntityAddressPostalZipCode", "nsuri": "http://xbrl.sec.gov/dei/2021", "presentation": [ "http://www.gdyn.com/role/DocumentAndEntityInformation" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressStateOrProvince": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Name of the state or province.", "label": "Entity Address, State or Province", "terseLabel": "Entity Address, State or Province" } } }, "localname": "EntityAddressStateOrProvince", "nsuri": "http://xbrl.sec.gov/dei/2021", "presentation": [ "http://www.gdyn.com/role/DocumentAndEntityInformation" ], "xbrltype": "stateOrProvinceItemType" }, "dei_EntityCentralIndexKey": { "auth_ref": [ "r411" ], "lang": { "en-us": { "role": { "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.", "label": "Entity Central Index Key", "terseLabel": "Entity Central Index Key" } } }, "localname": "EntityCentralIndexKey", "nsuri": "http://xbrl.sec.gov/dei/2021", "presentation": [ "http://www.gdyn.com/role/DocumentAndEntityInformation" ], "xbrltype": "centralIndexKeyItemType" }, "dei_EntityCommonStockSharesOutstanding": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument.", "label": "Entity Common Stock, Shares Outstanding", "terseLabel": "Entity Common Stock, Shares Outstanding" } } }, "localname": "EntityCommonStockSharesOutstanding", "nsuri": "http://xbrl.sec.gov/dei/2021", "presentation": [ "http://www.gdyn.com/role/DocumentAndEntityInformation" ], "xbrltype": "sharesItemType" }, "dei_EntityCurrentReportingStatus": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure.", "label": "Entity Current Reporting Status", "terseLabel": "Entity Current Reporting Status" } } }, "localname": "EntityCurrentReportingStatus", "nsuri": "http://xbrl.sec.gov/dei/2021", "presentation": [ "http://www.gdyn.com/role/DocumentAndEntityInformation" ], "xbrltype": "yesNoItemType" }, "dei_EntityEmergingGrowthCompany": { "auth_ref": [ "r411" ], "lang": { "en-us": { "role": { "documentation": "Indicate if registrant meets the emerging growth company criteria.", "label": "Entity Emerging Growth Company", "terseLabel": "Entity Emerging Growth Company" } } }, "localname": "EntityEmergingGrowthCompany", "nsuri": "http://xbrl.sec.gov/dei/2021", "presentation": [ "http://www.gdyn.com/role/DocumentAndEntityInformation" ], "xbrltype": "booleanItemType" }, "dei_EntityExTransitionPeriod": { "auth_ref": [ "r413" ], "lang": { "en-us": { "role": { "documentation": "Indicate if an emerging growth company has elected not to use the extended transition period for complying with any new or revised financial accounting standards.", "label": "Entity Ex Transition Period", "terseLabel": "Entity Ex Transition Period" } } }, "localname": "EntityExTransitionPeriod", "nsuri": "http://xbrl.sec.gov/dei/2021", "presentation": [ "http://www.gdyn.com/role/DocumentAndEntityInformation" ], "xbrltype": "booleanItemType" }, "dei_EntityFileNumber": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.", "label": "Entity File Number", "terseLabel": "Entity File Number" } } }, "localname": "EntityFileNumber", "nsuri": "http://xbrl.sec.gov/dei/2021", "presentation": [ "http://www.gdyn.com/role/DocumentAndEntityInformation" ], "xbrltype": "fileNumberItemType" }, "dei_EntityFilerCategory": { "auth_ref": [ "r411" ], "lang": { "en-us": { "role": { "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.", "label": "Entity Filer Category", "terseLabel": "Entity Filer Category" } } }, "localname": "EntityFilerCategory", "nsuri": "http://xbrl.sec.gov/dei/2021", "presentation": [ "http://www.gdyn.com/role/DocumentAndEntityInformation" ], "xbrltype": "filerCategoryItemType" }, "dei_EntityIncorporationStateCountryCode": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Two-character EDGAR code representing the state or country of incorporation.", "label": "Entity Incorporation, State or Country Code", "terseLabel": "Entity Incorporation, State or Country Code" } } }, "localname": "EntityIncorporationStateCountryCode", "nsuri": "http://xbrl.sec.gov/dei/2021", "presentation": [ "http://www.gdyn.com/role/DocumentAndEntityInformation" ], "xbrltype": "edgarStateCountryItemType" }, "dei_EntityInteractiveDataCurrent": { "auth_ref": [ "r412" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).", "label": "Entity Interactive Data Current", "terseLabel": "Entity Interactive Data Current" } } }, "localname": "EntityInteractiveDataCurrent", "nsuri": "http://xbrl.sec.gov/dei/2021", "presentation": [ "http://www.gdyn.com/role/DocumentAndEntityInformation" ], "xbrltype": "yesNoItemType" }, "dei_EntityRegistrantName": { "auth_ref": [ "r411" ], "lang": { "en-us": { "role": { "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.", "label": "Entity Registrant Name", "terseLabel": "Entity Registrant Name" } } }, "localname": "EntityRegistrantName", "nsuri": "http://xbrl.sec.gov/dei/2021", "presentation": [ "http://www.gdyn.com/role/DocumentAndEntityInformation" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityShellCompany": { "auth_ref": [ "r411" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.", "label": "Entity Shell Company", "terseLabel": "Entity Shell Company" } } }, "localname": "EntityShellCompany", "nsuri": "http://xbrl.sec.gov/dei/2021", "presentation": [ "http://www.gdyn.com/role/DocumentAndEntityInformation" ], "xbrltype": "booleanItemType" }, "dei_EntitySmallBusiness": { "auth_ref": [ "r411" ], "lang": { "en-us": { "role": { "documentation": "Indicates that the company is a Smaller Reporting Company (SRC).", "label": "Entity Small Business", "terseLabel": "Entity Small Business" } } }, "localname": "EntitySmallBusiness", "nsuri": "http://xbrl.sec.gov/dei/2021", "presentation": [ "http://www.gdyn.com/role/DocumentAndEntityInformation" ], "xbrltype": "booleanItemType" }, "dei_EntityTaxIdentificationNumber": { "auth_ref": [ "r411" ], "lang": { "en-us": { "role": { "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.", "label": "Entity Tax Identification Number", "terseLabel": "Entity Tax Identification Number" } } }, "localname": "EntityTaxIdentificationNumber", "nsuri": "http://xbrl.sec.gov/dei/2021", "presentation": [ "http://www.gdyn.com/role/DocumentAndEntityInformation" ], "xbrltype": "employerIdItemType" }, "dei_LocalPhoneNumber": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Local phone number for entity.", "label": "Local Phone Number", "terseLabel": "Local Phone Number" } } }, "localname": "LocalPhoneNumber", "nsuri": "http://xbrl.sec.gov/dei/2021", "presentation": [ "http://www.gdyn.com/role/DocumentAndEntityInformation" ], "xbrltype": "normalizedStringItemType" }, "dei_Security12bTitle": { "auth_ref": [ "r407" ], "lang": { "en-us": { "role": { "documentation": "Title of a 12(b) registered security.", "label": "Title of 12(b) Security", "terseLabel": "Title of 12(b) Security" } } }, "localname": "Security12bTitle", "nsuri": "http://xbrl.sec.gov/dei/2021", "presentation": [ "http://www.gdyn.com/role/DocumentAndEntityInformation" ], "xbrltype": "securityTitleItemType" }, "dei_SecurityExchangeName": { "auth_ref": [ "r408" ], "lang": { "en-us": { "role": { "documentation": "Name of the Exchange on which a security is registered.", "label": "Security Exchange Name", "terseLabel": "Security Exchange Name" } } }, "localname": "SecurityExchangeName", "nsuri": "http://xbrl.sec.gov/dei/2021", "presentation": [ "http://www.gdyn.com/role/DocumentAndEntityInformation" ], "xbrltype": "edgarExchangeCodeItemType" }, "dei_TradingSymbol": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Trading symbol of an instrument as listed on an exchange.", "label": "Trading Symbol", "terseLabel": "Trading Symbol" } } }, "localname": "TradingSymbol", "nsuri": "http://xbrl.sec.gov/dei/2021", "presentation": [ "http://www.gdyn.com/role/DocumentAndEntityInformation" ], "xbrltype": "tradingSymbolItemType" }, "gdyn_AccruedCustomerDiscounts": { "auth_ref": [], "calculation": { "http://www.gdyn.com/role/ScheduleofothercurrentliabilitiesTable": { "order": 1.0, "parentTag": "us-gaap_OtherLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Accrued customer discounts.", "label": "AccruedCustomerDiscounts", "terseLabel": "Customer deposits" } } }, "localname": "AccruedCustomerDiscounts", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofothercurrentliabilitiesTable" ], "xbrltype": "monetaryItemType" }, "gdyn_AccumulatedAmortization": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Accumulated amortization.", "label": "AccumulatedAmortization", "terseLabel": "Less: Accumulated amortization" } } }, "localname": "AccumulatedAmortization", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofIntangibleassetsTable" ], "xbrltype": "monetaryItemType" }, "gdyn_AcquisitionofTacitKnowledgeIncDetailsScheduleofbusinessacquisitionproformainformationLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Acquisition of Tacit Knowledge Inc. (Details) - Schedule of business acquisition pro forma information [Line Items]" } } }, "localname": "AcquisitionofTacitKnowledgeIncDetailsScheduleofbusinessacquisitionproformainformationLineItems", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofbusinessacquisitionproformainformationTable" ], "xbrltype": "stringItemType" }, "gdyn_AcquisitionofTacitKnowledgeIncDetailsScheduleofbusinessacquisitionproformainformationTable": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Acquisition of Tacit Knowledge Inc. (Details) - Schedule of business acquisition pro forma information [Table]" } } }, "localname": "AcquisitionofTacitKnowledgeIncDetailsScheduleofbusinessacquisitionproformainformationTable", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofbusinessacquisitionproformainformationTable" ], "xbrltype": "stringItemType" }, "gdyn_AcquisitionofTacitKnowledgeIncDetailsScheduleoffairvalueofidentifiableintangibleassetsLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Acquisition of Tacit Knowledge Inc. (Details) - Schedule of fair value of identifiable intangible assets [Line Items]" } } }, "localname": "AcquisitionofTacitKnowledgeIncDetailsScheduleoffairvalueofidentifiableintangibleassetsLineItems", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleoffairvalueofidentifiableintangibleassetsTable" ], "xbrltype": "stringItemType" }, "gdyn_AcquisitionofTacitKnowledgeIncDetailsScheduleoffairvalueofidentifiableintangibleassetsTable": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Acquisition of Tacit Knowledge Inc. (Details) - Schedule of fair value of identifiable intangible assets [Table]" } } }, "localname": "AcquisitionofTacitKnowledgeIncDetailsScheduleoffairvalueofidentifiableintangibleassetsTable", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleoffairvalueofidentifiableintangibleassetsTable" ], "xbrltype": "stringItemType" }, "gdyn_AdjustedBalanceBeginningOfPeriod": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Stock issued during the period for adjusted balance.", "label": "AdjustedBalanceBeginningOfPeriod", "terseLabel": "Adjusted balance beginning of period" } } }, "localname": "AdjustedBalanceBeginningOfPeriod", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ShareholdersEquityType2or3" ], "xbrltype": "monetaryItemType" }, "gdyn_AdjustedBalanceBeginningOfPeriodinShares": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Stock issued during the period adjusted balance by shares.", "label": "AdjustedBalanceBeginningOfPeriodinShares", "terseLabel": "Adjusted balance beginning of period (in Shares)" } } }, "localname": "AdjustedBalanceBeginningOfPeriodinShares", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ShareholdersEquityType2or3" ], "xbrltype": "sharesItemType" }, "gdyn_AggregatedFairValueGranted": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "label": "AggregatedFairValueGranted", "terseLabel": "Aggregated fair value granted" } } }, "localname": "AggregatedFairValueGranted", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "monetaryItemType" }, "gdyn_AvailableForGrantOptionsForfeited": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Available for grant, Options forfeited.", "label": "AvailableForGrantOptionsForfeited", "terseLabel": "Available for grant, Options forfeited" } } }, "localname": "AvailableForGrantOptionsForfeited", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofboardofdirectorsapprovedanequityincentiveplanTable" ], "xbrltype": "sharesItemType" }, "gdyn_AvailableForGrantOptionsGranted": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Gross number of share options (or share units) granted during the period.", "label": "AvailableForGrantOptionsGranted", "terseLabel": "Available for grant, Options granted" } } }, "localname": "AvailableForGrantOptionsGranted", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofboardofdirectorsapprovedanequityincentiveplanTable" ], "xbrltype": "sharesItemType" }, "gdyn_AvailableForGrantPSUGrantedTargetAchieved": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Available for grant, PSU granted target achieved.", "label": "AvailableForGrantPSUGrantedTargetAchieved", "terseLabel": "Available for grant, PSU granted (100% target)" } } }, "localname": "AvailableForGrantPSUGrantedTargetAchieved", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofboardofdirectorsapprovedanequityincentiveplanTable" ], "xbrltype": "sharesItemType" }, "gdyn_AvailableForGrantRSUForfeited": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Available for grant, RSU forfeited.", "label": "AvailableForGrantRSUForfeited", "terseLabel": "Available for grant, Traded for taxes (returned to the pool)" } } }, "localname": "AvailableForGrantRSUForfeited", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofboardofdirectorsapprovedanequityincentiveplanTable" ], "xbrltype": "sharesItemType" }, "gdyn_AvailableForGrantRSUGranted": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Available for grant, RSU granted.", "label": "AvailableForGrantRSUGranted", "terseLabel": "Available for grant, RSU granted" } } }, "localname": "AvailableForGrantRSUGranted", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofboardofdirectorsapprovedanequityincentiveplanTable" ], "xbrltype": "sharesItemType" }, "gdyn_BackgroundandnatureofoperationsDetailsLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Background and nature of operations (Details) [Line Items]" } } }, "localname": "BackgroundandnatureofoperationsDetailsLineItems", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/BackgroundandnatureofoperationsDetails" ], "xbrltype": "stringItemType" }, "gdyn_BackgroundandnatureofoperationsDetailsTable": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Background and nature of operations (Details) [Table]" } } }, "localname": "BackgroundandnatureofoperationsDetailsTable", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/BackgroundandnatureofoperationsDetails" ], "xbrltype": "stringItemType" }, "gdyn_BalancePriorToExchangeRatioConversion": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Number of shares prior to exchange ratio conversion.", "label": "BalancePriorToExchangeRatioConversion", "terseLabel": "Options outstanding, Balance at March 31, 2020 (prior to exchange ratio conversion)" } } }, "localname": "BalancePriorToExchangeRatioConversion", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofconversionofthevestedandunvestedoptionsTable" ], "xbrltype": "sharesItemType" }, "gdyn_BasisofpresentationandsummaryofsignificantaccountingpoliciesDetailsLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Basis of presentation and summary of significant accounting policies (Details) [Line Items]" } } }, "localname": "BasisofpresentationandsummaryofsignificantaccountingpoliciesDetailsLineItems", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/BasisofpresentationandsummaryofsignificantaccountingpoliciesDetails" ], "xbrltype": "stringItemType" }, "gdyn_BasisofpresentationandsummaryofsignificantaccountingpoliciesDetailsTable": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Basis of presentation and summary of significant accounting policies (Details) [Table]" } } }, "localname": "BasisofpresentationandsummaryofsignificantaccountingpoliciesDetailsTable", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/BasisofpresentationandsummaryofsignificantaccountingpoliciesDetails" ], "xbrltype": "stringItemType" }, "gdyn_BusinessCombinationAcquisitionDisclosureAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Business Combination Acquisition Disclosure [Abstract]" } } }, "localname": "BusinessCombinationAcquisitionDisclosureAbstract", "nsuri": "http://www.gdyn.com/20210630", "xbrltype": "stringItemType" }, "gdyn_BusinessCombinationAcquisitionDisclosureTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The entire disclosure of acquisition.", "label": "BusinessCombinationAcquisitionDisclosureTextBlock", "terseLabel": "Acquisition of Tacit Knowledge Inc." } } }, "localname": "BusinessCombinationAcquisitionDisclosureTextBlock", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/AcquisitionofTacitKnowledgeInc" ], "xbrltype": "textBlockItemType" }, "gdyn_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsTrademarksAndBrand": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed Trade Mark and Brand.", "label": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsTrademarksAndBrand", "terseLabel": "Tradename" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsTrademarksAndBrand", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofestimatedfairvaluesoftheassetsacquiredandliabilitiesTable" ], "xbrltype": "monetaryItemType" }, "gdyn_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCustomerRelationships": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Customer relationships.", "label": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCustomerRelationships", "terseLabel": "Customer relationships" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCustomerRelationships", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofestimatedfairvaluesoftheassetsacquiredandliabilitiesTable" ], "xbrltype": "monetaryItemType" }, "gdyn_BusinesscombinationDetailsLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Business combination (Details) [Line Items]" } } }, "localname": "BusinesscombinationDetailsLineItems", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/BusinesscombinationDetails" ], "xbrltype": "stringItemType" }, "gdyn_BusinesscombinationDetailsTable": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Business combination (Details) [Table]" } } }, "localname": "BusinesscombinationDetailsTable", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/BusinesscombinationDetails" ], "xbrltype": "stringItemType" }, "gdyn_CARESActDescription": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Description of CARES Act.", "label": "CARESActDescription", "terseLabel": "CARES Act description" } } }, "localname": "CARESActDescription", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/IncometaxesDetails" ], "xbrltype": "stringItemType" }, "gdyn_CapitalizedSoftwareDevelopmentCostsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "CapitalizedSoftwareDevelopmentCostsMember", "terseLabel": "Capitalized software development costs [Member]" } } }, "localname": "CapitalizedSoftwareDevelopmentCostsMember", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofpropertyandequipmentTable" ], "xbrltype": "domainItemType" }, "gdyn_CashConsiderationDescriprtion": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Description of cash consideration to the date of acquisition.", "label": "CashConsiderationDescriprtion", "terseLabel": "Cash consideration, descriprtion" } } }, "localname": "CashConsiderationDescriprtion", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/AcquisitionofTacitKnowledgeIncDetails" ], "xbrltype": "stringItemType" }, "gdyn_CashTransferredToRelatedParty": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Cash transferred to GDI stockholders.", "label": "CashTransferredToRelatedParty", "terseLabel": "Plus: Cash transferred to GDI stockholders" } } }, "localname": "CashTransferredToRelatedParty", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofconsiderationforbusinesscombinationTable" ], "xbrltype": "monetaryItemType" }, "gdyn_CertainSignificantRisksAndUncertaintiesPolicyTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "CertainSignificantRisksAndUncertaintiesPolicyTextBlock", "terseLabel": "Certain significant risks and uncertainties" } } }, "localname": "CertainSignificantRisksAndUncertaintiesPolicyTextBlock", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/AccountingPoliciesByPolicy" ], "xbrltype": "textBlockItemType" }, "gdyn_CommonStockSharesDescription": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Description of common stock shares.", "label": "CommonStockSharesDescription", "terseLabel": "Common stock shares, description" } } }, "localname": "CommonStockSharesDescription", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockholdersequityDetails" ], "xbrltype": "stringItemType" }, "gdyn_ComputersAndEquipmentMember": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "ComputersAndEquipmentMember", "terseLabel": "Computers and equipment [Member]" } } }, "localname": "ComputersAndEquipmentMember", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofpropertyandequipmentTable" ], "xbrltype": "domainItemType" }, "gdyn_ConcentrationRiskPercentage": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the \"benchmark\" (or denominator) in the equation, this concept represents the concentration percentage derived from the division.", "label": "ConcentrationRiskPercentage", "terseLabel": "Concentration risk percentage" } } }, "localname": "ConcentrationRiskPercentage", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/BasisofpresentationandsummaryofsignificantaccountingpoliciesDetails" ], "xbrltype": "percentItemType" }, "gdyn_ConsultantFees": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The amount of expense provided in the period for consultant fees.", "label": "ConsultantFees", "terseLabel": "Consultant fees" } } }, "localname": "ConsultantFees", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/AcquisitionofTacitKnowledgeIncDetails" ], "xbrltype": "monetaryItemType" }, "gdyn_ContingentConsiderationPayable": { "auth_ref": [], "calculation": { "http://www.gdyn.com/role/ScheduleofothercurrentliabilitiesTable": { "order": 3.0, "parentTag": "us-gaap_OtherLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Contingent consideration payable.", "label": "ContingentConsiderationPayable", "terseLabel": "Contingent consideration payable" } } }, "localname": "ContingentConsiderationPayable", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofothercurrentliabilitiesTable" ], "xbrltype": "monetaryItemType" }, "gdyn_ContributionMarginPerformanceDescription": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Description of contribution margin performance.", "label": "ContributionMarginPerformanceDescription", "terseLabel": "Contribution margin performance, description" } } }, "localname": "ContributionMarginPerformanceDescription", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "stringItemType" }, "gdyn_ConversionOfPreferredStockToCommonStock": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Conversion of preferred stock to common stock.", "label": "ConversionOfPreferredStockToCommonStock", "terseLabel": "Conversion of preferred stock to common stock" } } }, "localname": "ConversionOfPreferredStockToCommonStock", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ConsolidatedCashFlow" ], "xbrltype": "monetaryItemType" }, "gdyn_ConvertedUnvestedBalance": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Number of converted unvested balance.", "label": "ConvertedUnvestedBalance", "terseLabel": "Options outstanding, Converted unvested balance" } } }, "localname": "ConvertedUnvestedBalance", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofconversionofthevestedandunvestedoptionsTable" ], "xbrltype": "sharesItemType" }, "gdyn_ConvertedVestedBalance": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Number of converted vested balance.", "label": "ConvertedVestedBalance", "terseLabel": "Options outstanding, Converted vested balance" } } }, "localname": "ConvertedVestedBalance", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofconversionofthevestedandunvestedoptionsTable" ], "xbrltype": "sharesItemType" }, "gdyn_ConvertiblePreferredStock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Number of convertible preferred stock.", "label": "ConvertiblePreferredStock", "terseLabel": "Convertible preferred stock" } } }, "localname": "ConvertiblePreferredStock", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofdilutednetincomelosspershareattributabletocommonstockholdersTable" ], "xbrltype": "sharesItemType" }, "gdyn_CorporateTaxRate": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Corporate tax rate.", "label": "CorporateTaxRate", "terseLabel": "Corporate tax rate" } } }, "localname": "CorporateTaxRate", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/IncometaxesDetails" ], "xbrltype": "percentItemType" }, "gdyn_DenominatorForBasicAndDilutedLossPerShareAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "DenominatorForBasicAndDilutedLossPerShareAbstract", "terseLabel": "Denominator for basic and diluted loss per share" } } }, "localname": "DenominatorForBasicAndDilutedLossPerShareAbstract", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofcomputationofbasicanddilutedearningspershareTable" ], "xbrltype": "stringItemType" }, "gdyn_DiscreteTaxExpense": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Discrete tax expense.", "label": "DiscreteTaxExpense", "terseLabel": "Discrete tax expense" } } }, "localname": "DiscreteTaxExpense", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/IncometaxesDetails" ], "xbrltype": "monetaryItemType" }, "gdyn_DocumentAndEntityInformationAbstract": { "auth_ref": [], "localname": "DocumentAndEntityInformationAbstract", "nsuri": "http://www.gdyn.com/20210630", "xbrltype": "stringItemType" }, "gdyn_EarningslossPerShareinDollarsPerShare": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The amount of net income or loss for the period per each share in instances when basic and diluted earnings per share are the same amount and reported as a single line item on the face of the financial statements. Basic earnings per share is the amount of net income or loss for the period per each share of common stock or unit outstanding during the reporting period. Diluted earnings per share includes the amount of net income or loss for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.", "label": "EarningslossPerShareinDollarsPerShare", "terseLabel": "Loss per share (in Dollars per share)" } } }, "localname": "EarningslossPerShareinDollarsPerShare", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofbusinessacquisitionproformainformationTable" ], "xbrltype": "perShareItemType" }, "gdyn_EarnoutSharesDescription": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Description of earnout shares.", "label": "EarnoutSharesDescription", "terseLabel": "Earnout shares, description" } } }, "localname": "EarnoutSharesDescription", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockholdersequityDetails" ], "xbrltype": "stringItemType" }, "gdyn_EmployeesTaxObligationsRSUForfeited": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Employees Tax Obligations RSU Forfeited.", "label": "EmployeesTaxObligationsRSUForfeited", "terseLabel": "RSU forfeited" } } }, "localname": "EmployeesTaxObligationsRSUForfeited", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofemployeestaxobligationsTable" ], "xbrltype": "sharesItemType" }, "gdyn_EmployeesTaxObligationsRSUsGranted": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "EmployeesTaxObligationsRSUsGranted", "terseLabel": "RSUs granted" } } }, "localname": "EmployeesTaxObligationsRSUsGranted", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofemployeestaxobligationsTable" ], "xbrltype": "sharesItemType" }, "gdyn_EmployeesTaxObligationsRSUsReleased": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "EmployeesTaxObligationsRSUsReleased", "terseLabel": "RSUs released" } } }, "localname": "EmployeesTaxObligationsRSUsReleased", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofemployeestaxobligationsTable" ], "xbrltype": "sharesItemType" }, "gdyn_EquityIncentivePlanMember": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "EquityIncentivePlanMember", "terseLabel": "2020 Equity Incentive Plan [Member]" } } }, "localname": "EquityIncentivePlanMember", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "domainItemType" }, "gdyn_ExchangeCommonStock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Exchange common stock.", "label": "ExchangeCommonStock", "terseLabel": "Exchange common stock (in Dollars)" } } }, "localname": "ExchangeCommonStock", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockholdersequityDetails" ], "xbrltype": "monetaryItemType" }, "gdyn_FairMarketValuesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "FairMarketValuesAbstract", "terseLabel": "Fair market values" } } }, "localname": "FairMarketValuesAbstract", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofestimatedfairvaluesoftheassetsacquiredandliabilitiesTable" ], "xbrltype": "stringItemType" }, "gdyn_GDIMember": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "GDIMember", "terseLabel": "GDI [Member]" } } }, "localname": "GDIMember", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockholdersequityDetails" ], "xbrltype": "domainItemType" }, "gdyn_GrossProceeds": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Gross Proceeds.", "label": "GrossProceeds", "terseLabel": "Gross proceeds (in Dollars)" } } }, "localname": "GrossProceeds", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/SubsequenteventsDetails" ], "xbrltype": "monetaryItemType" }, "gdyn_IncentiveStockOptions": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Number of incentive stock options.", "label": "IncentiveStockOptions", "terseLabel": "Incentive stock options (in Shares)" } } }, "localname": "IncentiveStockOptions", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "sharesItemType" }, "gdyn_IncomeTaxPercentage": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "IncomeTaxPercentage", "terseLabel": "Income tax percentage" } } }, "localname": "IncomeTaxPercentage", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/BasisofpresentationandsummaryofsignificantaccountingpoliciesDetails" ], "xbrltype": "percentItemType" }, "gdyn_IncreaseDecreaseINUnbilledReceivables": { "auth_ref": [], "calculation": { "http://www.gdyn.com/role/ConsolidatedCashFlow": { "order": 13.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in unbilled receivables.", "label": "IncreaseDecreaseINUnbilledReceivables", "negatedLabel": "Unbilled receivables" } } }, "localname": "IncreaseDecreaseINUnbilledReceivables", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ConsolidatedCashFlow" ], "xbrltype": "monetaryItemType" }, "gdyn_IncreaseToAdditionalPaidinCapital": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of share based compensation increase to additional paid-in capital.", "label": "IncreaseToAdditionalPaidinCapital", "terseLabel": "Increase to additional paid-in capital" } } }, "localname": "IncreaseToAdditionalPaidinCapital", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "monetaryItemType" }, "gdyn_IntangiblePropertyAndEquipmentNet": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Intangible property and equipment net.", "label": "IntangiblePropertyAndEquipmentNet", "terseLabel": "Intangible property and equipment, net" } } }, "localname": "IntangiblePropertyAndEquipmentNet", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofpropertyandequipmentTable" ], "xbrltype": "monetaryItemType" }, "gdyn_IssuanceOfOptionGranted": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "IssuanceOfOptionGranted", "terseLabel": "Issuance of option granted (in Shares)" } } }, "localname": "IssuanceOfOptionGranted", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "sharesItemType" }, "gdyn_IssuanceOfSharesInConnectionWithVestedAwards": { "auth_ref": [], "calculation": { "http://www.gdyn.com/role/ConsolidatedCashFlow": { "order": 5.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Issuance of shares in connection with vested awards.", "label": "IssuanceOfSharesInConnectionWithVestedAwards", "negatedLabel": "Issuance of shares and payments of tax obligations resulted from net share settlement of vested stock awards", "negatedTerseLabel": "Payments of tax obligations resulted from net share settlement of vested stock awards" } } }, "localname": "IssuanceOfSharesInConnectionWithVestedAwards", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ConsolidatedCashFlow", "http://www.gdyn.com/role/ShareholdersEquityType2or3" ], "xbrltype": "monetaryItemType" }, "gdyn_IssuanceOfSharesInConnectionWithVestedAwardsinShares": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Issuance of shares in connection with vested awards (in Shares).", "label": "IssuanceOfSharesInConnectionWithVestedAwardsinShares", "terseLabel": "Issuance of shares and payments of tax obligations resulted from net share settlement of vested stock awards (in Shares)" } } }, "localname": "IssuanceOfSharesInConnectionWithVestedAwardsinShares", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ShareholdersEquityType2or3" ], "xbrltype": "sharesItemType" }, "gdyn_MachineryAndAutomobilesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "MachineryAndAutomobilesMember", "terseLabel": "Machinery and automobiles [Member]" } } }, "localname": "MachineryAndAutomobilesMember", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofpropertyandequipmentTable" ], "xbrltype": "domainItemType" }, "gdyn_MaximumPayoutPercentage": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "MaximumPayoutPercentage", "terseLabel": "Maximum payout, percentage" } } }, "localname": "MaximumPayoutPercentage", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "percentItemType" }, "gdyn_MergerAgreementMember": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "MergerAgreementMember", "terseLabel": "Merger Agreement [Member]" } } }, "localname": "MergerAgreementMember", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/BackgroundandnatureofoperationsDetails" ], "xbrltype": "domainItemType" }, "gdyn_MergerConsideration": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of merger consideration.", "label": "MergerConsideration", "terseLabel": "Closing merger consideration" } } }, "localname": "MergerConsideration", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofconsiderationforbusinesscombinationTable" ], "xbrltype": "monetaryItemType" }, "gdyn_NSOMember": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "NSOMember", "terseLabel": "NSO [Member]" } } }, "localname": "NSOMember", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "domainItemType" }, "gdyn_NetIncome": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Net income.", "label": "NetIncome", "terseLabel": "Net income" } } }, "localname": "NetIncome", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/AcquisitionofTacitKnowledgeIncDetails" ], "xbrltype": "monetaryItemType" }, "gdyn_NetLossPerShareAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "NetLossPerShareAbstract", "terseLabel": "Net loss per share" } } }, "localname": "NetLossPerShareAbstract", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofcomputationofbasicanddilutedearningspershareTable" ], "xbrltype": "stringItemType" }, "gdyn_NumberOfCompanies": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Number of companies.", "label": "NumberOfCompanies", "terseLabel": "Number of companies" } } }, "localname": "NumberOfCompanies", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/BusinesscombinationDetails" ], "xbrltype": "integerItemType" }, "gdyn_NumberOfCustomers": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Number of customers.", "label": "NumberOfCustomers", "terseLabel": "Number of customers" } } }, "localname": "NumberOfCustomers", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/BasisofpresentationandsummaryofsignificantaccountingpoliciesDetails" ], "xbrltype": "integerItemType" }, "gdyn_NumberOfSharesForfeited": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "NumberOfSharesForfeited", "terseLabel": "Number of shares forfeited (in Shares)" } } }, "localname": "NumberOfSharesForfeited", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "sharesItemType" }, "gdyn_NumeratorForBasicAndDilutedLossPerShareAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "NumeratorForBasicAndDilutedLossPerShareAbstract", "terseLabel": "Numerator for basic and diluted loss per share" } } }, "localname": "NumeratorForBasicAndDilutedLossPerShareAbstract", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofcomputationofbasicanddilutedearningspershareTable" ], "xbrltype": "stringItemType" }, "gdyn_OfferedShares": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Shares offered.", "label": "OfferedShares", "terseLabel": "Shares offered" } } }, "localname": "OfferedShares", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/SubsequenteventsDetails" ], "xbrltype": "sharesItemType" }, "gdyn_OfferingExpenses": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Offering Expenses.", "label": "OfferingExpenses", "terseLabel": "Offering Expenses (in Dollars)" } } }, "localname": "OfferingExpenses", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/SubsequenteventsDetails" ], "xbrltype": "monetaryItemType" }, "gdyn_OptionsExercisedPrice": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "OptionsExercisedPrice", "terseLabel": "Options exercised, Price" } } }, "localname": "OptionsExercisedPrice", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofdividendyieldassumptionforallblackscholesstockoptionpricingTable" ], "xbrltype": "perShareItemType" }, "gdyn_OptionsForfeitedShares": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Options forfeited, Shares.", "label": "OptionsForfeitedShares", "negatedLabel": "Options forfeited, Shares" } } }, "localname": "OptionsForfeitedShares", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofdividendyieldassumptionforallblackscholesstockoptionpricingTable" ], "xbrltype": "sharesItemType" }, "gdyn_OptionsGranted": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Number of options granted.", "label": "OptionsGranted", "terseLabel": "Options granted" } } }, "localname": "OptionsGranted", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "monetaryItemType" }, "gdyn_OptionsOutstandingExercised": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "OptionsOutstandingExercised", "negatedLabel": "Options outstanding, Exercised in 2020" } } }, "localname": "OptionsOutstandingExercised", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofconversionofthevestedandunvestedoptionsTable" ], "xbrltype": "sharesItemType" }, "gdyn_OptionsOutstandingPlanBalanceEnding": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "OptionsOutstandingPlanBalanceEnding", "terseLabel": "Options Outstanding 2018 Plan balance ending" } } }, "localname": "OptionsOutstandingPlanBalanceEnding", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofconversionofthevestedandunvestedoptionsTable" ], "xbrltype": "sharesItemType" }, "gdyn_OptionsOutstandingTerm": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "OptionsOutstandingTerm", "terseLabel": "Options outstanding, Term" } } }, "localname": "OptionsOutstandingTerm", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofdividendyieldassumptionforallblackscholesstockoptionpricingTable" ], "xbrltype": "durationItemType" }, "gdyn_PaymentOfFinancingAndStockIssuanceCost": { "auth_ref": [], "calculation": { "http://www.gdyn.com/role/ConsolidatedCashFlow": { "order": 2.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The total of the cash outflow during the period which has been paid to third parties in connection with debt origination, which will be amortized over the remaining maturity period of the associated long-term debt and the cost incurred directly for the issuance of equity securities.", "label": "PaymentOfFinancingAndStockIssuanceCost", "terseLabel": "Equity issuance costs" } } }, "localname": "PaymentOfFinancingAndStockIssuanceCost", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ConsolidatedCashFlow" ], "xbrltype": "monetaryItemType" }, "gdyn_PercentageOfMaximumPayout": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Percentage of maximum payout.", "label": "PercentageOfMaximumPayout", "terseLabel": "Percentage of maximum payout" } } }, "localname": "PercentageOfMaximumPayout", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "percentItemType" }, "gdyn_PerformanceShareUnits": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "It represent performance share units as probable and the payout percentage.", "label": "PerformanceShareUnits", "terseLabel": "Performance Share Units" } } }, "localname": "PerformanceShareUnits", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "percentItemType" }, "gdyn_PerformanceStockUnits": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Number of performance stock units.", "label": "PerformanceStockUnits", "terseLabel": "Performance stock units" } } }, "localname": "PerformanceStockUnits", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofdilutednetincomelosspershareattributabletocommonstockholdersTable" ], "xbrltype": "sharesItemType" }, "gdyn_PostClosingShareAdjustment": { "auth_ref": [], "calculation": { "http://www.gdyn.com/role/ScheduleofconsiderationforbusinesscombinationTable": { "order": 2.0, "parentTag": "gdyn_TotalSharesTransferred", "weight": -1.0 } }, "lang": { "en-us": { "role": { "documentation": "Number of Post-Closing share adjustment.", "label": "PostClosingShareAdjustment", "negatedLabel": "Less: Post-Closing share adjustment" } } }, "localname": "PostClosingShareAdjustment", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofconsiderationforbusinesscombinationTable" ], "xbrltype": "sharesItemType" }, "gdyn_PricePerWarrant": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Price Per Warrant.", "label": "PricePerWarrant", "terseLabel": "Warrant per share price (in Dollars per share)" } } }, "localname": "PricePerWarrant", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/SubsequenteventsDetails" ], "xbrltype": "perShareItemType" }, "gdyn_PrivatePlacementWarrants": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Private placement warrants.", "label": "PrivatePlacementWarrants", "terseLabel": "Private placement warrants" } } }, "localname": "PrivatePlacementWarrants", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockholdersequityDetails" ], "xbrltype": "sharesItemType" }, "gdyn_ProceedsFromTrust": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Proceeds from trust.", "label": "ProceedsFromTrust", "terseLabel": "Cash proceeds from trust account (in Dollars)" } } }, "localname": "ProceedsFromTrust", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/BasisofpresentationandsummaryofsignificantaccountingpoliciesDetails" ], "xbrltype": "monetaryItemType" }, "gdyn_ProfitsExceedingPounds": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Profits exceeding pounds.", "label": "ProfitsExceedingPounds", "terseLabel": "Profits exceeding pounds" } } }, "localname": "ProfitsExceedingPounds", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/IncometaxesDetails" ], "xbrltype": "sharesItemType" }, "gdyn_RecapitalizedNetOfTransactionCosts": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "label": "RecapitalizedNetOfTransactionCosts", "terseLabel": "Recapitalized, net of transaction costs" } } }, "localname": "RecapitalizedNetOfTransactionCosts", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ShareholdersEquityType2or3_Parentheticals" ], "xbrltype": "monetaryItemType" }, "gdyn_RecentlyIssuedAccountingPronouncementTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The disclosure of accounting policies for recently issued accounting pronouncements.", "label": "RecentlyIssuedAccountingPronouncementTableTextBlock", "terseLabel": "Recently issued accounting pronouncements" } } }, "localname": "RecentlyIssuedAccountingPronouncementTableTextBlock", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/AccountingPoliciesByPolicy" ], "xbrltype": "textBlockItemType" }, "gdyn_ReductionOfProceedsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "ReductionOfProceedsMember", "terseLabel": "Reduction of Proceeds [Member]" } } }, "localname": "ReductionOfProceedsMember", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/BusinesscombinationDetails" ], "xbrltype": "domainItemType" }, "gdyn_RemainingPerformanceObligationPolicyTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for remaining performance obligation.", "label": "RemainingPerformanceObligationPolicyTextBlock", "terseLabel": "Remaining performance obligation" } } }, "localname": "RemainingPerformanceObligationPolicyTextBlock", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/AccountingPoliciesByPolicy" ], "xbrltype": "textBlockItemType" }, "gdyn_RestrictedStockUnitsUnvested": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Restricted stock units unvested.", "label": "RestrictedStockUnitsUnvested", "terseLabel": "Restricted stock units unvested" } } }, "localname": "RestrictedStockUnitsUnvested", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "monetaryItemType" }, "gdyn_RetroactiveApplicationOfRecapitalization": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Retroactive application of recapitalization.", "label": "RetroactiveApplicationOfRecapitalization", "terseLabel": "Retroactive application of recapitalization (Note 3)" } } }, "localname": "RetroactiveApplicationOfRecapitalization", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ShareholdersEquityType2or3" ], "xbrltype": "monetaryItemType" }, "gdyn_RetroactiveApplicationOfRecapitalizationinShares": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Retroactive application of recapitalization (in Shares).", "label": "RetroactiveApplicationOfRecapitalizationinShares", "terseLabel": "Retroactive application of recapitalization (Note 3) (in Shares)" } } }, "localname": "RetroactiveApplicationOfRecapitalizationinShares", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ShareholdersEquityType2or3" ], "xbrltype": "sharesItemType" }, "gdyn_Revenue": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of revenue recognized from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading gain (loss).", "label": "Revenue", "terseLabel": "Revenue" } } }, "localname": "Revenue", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofbusinessacquisitionproformainformationTable" ], "xbrltype": "monetaryItemType" }, "gdyn_SalesCustomerMember": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "SalesCustomerMember", "terseLabel": "Sales [Member]" } } }, "localname": "SalesCustomerMember", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/BasisofpresentationandsummaryofsignificantaccountingpoliciesDetails" ], "xbrltype": "domainItemType" }, "gdyn_ScheduleOfAccountsReceivableAndAllowanceForDoubtfulAccountsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Schedule of accounts receivable and allowance for doubtful accounts [Abstract]" } } }, "localname": "ScheduleOfAccountsReceivableAndAllowanceForDoubtfulAccountsAbstract", "nsuri": "http://www.gdyn.com/20210630", "xbrltype": "stringItemType" }, "gdyn_ScheduleOfBoardOfDirectorsApprovedAnEquityIncentivePlanAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Schedule of board of directors approved an equity incentive plan [Abstract]" } } }, "localname": "ScheduleOfBoardOfDirectorsApprovedAnEquityIncentivePlanAbstract", "nsuri": "http://www.gdyn.com/20210630", "xbrltype": "stringItemType" }, "gdyn_ScheduleOfBoardOfDirectorsApprovedAnEquityIncentivePlanTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "ScheduleOfBoardOfDirectorsApprovedAnEquityIncentivePlanTableTextBlock", "terseLabel": "Schedule of board of directors approved an equity incentive plan" } } }, "localname": "ScheduleOfBoardOfDirectorsApprovedAnEquityIncentivePlanTableTextBlock", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationTables" ], "xbrltype": "textBlockItemType" }, "gdyn_ScheduleOfBusinessAcquisitionProFormaInformationAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Schedule of business acquisition pro forma information [Abstract]" } } }, "localname": "ScheduleOfBusinessAcquisitionProFormaInformationAbstract", "nsuri": "http://www.gdyn.com/20210630", "xbrltype": "stringItemType" }, "gdyn_ScheduleOfComputationOfBasicAndDilutedEarningsPerShareAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Schedule of computation of basic and diluted earnings per share [Abstract]" } } }, "localname": "ScheduleOfComputationOfBasicAndDilutedEarningsPerShareAbstract", "nsuri": "http://www.gdyn.com/20210630", "xbrltype": "stringItemType" }, "gdyn_ScheduleOfConsiderationForBusinessCombinationAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Schedule of consideration for business combination [Abstract]" } } }, "localname": "ScheduleOfConsiderationForBusinessCombinationAbstract", "nsuri": "http://www.gdyn.com/20210630", "xbrltype": "stringItemType" }, "gdyn_ScheduleOfConsiderationForBusinessCombinationTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of consideration for business combination.", "label": "ScheduleOfConsiderationForBusinessCombinationTableTextBlock", "terseLabel": "Schedule of consideration for business combination" } } }, "localname": "ScheduleOfConsiderationForBusinessCombinationTableTextBlock", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/BusinesscombinationTables" ], "xbrltype": "textBlockItemType" }, "gdyn_ScheduleOfConversionOfTheVestedAndUnvestedOptionsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Schedule of conversion of the vested and unvested options [Abstract]" } } }, "localname": "ScheduleOfConversionOfTheVestedAndUnvestedOptionsAbstract", "nsuri": "http://www.gdyn.com/20210630", "xbrltype": "stringItemType" }, "gdyn_ScheduleOfConversionOfTheVestedAndUnvestedTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Schedule of conversion of the vested and unvested.", "label": "ScheduleOfConversionOfTheVestedAndUnvestedTableTextBlock", "terseLabel": "Schedule of conversion of the vested and unvested options" } } }, "localname": "ScheduleOfConversionOfTheVestedAndUnvestedTableTextBlock", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationTables" ], "xbrltype": "textBlockItemType" }, "gdyn_ScheduleOfDilutedNetIncomeLossPerShareAttributableToCommonStockholdersAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Schedule of diluted net income/(loss) per share attributable to common stockholders [Abstract]" } } }, "localname": "ScheduleOfDilutedNetIncomeLossPerShareAttributableToCommonStockholdersAbstract", "nsuri": "http://www.gdyn.com/20210630", "xbrltype": "stringItemType" }, "gdyn_ScheduleOfDilutedNetLossPerShareAttributableToCommonStockholdersTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Schedule of diluted net loss per share attributable to common stockholders.", "label": "ScheduleOfDilutedNetLossPerShareAttributableToCommonStockholdersTableTextBlock", "terseLabel": "Schedule of diluted net income/(loss) per share attributable to common stockholders" } } }, "localname": "ScheduleOfDilutedNetLossPerShareAttributableToCommonStockholdersTableTextBlock", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/EarningspershareTables" ], "xbrltype": "textBlockItemType" }, "gdyn_ScheduleOfDividendYieldAssumptionForAllBlackScholesStockOptionPricingAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Schedule of dividend yield assumption for all black-scholes stock option-pricing [Abstract]" } } }, "localname": "ScheduleOfDividendYieldAssumptionForAllBlackScholesStockOptionPricingAbstract", "nsuri": "http://www.gdyn.com/20210630", "xbrltype": "stringItemType" }, "gdyn_ScheduleOfEmployeeStockBasedCompensationRecognizedAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Schedule of employee stock-based compensation recognized [Abstract]" } } }, "localname": "ScheduleOfEmployeeStockBasedCompensationRecognizedAbstract", "nsuri": "http://www.gdyn.com/20210630", "xbrltype": "stringItemType" }, "gdyn_ScheduleOfEmployeesTaxObligationsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Schedule of employees\u2019 tax obligations [Abstract]" } } }, "localname": "ScheduleOfEmployeesTaxObligationsAbstract", "nsuri": "http://www.gdyn.com/20210630", "xbrltype": "stringItemType" }, "gdyn_ScheduleOfEstimatedFairValuesOfTheAssetsAcquiredAndLiabilitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Schedule of estimated fair values of the assets acquired and liabilities [Abstract]" } } }, "localname": "ScheduleOfEstimatedFairValuesOfTheAssetsAcquiredAndLiabilitiesAbstract", "nsuri": "http://www.gdyn.com/20210630", "xbrltype": "stringItemType" }, "gdyn_ScheduleOfEstimatedGrantUsingTheBlackScholesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Schedule of estimated grant using the black-scholes [Abstract]" } } }, "localname": "ScheduleOfEstimatedGrantUsingTheBlackScholesAbstract", "nsuri": "http://www.gdyn.com/20210630", "xbrltype": "stringItemType" }, "gdyn_ScheduleOfFairValueOfIdentifiableIntangibleAssetsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Schedule of fair value of identifiable intangible assets [Abstract]" } } }, "localname": "ScheduleOfFairValueOfIdentifiableIntangibleAssetsAbstract", "nsuri": "http://www.gdyn.com/20210630", "xbrltype": "stringItemType" }, "gdyn_ScheduleOfFiniteLivedIntrangibleAssetsTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "ScheduleOfFiniteLivedIntrangibleAssetsTableTextBlock", "terseLabel": "Schedule of fair value of identifiable intangible assets" } } }, "localname": "ScheduleOfFiniteLivedIntrangibleAssetsTableTextBlock", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/AcquisitionofTacitKnowledgeIncTables" ], "xbrltype": "textBlockItemType" }, "gdyn_ScheduleOfIntangibleAssetsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Schedule of Intangible assets [Abstract]" } } }, "localname": "ScheduleOfIntangibleAssetsAbstract", "nsuri": "http://www.gdyn.com/20210630", "xbrltype": "stringItemType" }, "gdyn_ScheduleOfOtherCurrentLiabilitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Schedule of other current liabilities [Abstract]" } } }, "localname": "ScheduleOfOtherCurrentLiabilitiesAbstract", "nsuri": "http://www.gdyn.com/20210630", "xbrltype": "stringItemType" }, "gdyn_ScheduleOfPropertyAndEquipmentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Schedule of property and equipment [Abstract]" } } }, "localname": "ScheduleOfPropertyAndEquipmentAbstract", "nsuri": "http://www.gdyn.com/20210630", "xbrltype": "stringItemType" }, "gdyn_ShareBasedArrangementOptionsOutstandingTerm": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "ShareBasedArrangementOptionsOutstandingTerm", "terseLabel": "Options outstanding, Term" } } }, "localname": "ShareBasedArrangementOptionsOutstandingTerm", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofdividendyieldassumptionforallblackscholesstockoptionpricingTable" ], "xbrltype": "durationItemType" }, "gdyn_ShareBasedArrangementofOptionsOutstandingShares": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "ShareBasedArrangementofOptionsOutstandingShares", "periodEndLabel": "Options outstanding, Shares", "periodStartLabel": "Options outstanding, Shares" } } }, "localname": "ShareBasedArrangementofOptionsOutstandingShares", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofdividendyieldassumptionforallblackscholesstockoptionpricingTable" ], "xbrltype": "sharesItemType" }, "gdyn_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeitedPrice": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeitedPrice", "terseLabel": "Options forfeited, Price" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeitedPrice", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofdividendyieldassumptionforallblackscholesstockoptionpricingTable" ], "xbrltype": "perShareItemType" }, "gdyn_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantedPrice": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantedPrice", "terseLabel": "Options granted, Price" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantedPrice", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofdividendyieldassumptionforallblackscholesstockoptionpricingTable" ], "xbrltype": "perShareItemType" }, "gdyn_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOptionsExercisedShares": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOptionsExercisedShares", "negatedLabel": "Options exercised, Shares" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOptionsExercisedShares", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofdividendyieldassumptionforallblackscholesstockoptionpricingTable" ], "xbrltype": "sharesItemType" }, "gdyn_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsUnvested": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Unvested.", "label": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsUnvested", "terseLabel": "Unvested options outstanding (in Shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsUnvested", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "sharesItemType" }, "gdyn_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedOutstandingNumber": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested.", "label": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedOutstandingNumber", "terseLabel": "Vested options outstanding (in Shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedOutstandingNumber", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "sharesItemType" }, "gdyn_ShareBasedCompensationExpenseEngineeringResearchAndDevelopment": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Engineering, research, and development.", "label": "ShareBasedCompensationExpenseEngineeringResearchAndDevelopment", "terseLabel": "Engineering, research, and development" } } }, "localname": "ShareBasedCompensationExpenseEngineeringResearchAndDevelopment", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofemployeestockbasedcompensationrecognizedTable" ], "xbrltype": "monetaryItemType" }, "gdyn_ShareBasedCompensationExpenseGeneralAndAdministrative": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "General and administrative.", "label": "ShareBasedCompensationExpenseGeneralAndAdministrative", "terseLabel": "General and administrative" } } }, "localname": "ShareBasedCompensationExpenseGeneralAndAdministrative", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofemployeestockbasedcompensationrecognizedTable" ], "xbrltype": "monetaryItemType" }, "gdyn_ShareBasedCompensationExpenseSalesAndMarketing": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Sales and marketing.", "label": "ShareBasedCompensationExpenseSalesAndMarketing", "terseLabel": "Sales and marketing" } } }, "localname": "ShareBasedCompensationExpenseSalesAndMarketing", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofemployeestockbasedcompensationrecognizedTable" ], "xbrltype": "monetaryItemType" }, "gdyn_SharebasedArrangementofOptionsOutstandingPriceinDollarsPerShare": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "SharebasedArrangementofOptionsOutstandingPriceinDollarsPerShare", "periodEndLabel": "Options outstanding, Price", "periodStartLabel": "Options outstanding, Price" } } }, "localname": "SharebasedArrangementofOptionsOutstandingPriceinDollarsPerShare", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofdividendyieldassumptionforallblackscholesstockoptionpricingTable" ], "xbrltype": "perShareItemType" }, "gdyn_SharebasedCompensationArrangementBySharebasedPaymenCashOutOptionsOutstanding": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "SharebasedCompensationArrangementBySharebasedPaymenCashOutOptionsOutstanding", "terseLabel": "Options outstanding, Cashed out" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymenCashOutOptionsOutstanding", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofconversionofthevestedandunvestedoptionsTable" ], "xbrltype": "sharesItemType" }, "gdyn_SharebasedPaymentArrangementOptionActivityEmployeesTaxObligationsTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "SharebasedPaymentArrangementOptionActivityEmployeesTaxObligationsTableTextBlock", "terseLabel": "Schedule of employees\u2019 tax obligations" } } }, "localname": "SharebasedPaymentArrangementOptionActivityEmployeesTaxObligationsTableTextBlock", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationTables" ], "xbrltype": "textBlockItemType" }, "gdyn_SharesBasedOptionsOutstandingExercisedInQuarterEnded": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "SharesBasedOptionsOutstandingExercisedInQuarterEnded", "terseLabel": "Options outstanding, Exercised in quarter ended March 31, 2021" } } }, "localname": "SharesBasedOptionsOutstandingExercisedInQuarterEnded", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofconversionofthevestedandunvestedoptionsTable" ], "xbrltype": "sharesItemType" }, "gdyn_SharesGrantsVestedAndOutstanding": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Shares grants vested and outstanding.", "label": "SharesGrantsVestedAndOutstanding", "terseLabel": "Shares grants vested and outstanding (in Shares)" } } }, "localname": "SharesGrantsVestedAndOutstanding", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "sharesItemType" }, "gdyn_SharesIssuedOnConversionOfAWorkingCapital": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Number of shares issued on conversion of a working capital.", "label": "SharesIssuedOnConversionOfAWorkingCapital", "terseLabel": "Shares issued on conversion of a working capital" } } }, "localname": "SharesIssuedOnConversionOfAWorkingCapital", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockholdersequityDetails" ], "xbrltype": "sharesItemType" }, "gdyn_SharesRedeemedForCash": { "auth_ref": [], "calculation": { "http://www.gdyn.com/role/ConsolidatedCashFlow": { "order": 4.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Payment for redemption of shares.", "label": "SharesRedeemedForCash", "negatedLabel": "GDI shares redeemed for cash" } } }, "localname": "SharesRedeemedForCash", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ConsolidatedCashFlow" ], "xbrltype": "monetaryItemType" }, "gdyn_SharesTransferred": { "auth_ref": [], "calculation": { "http://www.gdyn.com/role/ScheduleofconsiderationforbusinesscombinationTable": { "order": 1.0, "parentTag": "gdyn_TotalSharesTransferred", "weight": 1.0 } }, "lang": { "en-us": { "role": { "documentation": "Number of shares transferred.", "label": "SharesTransferred", "terseLabel": "Shares transferred at Closing" } } }, "localname": "SharesTransferred", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofconsiderationforbusinesscombinationTable" ], "xbrltype": "sharesItemType" }, "gdyn_SharesWithheldExercisePrice": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Shares withheld exercise price.", "label": "SharesWithheldExercisePrice", "terseLabel": "Shares withheld exercise price (in Shares)" } } }, "localname": "SharesWithheldExercisePrice", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "sharesItemType" }, "gdyn_SharesWithholdToCover": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "SharesWithholdToCover", "terseLabel": "Shares withhold to cover (in Shares)" } } }, "localname": "SharesWithholdToCover", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "sharesItemType" }, "gdyn_SoftwareMember": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "SoftwareMember", "terseLabel": "Software [Member]" } } }, "localname": "SoftwareMember", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofpropertyandequipmentTable" ], "xbrltype": "domainItemType" }, "gdyn_StockBasedCompensationExpenseDescription": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "StockBasedCompensationExpenseDescription", "terseLabel": "Stock based compensation, description" } } }, "localname": "StockBasedCompensationExpenseDescription", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "stringItemType" }, "gdyn_StockIssuanceDuringPeriodValueConversionOfWarrants": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Conversion of warrants.", "label": "StockIssuanceDuringPeriodValueConversionOfWarrants", "terseLabel": "Exchange of warrants into common stock" } } }, "localname": "StockIssuanceDuringPeriodValueConversionOfWarrants", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ShareholdersEquityType2or3" ], "xbrltype": "monetaryItemType" }, "gdyn_StockIssuedDuringPeriodConversionOfWarrantsinShares": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The nomber of shares of conversion of warrants.", "label": "StockIssuedDuringPeriodConversionOfWarrantsinShares", "terseLabel": "Exchange of warrants into common stock (in Shares)" } } }, "localname": "StockIssuedDuringPeriodConversionOfWarrantsinShares", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ShareholdersEquityType2or3" ], "xbrltype": "sharesItemType" }, "gdyn_StockIssuedDuringPeriodShareStockOptionsExercised": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Stock issued during period share stock options exercised.", "label": "StockIssuedDuringPeriodShareStockOptionsExercised", "terseLabel": "Shares exercised (in Shares)" } } }, "localname": "StockIssuedDuringPeriodShareStockOptionsExercised", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "sharesItemType" }, "gdyn_StockOptionsToPurchaseCommonStock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Stock options to purchase common stock.", "label": "StockOptionsToPurchaseCommonStock", "terseLabel": "Stock options to purchase common stock" } } }, "localname": "StockOptionsToPurchaseCommonStock", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofdilutednetincomelosspershareattributabletocommonstockholdersTable" ], "xbrltype": "sharesItemType" }, "gdyn_StockbasedCompensationExpenseRelated": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Stock-based compensation expense related.", "label": "StockbasedCompensationExpenseRelated", "terseLabel": "Stock-based compensation expense related" } } }, "localname": "StockbasedCompensationExpenseRelated", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "monetaryItemType" }, "gdyn_StockbasedcompensationDetailsLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Stock-based compensation (Details) [Line Items]" } } }, "localname": "StockbasedcompensationDetailsLineItems", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "stringItemType" }, "gdyn_StockbasedcompensationDetailsTable": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Stock-based compensation (Details) [Table]" } } }, "localname": "StockbasedcompensationDetailsTable", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "stringItemType" }, "gdyn_StockholdersequityDetailsLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Stockholders' equity (Details) [Line Items]" } } }, "localname": "StockholdersequityDetailsLineItems", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockholdersequityDetails" ], "xbrltype": "stringItemType" }, "gdyn_StockholdersequityDetailsTable": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Stockholders' equity (Details) [Table]" } } }, "localname": "StockholdersequityDetailsTable", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockholdersequityDetails" ], "xbrltype": "stringItemType" }, "gdyn_StraightlineBasisOverTerm": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "StraightlineBasisOverTerm", "terseLabel": "Straight-line basis over term" } } }, "localname": "StraightlineBasisOverTerm", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "durationItemType" }, "gdyn_SubsequenteventsDetailsLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Subsequent events (Details) [Line Items]" } } }, "localname": "SubsequenteventsDetailsLineItems", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/SubsequenteventsDetails" ], "xbrltype": "stringItemType" }, "gdyn_SubsequenteventsDetailsTable": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Subsequent events (Details) [Table]" } } }, "localname": "SubsequenteventsDetailsTable", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/SubsequenteventsDetails" ], "xbrltype": "stringItemType" }, "gdyn_TacitKnowledgeIncMember": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "TacitKnowledgeIncMember", "terseLabel": "Tacit Knowledge Inc [Member]" } } }, "localname": "TacitKnowledgeIncMember", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofbusinessacquisitionproformainformationTable" ], "xbrltype": "domainItemType" }, "gdyn_TacitRevenue": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of revenue recognized from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading gain (loss).", "label": "TacitRevenue", "terseLabel": "Revenue" } } }, "localname": "TacitRevenue", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/AcquisitionofTacitKnowledgeIncDetails" ], "xbrltype": "monetaryItemType" }, "gdyn_TacitTradeNameMember": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "TacitTradeNameMember", "terseLabel": "Tacit trade name [Member]" } } }, "localname": "TacitTradeNameMember", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleoffairvalueofidentifiableintangibleassetsTable" ], "xbrltype": "domainItemType" }, "gdyn_TangiblePropertyAndEquipmentNet": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.", "label": "TangiblePropertyAndEquipmentNet", "terseLabel": "Tangible property and equipment, net" } } }, "localname": "TangiblePropertyAndEquipmentNet", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofpropertyandequipmentTable" ], "xbrltype": "monetaryItemType" }, "gdyn_TaxObligations": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "label": "TaxObligations", "terseLabel": "Tax obligations" } } }, "localname": "TaxObligations", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "monetaryItemType" }, "gdyn_TotalOutstandingShares": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "TotalOutstandingShares", "terseLabel": "Total outstanding shares (in Shares)" } } }, "localname": "TotalOutstandingShares", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "sharesItemType" }, "gdyn_TotalPotentialCommonShares": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Total potential common stock.", "label": "TotalPotentialCommonShares", "terseLabel": "Total" } } }, "localname": "TotalPotentialCommonShares", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofdilutednetincomelosspershareattributabletocommonstockholdersTable" ], "xbrltype": "sharesItemType" }, "gdyn_TotalSharesTransferred": { "auth_ref": [], "calculation": { "http://www.gdyn.com/role/ScheduleofconsiderationforbusinesscombinationTable": { "order": null, "parentTag": null, "root": true, "weight": null } }, "lang": { "en-us": { "role": { "documentation": "Total number of shares transferred.", "label": "TotalSharesTransferred", "totalLabel": "Total shares transferred at Closing" } } }, "localname": "TotalSharesTransferred", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofconsiderationforbusinesscombinationTable" ], "xbrltype": "sharesItemType" }, "gdyn_TotalUnrecognizedCompensationExpenses": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "label": "TotalUnrecognizedCompensationExpenses", "terseLabel": "Total unrecognized compensation expenses" } } }, "localname": "TotalUnrecognizedCompensationExpenses", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "monetaryItemType" }, "gdyn_TwoThousandEighteenStockPlanMember": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "TwoThousandEighteenStockPlanMember", "terseLabel": "2018 Stock Plan [Member]" } } }, "localname": "TwoThousandEighteenStockPlanMember", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "domainItemType" }, "gdyn_TwoThousandTwentyPlanMember": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "TwoThousandTwentyPlanMember", "terseLabel": "2020 Equity Incentive Plan [Member]", "verboseLabel": "2020 Plan [Member]" } } }, "localname": "TwoThousandTwentyPlanMember", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "domainItemType" }, "gdyn_UnauditedInterimFinancialStatementsPolicyTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "UnauditedInterimFinancialStatementsPolicyTextBlock", "terseLabel": "Unaudited Interim Financial Statements" } } }, "localname": "UnauditedInterimFinancialStatementsPolicyTextBlock", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/AccountingPoliciesByPolicy" ], "xbrltype": "textBlockItemType" }, "gdyn_UnbilledReceivableCurrent": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount received for service rendered and products shipped, but not yet billed, for non-contractual agreements due within one year or the normal operating cycle, if longer.", "label": "UnbilledReceivableCurrent", "terseLabel": "Unbilled receivables (in Dollars)" } } }, "localname": "UnbilledReceivableCurrent", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/BasisofpresentationandsummaryofsignificantaccountingpoliciesDetails" ], "xbrltype": "monetaryItemType" }, "gdyn_UnbilledReceivablesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "UnbilledReceivablesMember", "terseLabel": "Unbilled Receivables [Member]" } } }, "localname": "UnbilledReceivablesMember", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/BasisofpresentationandsummaryofsignificantaccountingpoliciesDetails" ], "xbrltype": "domainItemType" }, "gdyn_UnbilledReceivablesPolicyTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Unbilled Receivables [Policy Text Block].", "label": "UnbilledReceivablesPolicyTextBlock", "terseLabel": "Unbilled receivables" } } }, "localname": "UnbilledReceivablesPolicyTextBlock", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/AccountingPoliciesByPolicy" ], "xbrltype": "textBlockItemType" }, "gdyn_UnrecognizedCompensationExpenses": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Unrecognized compensation expenses.", "label": "UnrecognizedCompensationExpenses", "terseLabel": "Unrecognized compensation expenses" } } }, "localname": "UnrecognizedCompensationExpenses", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "monetaryItemType" }, "gdyn_UnrecognizedStockbasedCompensationExpense": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The amount of unrecognized stock-based compensation expense.", "label": "UnrecognizedStockbasedCompensationExpense", "terseLabel": "Unrecognized stock-based compensation expense" } } }, "localname": "UnrecognizedStockbasedCompensationExpense", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "monetaryItemType" }, "gdyn_ValuePerShareTransfered": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Value per share.", "label": "ValuePerShareTransfered", "terseLabel": "Value per share" } } }, "localname": "ValuePerShareTransfered", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofconsiderationforbusinesscombinationTable" ], "xbrltype": "perShareItemType" }, "gdyn_VotingRightsDescription": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Description of voting rights.", "label": "VotingRightsDescription", "terseLabel": "Voting rights description" } } }, "localname": "VotingRightsDescription", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockholdersequityDetails" ], "xbrltype": "stringItemType" }, "gdyn_WarrantPricePerShare": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Warrant price per share.", "label": "WarrantPricePerShare", "terseLabel": "Warrant price per share (in Dollars per share)" } } }, "localname": "WarrantPricePerShare", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockholdersequityDetails" ], "xbrltype": "perShareItemType" }, "gdyn_WarrantsOutstandingShares": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Warrants outstanding shares.", "label": "WarrantsOutstandingShares", "terseLabel": "Warrants outstanding shares" } } }, "localname": "WarrantsOutstandingShares", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/StockholdersequityDetails" ], "xbrltype": "sharesItemType" }, "gdyn_WarrantsToPurchaseCommonStock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Warrants to purchase common stock.", "label": "WarrantsToPurchaseCommonStock", "terseLabel": "Warrants to purchase common stock" } } }, "localname": "WarrantsToPurchaseCommonStock", "nsuri": "http://www.gdyn.com/20210630", "presentation": [ "http://www.gdyn.com/role/ScheduleofdilutednetincomelosspershareattributabletocommonstockholdersTable" ], "xbrltype": "sharesItemType" }, "srt_AffiliatedEntityMember": { "auth_ref": [ "r225", "r335", "r336", "r337", "r403" ], "lang": { "en-us": { "role": { "label": "Affiliated Entity [Member]", "terseLabel": "Affiliated Entity [Member]" } } }, "localname": "AffiliatedEntityMember", "nsuri": "http://fasb.org/srt/2021-01-31", "presentation": [ "http://www.gdyn.com/role/StockholdersequityDetails" ], "xbrltype": "domainItemType" }, "srt_MaximumMember": { "auth_ref": [ "r201", "r206", "r227", "r229", "r344", "r345", "r346", "r347", "r348", "r349", "r350", "r390", "r391", "r404", "r405" ], "lang": { "en-us": { "role": { "label": "Maximum [Member]", "terseLabel": "Maximum [Member]" } } }, "localname": "MaximumMember", "nsuri": "http://fasb.org/srt/2021-01-31", "presentation": [ "http://www.gdyn.com/role/BasisofpresentationandsummaryofsignificantaccountingpoliciesDetails", "http://www.gdyn.com/role/ScheduleofIntangibleassetsTable", "http://www.gdyn.com/role/ScheduleofpropertyandequipmentTable", "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "domainItemType" }, "srt_MinimumMember": { "auth_ref": [ "r201", "r206", "r227", "r229", "r344", "r345", "r346", "r347", "r348", "r349", "r350", "r390", "r391", "r404", "r405" ], "lang": { "en-us": { "role": { "label": "Minimum [Member]", "terseLabel": "Minimum [Member]" } } }, "localname": "MinimumMember", "nsuri": "http://fasb.org/srt/2021-01-31", "presentation": [ "http://www.gdyn.com/role/BasisofpresentationandsummaryofsignificantaccountingpoliciesDetails", "http://www.gdyn.com/role/ScheduleofIntangibleassetsTable", "http://www.gdyn.com/role/ScheduleofpropertyandequipmentTable", "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "domainItemType" }, "srt_RangeAxis": { "auth_ref": [ "r201", "r206", "r224", "r227", "r229", "r344", "r345", "r346", "r347", "r348", "r349", "r350", "r390", "r391", "r404", "r405" ], "lang": { "en-us": { "role": { "label": "Statistical Measurement [Axis]" } } }, "localname": "RangeAxis", "nsuri": "http://fasb.org/srt/2021-01-31", "presentation": [ "http://www.gdyn.com/role/BasisofpresentationandsummaryofsignificantaccountingpoliciesDetails", "http://www.gdyn.com/role/ScheduleofIntangibleassetsTable", "http://www.gdyn.com/role/ScheduleofpropertyandequipmentTable", "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "stringItemType" }, "srt_RangeMember": { "auth_ref": [ "r201", "r206", "r224", "r227", "r229", "r344", "r345", "r346", "r347", "r348", "r349", "r350", "r390", "r391", "r404", "r405" ], "lang": { "en-us": { "role": { "label": "Statistical Measurement [Domain]" } } }, "localname": "RangeMember", "nsuri": "http://fasb.org/srt/2021-01-31", "presentation": [ "http://www.gdyn.com/role/BasisofpresentationandsummaryofsignificantaccountingpoliciesDetails", "http://www.gdyn.com/role/ScheduleofIntangibleassetsTable", "http://www.gdyn.com/role/ScheduleofpropertyandequipmentTable", "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_AccountingPoliciesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Accounting Policies [Abstract]" } } }, "localname": "AccountingPoliciesAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_AccountsPayableCurrent": { "auth_ref": [ "r32", "r340" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedBalanceSheet": { "order": 1.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Accounts Payable, Current", "terseLabel": "Accounts payable" } } }, "localname": "AccountsPayableCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedBalanceSheet" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccountsReceivableMember": { "auth_ref": [ "r398" ], "lang": { "en-us": { "role": { "documentation": "Due from customers or clients for goods or services that have been delivered or sold.", "label": "Accounts Receivable [Member]", "terseLabel": "Accounts Receivable [Member]" } } }, "localname": "AccountsReceivableMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/BasisofpresentationandsummaryofsignificantaccountingpoliciesDetails" ], "xbrltype": "domainItemType" }, "us-gaap_AccountsReceivableNetCurrent": { "auth_ref": [ "r3", "r18", "r153", "r154" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedBalanceSheet": { "order": 2.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.", "label": "Accounts Receivable, after Allowance for Credit Loss, Current", "terseLabel": "Accounts receivable, net of allowance of $205 and $418 as of June 30, 2021 and December 31, 2020, respectively", "verboseLabel": "Total trade accounts receivable, net" } } }, "localname": "AccountsReceivableNetCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedBalanceSheet", "http://www.gdyn.com/role/ScheduleofaccountsreceivableandallowancefordoubtfulaccountsTable" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccountsReceivableRelatedPartiesCurrent": { "auth_ref": [ "r40", "r93", "r336", "r337" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of receivables arising from transactions with related parties due within one year or the normal operating cycle, if longer.", "label": "Accounts Receivable, Related Parties, Current", "terseLabel": "Trade accounts receivable" } } }, "localname": "AccountsReceivableRelatedPartiesCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofaccountsreceivableandallowancefordoubtfulaccountsTable" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccruedIncomeTaxesCurrent": { "auth_ref": [ "r15", "r370", "r380" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedBalanceSheet": { "order": 4.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Carrying amount as of the balance sheet date of the unpaid sum of the known and estimated amounts payable to satisfy all currently due domestic and foreign income tax obligations.", "label": "Accrued Income Taxes, Current", "terseLabel": "Accrued income taxes" } } }, "localname": "AccruedIncomeTaxesCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedBalanceSheet" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccruedLiabilitiesAndOtherLiabilities": { "auth_ref": [], "calculation": { "http://www.gdyn.com/role/ConsolidatedBalanceSheet": { "order": 2.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of expenses incurred but not yet paid nor invoiced, and liabilities classified as other.", "label": "Accrued Liabilities and Other Liabilities", "terseLabel": "Accrued liabilities" } } }, "localname": "AccruedLiabilitiesAndOtherLiabilities", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedBalanceSheet" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": { "auth_ref": [ "r31", "r181" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services.", "label": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment", "negatedLabel": "Less: Accumulated depreciation and amortization" } } }, "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofpropertyandequipmentTable" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": { "auth_ref": [ "r21", "r45", "r46", "r47", "r381", "r395", "r396" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedBalanceSheet": { "order": 4.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Accumulated change in equity from transactions and other events and circumstances from non-owner sources, net of tax effect, at period end. Excludes Net Income (Loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners. Includes foreign currency translation items, certain pension adjustments, unrealized gains and losses on certain investments in debt and equity securities, other than temporary impairment (OTTI) losses related to factors other than credit losses on available-for-sale and held-to-maturity debt securities that an entity does not intend to sell and it is not more likely than not that the entity will be required to sell before recovery of the amortized cost basis, as well as changes in the fair value of derivatives related to the effective portion of a designated cash flow hedge.", "label": "Accumulated Other Comprehensive Income (Loss), Net of Tax", "terseLabel": "Accumulated other comprehensive income/(loss)" } } }, "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedBalanceSheet" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccumulatedOtherComprehensiveIncomeMember": { "auth_ref": [ "r44", "r47", "r54", "r55", "r56", "r95", "r96", "r97", "r313", "r392", "r393", "r414" ], "lang": { "en-us": { "role": { "documentation": "Accumulated increase (decrease) in equity from transactions and other events and circumstances from non-owner sources, attributable to the parent. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners.", "label": "AOCI Attributable to Parent [Member]", "terseLabel": "Accumulated other comprehensive income/(loss)" } } }, "localname": "AccumulatedOtherComprehensiveIncomeMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ShareholdersEquityType2or3" ], "xbrltype": "domainItemType" }, "us-gaap_AdditionalPaidInCapital": { "auth_ref": [ "r19", "r260", "r340" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedBalanceSheet": { "order": 2.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of excess of issue price over par or stated value of stock and from other transaction involving stock or stockholder. Includes, but is not limited to, additional paid-in capital (APIC) for common and preferred stock.", "label": "Additional Paid in Capital", "terseLabel": "Additional paid-in capital" } } }, "localname": "AdditionalPaidInCapital", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedBalanceSheet" ], "xbrltype": "monetaryItemType" }, "us-gaap_AdditionalPaidInCapitalMember": { "auth_ref": [ "r95", "r96", "r97", "r257", "r258", "r259", "r320" ], "lang": { "en-us": { "role": { "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders.", "label": "Additional Paid-in Capital [Member]", "terseLabel": "Additional paid-in capital" } } }, "localname": "AdditionalPaidInCapitalMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ShareholdersEquityType2or3" ], "xbrltype": "domainItemType" }, "us-gaap_AdjustmentsToAdditionalPaidInCapitalOther": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of other increase (decrease) in additional paid in capital (APIC).", "label": "Adjustments to Additional Paid in Capital, Other", "terseLabel": "Consideration paid to Grid shareholders" } } }, "localname": "AdjustmentsToAdditionalPaidInCapitalOther", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ShareholdersEquityType2or3" ], "xbrltype": "monetaryItemType" }, "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]", "terseLabel": "Adjustments to reconcile net loss to net cash provided by/(used in) operating activities:" } } }, "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedCashFlow" ], "xbrltype": "stringItemType" }, "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": { "auth_ref": [ "r25", "r155", "r160" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current.", "label": "Accounts Receivable, Allowance for Credit Loss, Current", "negatedLabel": "Allowance for doubtful accounts", "terseLabel": "Accounts receivable, net of allowance (in Dollars)" } } }, "localname": "AllowanceForDoubtfulAccountsReceivableCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedBalanceSheet_Parentheticals", "http://www.gdyn.com/role/ScheduleofaccountsreceivableandallowancefordoubtfulaccountsTable" ], "xbrltype": "monetaryItemType" }, "us-gaap_AllowanceForDoubtfulAccountsReceivablePeriodIncreaseDecrease": { "auth_ref": [ "r162" ], "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in allowance for credit loss on accounts receivable.", "label": "Accounts Receivable, Allowance for Credit Loss, Period Increase (Decrease)", "terseLabel": "Decrease allowance for doubtful accounts (in Dollars)" } } }, "localname": "AllowanceForDoubtfulAccountsReceivablePeriodIncreaseDecrease", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/BasisofpresentationandsummaryofsignificantaccountingpoliciesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_Assets": { "auth_ref": [ "r89", "r139", "r142", "r148", "r158", "r190", "r191", "r192", "r193", "r194", "r195", "r196", "r197", "r198", "r199", "r200", "r307", "r316", "r326", "r338", "r340", "r369", "r379" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedBalanceSheet": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.", "label": "Assets", "totalLabel": "Total assets" } } }, "localname": "Assets", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedBalanceSheet" ], "xbrltype": "monetaryItemType" }, "us-gaap_AssetsCurrent": { "auth_ref": [ "r5", "r7", "r42", "r89", "r158", "r190", "r191", "r192", "r193", "r194", "r195", "r196", "r197", "r198", "r199", "r200", "r307", "r316", "r326", "r338", "r340" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedBalanceSheet": { "order": 1.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.", "label": "Assets, Current", "totalLabel": "Total current assets" } } }, "localname": "AssetsCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedBalanceSheet" ], "xbrltype": "monetaryItemType" }, "us-gaap_AssetsCurrentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Assets, Current [Abstract]", "terseLabel": "Current assets" } } }, "localname": "AssetsCurrentAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedBalanceSheet" ], "xbrltype": "stringItemType" }, "us-gaap_AwardTypeAxis": { "auth_ref": [ "r232", "r255" ], "lang": { "en-us": { "role": { "documentation": "Information by type of award under share-based payment arrangement.", "label": "Award Type [Axis]" } } }, "localname": "AwardTypeAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_BasisOfAccountingPolicyPolicyTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for basis of accounting, or basis of presentation, used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS).", "label": "Basis of Accounting, Policy [Policy Text Block]", "terseLabel": "Basis of presentation" } } }, "localname": "BasisOfAccountingPolicyPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/AccountingPoliciesByPolicy" ], "xbrltype": "textBlockItemType" }, "us-gaap_BusinessAcquisitionAcquireeDomain": { "auth_ref": [ "r226", "r228" ], "lang": { "en-us": { "role": { "documentation": "Identification of the acquiree in a material business combination (or series of individually immaterial business combinations), which may include the name or other type of identification of the acquiree.", "label": "Business Acquisition, Acquiree [Domain]" } } }, "localname": "BusinessAcquisitionAcquireeDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/BusinesscombinationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_BusinessAcquisitionAxis": { "auth_ref": [ "r226", "r228", "r295", "r296" ], "lang": { "en-us": { "role": { "documentation": "Information by business combination or series of individually immaterial business combinations.", "label": "Business Acquisition [Axis]" } } }, "localname": "BusinessAcquisitionAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/BackgroundandnatureofoperationsDetails", "http://www.gdyn.com/role/BusinesscombinationDetails", "http://www.gdyn.com/role/ScheduleoffairvalueofidentifiableintangibleassetsTable" ], "xbrltype": "stringItemType" }, "us-gaap_BusinessAcquisitionDescriptionOfAcquiredEntity": { "auth_ref": [ "r289" ], "lang": { "en-us": { "role": { "documentation": "With respect to a business combination completed during the period, this element provides a description of the business, other than the name, which may include the industry, size, products and other important information.", "label": "Business Acquisition, Description of Acquired Entity", "terseLabel": "Business combination description" } } }, "localname": "BusinessAcquisitionDescriptionOfAcquiredEntity", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/BackgroundandnatureofoperationsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_BusinessAcquisitionProFormaInformationTextBlock": { "auth_ref": [ "r293", "r294" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of pro forma results of operations for a material business acquisition or series of individually immaterial business acquisitions that are material in the aggregate.", "label": "Business Acquisition, Pro Forma Information [Table Text Block]", "terseLabel": "Schedule of business acquisition pro forma information" } } }, "localname": "BusinessAcquisitionProFormaInformationTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/AcquisitionofTacitKnowledgeIncTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_BusinessAcquisitionSharePrice": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Price of a single share of a number of saleable stocks paid or offered to be paid in a business combination.", "label": "Business Acquisition, Share Price", "terseLabel": "Price per share" } } }, "localname": "BusinessAcquisitionSharePrice", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/BusinesscombinationDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_BusinessAcquisitionsPurchasePriceAllocationSubsequentYearsRemainingAdjustments": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Total remaining unamortized or unaccreted amounts of premiums, discounts, and intangible assets, in years subsequent to the year of acquisition, when the total amounts of remaining discounts, premiums, and intangible assets exceed 30 percent of stockholders' equity.", "label": "Business Acquisitions, Purchase Price Allocation, Subsequent Years, Remaining Adjustments", "terseLabel": "Purchase price allocation" } } }, "localname": "BusinessAcquisitionsPurchasePriceAllocationSubsequentYearsRemainingAdjustments", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofestimatedfairvaluesoftheassetsacquiredandliabilitiesTable" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationAcquisitionRelatedCosts": { "auth_ref": [ "r288" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "This element represents acquisition-related costs incurred to effect a business combination which costs have been expensed during the period. Such costs include finder's fees; advisory, legal, accounting, valuation, and other professional or consulting fees; general administrative costs, including the costs of maintaining an internal acquisitions department; and may include costs of registering and issuing debt and equity securities.", "label": "Business Combination, Acquisition Related Costs", "terseLabel": "Legal and professional fees" } } }, "localname": "BusinessCombinationAcquisitionRelatedCosts", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/BusinesscombinationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationControlObtainedDescription": { "auth_ref": [ "r290" ], "lang": { "en-us": { "role": { "documentation": "This element represents a description of how the entity obtained control of the acquired entity.", "label": "Business Combination, Control Obtained Description", "terseLabel": "Business combination, description" } } }, "localname": "BusinessCombinationControlObtainedDescription", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/BusinesscombinationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_BusinessCombinationDisclosureTextBlock": { "auth_ref": [ "r303" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for a business combination (or series of individually immaterial business combinations) completed during the period, including background, timing, and recognized assets and liabilities. The disclosure may include leverage buyout transactions (as applicable).", "label": "Business Combination Disclosure [Text Block]", "terseLabel": "Business combination" } } }, "localname": "BusinessCombinationDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/Businesscombination" ], "xbrltype": "textBlockItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets": { "auth_ref": [ "r298" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of assets acquired at the acquisition date.", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Assets", "terseLabel": "Total assets acquired" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofestimatedfairvaluesoftheassetsacquiredandliabilitiesTable" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther": { "auth_ref": [ "r298" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of other assets expected to be realized or consumed before one year or the normal operating cycle, if longer, acquired at the acquisition date.", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Assets, Other", "terseLabel": "Current assets" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofestimatedfairvaluesoftheassetsacquiredandliabilitiesTable" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable": { "auth_ref": [ "r298" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of liabilities incurred for goods and services received that are used in an entity's business and related party payables, assumed at the acquisition date.", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Current Liabilities, Accounts Payable", "negatedLabel": "Accounts payable and accrued expenses" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofestimatedfairvaluesoftheassetsacquiredandliabilitiesTable" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities": { "auth_ref": [ "r298" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of deferred tax liability attributable to taxable temporary differences assumed at the acquisition date.", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Deferred Tax Liabilities", "negatedLabel": "Deferred taxes" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofestimatedfairvaluesoftheassetsacquiredandliabilitiesTable" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIndefiniteLivedIntangibleAssets": { "auth_ref": [ "r298" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of assets, excluding financial assets and goodwill, that lack physical substance, having a projected indefinite period of benefit, acquired at the acquisition date.", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Indefinite-Lived Intangible Assets", "terseLabel": "Goodwill" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIndefiniteLivedIntangibleAssets", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofestimatedfairvaluesoftheassetsacquiredandliabilitiesTable" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities": { "auth_ref": [ "r298" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of liabilities assumed at the acquisition date.", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Liabilities", "negatedLabel": "Total liabilities assumed" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofestimatedfairvaluesoftheassetsacquiredandliabilitiesTable" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment": { "auth_ref": [ "r297", "r298" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The amount of property, plant, and equipment recognized as of the acquisition date.", "label": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Property, Plant, and Equipment", "terseLabel": "Property, plant and equipment" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofestimatedfairvaluesoftheassetsacquiredandliabilitiesTable" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationSeparatelyRecognizedTransactionsDescription": { "auth_ref": [ "r291" ], "lang": { "en-us": { "role": { "documentation": "A description of each transaction that is recognized separately from the acquisition of assets and assumptions of liabilities in the business combination.", "label": "Business Combination, Separately Recognized Transactions, Description", "terseLabel": "Business combination cost description" } } }, "localname": "BusinessCombinationSeparatelyRecognizedTransactionsDescription", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/BusinesscombinationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_BusinessCombinationStepAcquisitionEquityInterestInAcquireeFairValue1": { "auth_ref": [ "r292" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Fair value at acquisition-date of the equity interest in the acquiree held by the acquirer, immediately before the acquisition date for businesses combined in stages.", "label": "Business Combination, Step Acquisition, Equity Interest in Acquiree, Fair Value", "terseLabel": "Bunsiness acquisition fair value" } } }, "localname": "BusinessCombinationStepAcquisitionEquityInterestInAcquireeFairValue1", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleoffairvalueofidentifiableintangibleassetsTable" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Business Combinations [Abstract]" } } }, "localname": "BusinessCombinationsAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_CashAndCashEquivalentsAtCarryingValue": { "auth_ref": [ "r2", "r29", "r80" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedBalanceSheet": { "order": 1.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.", "label": "Cash and Cash Equivalents, at Carrying Value", "terseLabel": "Cash and cash equivalents" } } }, "localname": "CashAndCashEquivalentsAtCarryingValue", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedBalanceSheet" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease": { "auth_ref": [], "calculation": { "http://www.gdyn.com/role/ConsolidatedCashFlow": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in cash and cash equivalents. Cash and cash equivalents are the amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Includes effect from exchange rate changes.", "label": "Cash and Cash Equivalents, Period Increase (Decrease)", "totalLabel": "Net (decrease)/increase in cash and cash equivalents" } } }, "localname": "CashAndCashEquivalentsPeriodIncreaseDecrease", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedCashFlow" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashAndCashEquivalentsPolicyTextBlock": { "auth_ref": [ "r12", "r81" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for cash and cash equivalents, including the policy for determining which items are treated as cash equivalents. Other information that may be disclosed includes (1) the nature of any restrictions on the entity's use of its cash and cash equivalents, (2) whether the entity's cash and cash equivalents are insured or expose the entity to credit risk, (3) the classification of any negative balance accounts (overdrafts), and (4) the carrying basis of cash equivalents (for example, at cost) and whether the carrying amount of cash equivalents approximates fair value.", "label": "Cash and Cash Equivalents, Policy [Policy Text Block]", "terseLabel": "Cash and cash equivalents" } } }, "localname": "CashAndCashEquivalentsPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/AccountingPoliciesByPolicy" ], "xbrltype": "textBlockItemType" }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "auth_ref": [ "r74", "r80", "r83" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.", "label": "Cash, Cash Equivalents, Restricted Cash and Restricted Cash Equivalents", "periodEndLabel": "Cash and cash equivalents, end of period", "periodStartLabel": "Cash and cash equivalents, beginning of period" } } }, "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedCashFlow" ], "xbrltype": "monetaryItemType" }, "us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1": { "auth_ref": [ "r219" ], "lang": { "en-us": { "role": { "documentation": "Exercise price per share or per unit of warrants or rights outstanding.", "label": "Class of Warrant or Right, Exercise Price of Warrants or Rights", "terseLabel": "(in Dollars per share)", "verboseLabel": "Exercise prices (in Dollars per share)" } } }, "localname": "ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails", "http://www.gdyn.com/role/StockholdersequityDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_ClassOfWarrantOrRightOutstanding": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Number of warrants or rights outstanding.", "label": "Class of Warrant or Right, Outstanding", "terseLabel": "Warrants outstanding", "verboseLabel": "Outstanding public warrants" } } }, "localname": "ClassOfWarrantOrRightOutstanding", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/StockholdersequityDetails", "http://www.gdyn.com/role/SubsequenteventsDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Commitments and Contingencies Disclosure [Abstract]" } } }, "localname": "CommitmentsAndContingenciesDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": { "auth_ref": [ "r186", "r187", "r188", "r189", "r399" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for commitments and contingencies.", "label": "Commitments and Contingencies Disclosure [Text Block]", "terseLabel": "Commitments and contingencies" } } }, "localname": "CommitmentsAndContingenciesDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/Commitmentsandcontingencies" ], "xbrltype": "textBlockItemType" }, "us-gaap_CommonStockMember": { "auth_ref": [ "r95", "r96", "r320" ], "lang": { "en-us": { "role": { "documentation": "Stock that is subordinate to all other stock of the issuer.", "label": "Common Stock [Member]", "netLabel": "Common Stock [Member]", "terseLabel": "Common Stock", "verboseLabel": "Common stock [Member]" } } }, "localname": "CommonStockMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/BasisofpresentationandsummaryofsignificantaccountingpoliciesDetails", "http://www.gdyn.com/role/ShareholdersEquityType2or3", "http://www.gdyn.com/role/StockholdersequityDetails", "http://www.gdyn.com/role/SubsequenteventsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CommonStockParOrStatedValuePerShare": { "auth_ref": [ "r17" ], "lang": { "en-us": { "role": { "documentation": "Face amount or stated value per share of common stock.", "label": "Common Stock, Par or Stated Value Per Share", "terseLabel": "Common stock, par value (in Dollars per share)", "verboseLabel": "Common stock,par value (in Dollars per share)" } } }, "localname": "CommonStockParOrStatedValuePerShare", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/BasisofpresentationandsummaryofsignificantaccountingpoliciesDetails", "http://www.gdyn.com/role/ConsolidatedBalanceSheet_Parentheticals" ], "xbrltype": "perShareItemType" }, "us-gaap_CommonStockSharesAuthorized": { "auth_ref": [ "r17" ], "lang": { "en-us": { "role": { "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws.", "label": "Common Stock, Shares Authorized", "terseLabel": "Common stock, shares authorized" } } }, "localname": "CommonStockSharesAuthorized", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedBalanceSheet_Parentheticals", "http://www.gdyn.com/role/StockholdersequityDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockSharesIssued": { "auth_ref": [ "r17" ], "lang": { "en-us": { "role": { "documentation": "Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.", "label": "Common Stock, Shares, Issued", "terseLabel": "Common stock, shares issued" } } }, "localname": "CommonStockSharesIssued", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedBalanceSheet_Parentheticals", "http://www.gdyn.com/role/StockholdersequityDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockSharesOutstanding": { "auth_ref": [ "r17", "r218" ], "lang": { "en-us": { "role": { "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.", "label": "Common Stock, Shares, Outstanding", "terseLabel": "Common stock, shares outstanding" } } }, "localname": "CommonStockSharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedBalanceSheet_Parentheticals", "http://www.gdyn.com/role/StockholdersequityDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockValue": { "auth_ref": [ "r17", "r340" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedBalanceSheet": { "order": 1.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.", "label": "Common Stock, Value, Issued", "terseLabel": "Common stock, $0.0001 par value; 110,000,000 shares authorized; 54,728,586 and 50,878,780 issued and outstanding as of June 30, 2021 and December 31, 2020, respectively" } } }, "localname": "CommonStockValue", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedBalanceSheet" ], "xbrltype": "monetaryItemType" }, "us-gaap_CompensationExpenseExcludingCostOfGoodAndServiceSold": { "auth_ref": [ "r64" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of expense for salary, wage, profit sharing; incentive and equity-based compensation; and other employee benefit. Other employee benefit expense includes, but is not limited to, service component of net periodic benefit cost for defined benefit plan. Excludes compensation cost in cost of good and service sold.", "label": "Compensation Expense, Excluding Cost of Good and Service Sold", "terseLabel": "Cost of revenue" } } }, "localname": "CompensationExpenseExcludingCostOfGoodAndServiceSold", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofemployeestockbasedcompensationrecognizedTable" ], "xbrltype": "monetaryItemType" }, "us-gaap_ComprehensiveIncomeNetOfTax": { "auth_ref": [ "r49", "r51", "r52", "r60", "r374", "r386" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedIncomeStatement": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners.", "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent", "totalLabel": "Comprehensive loss" } } }, "localname": "ComprehensiveIncomeNetOfTax", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedIncomeStatement" ], "xbrltype": "monetaryItemType" }, "us-gaap_ConcentrationRiskBenchmarkDomain": { "auth_ref": [ "r130", "r131", "r152", "r324", "r325", "r398" ], "lang": { "en-us": { "role": { "documentation": "The denominator in a calculation of a disclosed concentration risk percentage.", "label": "Concentration Risk Benchmark [Domain]" } } }, "localname": "ConcentrationRiskBenchmarkDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/BasisofpresentationandsummaryofsignificantaccountingpoliciesDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ConcentrationRiskByBenchmarkAxis": { "auth_ref": [ "r130", "r131", "r152", "r324", "r325", "r397", "r398" ], "lang": { "en-us": { "role": { "documentation": "Information by benchmark of concentration risk.", "label": "Concentration Risk Benchmark [Axis]" } } }, "localname": "ConcentrationRiskByBenchmarkAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/BasisofpresentationandsummaryofsignificantaccountingpoliciesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ConcentrationRiskCreditRisk": { "auth_ref": [ "r127", "r378" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for credit risk.", "label": "Concentration Risk, Credit Risk, Policy [Policy Text Block]", "terseLabel": "Concentrations of credit risk and significant customers" } } }, "localname": "ConcentrationRiskCreditRisk", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/AccountingPoliciesByPolicy" ], "xbrltype": "textBlockItemType" }, "us-gaap_ConsolidationPolicyTextBlock": { "auth_ref": [ "r85", "r309" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy regarding (1) the principles it follows in consolidating or combining the separate financial statements, including the principles followed in determining the inclusion or exclusion of subsidiaries or other entities in the consolidated or combined financial statements and (2) its treatment of interests (for example, common stock, a partnership interest or other means of exerting influence) in other entities, for example consolidation or use of the equity or cost methods of accounting. The accounting policy may also address the accounting treatment for intercompany accounts and transactions, noncontrolling interest, and the income statement treatment in consolidation for issuances of stock by a subsidiary.", "label": "Consolidation, Policy [Policy Text Block]", "terseLabel": "Principles of consolidation" } } }, "localname": "ConsolidationPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/AccountingPoliciesByPolicy" ], "xbrltype": "textBlockItemType" }, "us-gaap_CostOfRevenue": { "auth_ref": [ "r66", "r89", "r158", "r190", "r191", "r192", "r194", "r195", "r196", "r197", "r198", "r199", "r200", "r326" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedIncomeStatement": { "order": 2.0, "parentTag": "us-gaap_GrossProfit", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The aggregate cost of goods produced and sold and services rendered during the reporting period.", "label": "Cost of Revenue", "terseLabel": "Cost of revenue" } } }, "localname": "CostOfRevenue", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedIncomeStatement" ], "xbrltype": "monetaryItemType" }, "us-gaap_CurrentIncomeTaxExpenseBenefit": { "auth_ref": [ "r90", "r275", "r281", "r282" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of current income tax expense (benefit) pertaining to taxable income (loss) from continuing operations.", "label": "Current Income Tax Expense (Benefit)", "terseLabel": "Income tax expense/(benefit)" } } }, "localname": "CurrentIncomeTaxExpenseBenefit", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/IncometaxesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CustomerRelationshipsMember": { "auth_ref": [ "r302" ], "lang": { "en-us": { "role": { "documentation": "Customer relationship that exists between an entity and its customer, for example, but not limited to, tenant relationships.", "label": "Customer Relationships [Member]", "terseLabel": "Customer relationships [Member]", "verboseLabel": "Customer Relationships [Member]" } } }, "localname": "CustomerRelationshipsMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofIntangibleassetsTable", "http://www.gdyn.com/role/ScheduleoffairvalueofidentifiableintangibleassetsTable" ], "xbrltype": "domainItemType" }, "us-gaap_DebtInstrumentConvertibleBeneficialConversionFeature": { "auth_ref": [ "r220" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of a favorable spread to a debt holder between the amount of debt being converted and the value of the securities received upon conversion. This is an embedded conversion feature of convertible debt issued that is in-the-money at the commitment date.", "label": "Debt Instrument, Convertible, Beneficial Conversion Feature", "terseLabel": "Conversion of warrants" } } }, "localname": "DebtInstrumentConvertibleBeneficialConversionFeature", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedCashFlow" ], "xbrltype": "monetaryItemType" }, "us-gaap_DebtInstrumentMaturityDateDescription": { "auth_ref": [ "r37" ], "lang": { "en-us": { "role": { "documentation": "Description of the maturity date of the debt instrument including whether the debt matures serially and, if so, a brief description of the serial maturities.", "label": "Debt Instrument, Maturity Date, Description", "terseLabel": "Description of debt maturity date" } } }, "localname": "DebtInstrumentMaturityDateDescription", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/StockholdersequityDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DeferredIncomeTaxLiabilitiesNet": { "auth_ref": [ "r266", "r267" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedBalanceSheet": { "order": 2.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences with jurisdictional netting.", "label": "Deferred Income Tax Liabilities, Net", "terseLabel": "Deferred tax liabilities" } } }, "localname": "DeferredIncomeTaxLiabilitiesNet", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedBalanceSheet" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredIncomeTaxesAndOtherAssetsCurrent": { "auth_ref": [], "calculation": { "http://www.gdyn.com/role/ConsolidatedBalanceSheet": { "order": 4.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount after allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and other assets expected to be realized or consumed within one year or normal operating cycle, if longer.", "label": "Deferred Income Taxes and Other Assets, Current", "terseLabel": "Deferred tax assets" } } }, "localname": "DeferredIncomeTaxesAndOtherAssetsCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedBalanceSheet" ], "xbrltype": "monetaryItemType" }, "us-gaap_DepreciationAndAmortization": { "auth_ref": [ "r78", "r179" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedCashFlow": { "order": 2.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The current period expense charged against earnings on long-lived, physical assets not used in production, and which are not intended for resale, to allocate or recognize the cost of such assets over their useful lives; or to record the reduction in book value of an intangible asset over the benefit period of such asset; or to reflect consumption during the period of an asset that is not used in production.", "label": "Depreciation, Depletion and Amortization, Nonproduction", "terseLabel": "Depreciation and amortization" } } }, "localname": "DepreciationAndAmortization", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedCashFlow" ], "xbrltype": "monetaryItemType" }, "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": { "auth_ref": [ "r262" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for share-based payment arrangement.", "label": "Share-based Payment Arrangement [Text Block]", "terseLabel": "Stock-based compensation" } } }, "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/Stockbasedcompensation" ], "xbrltype": "textBlockItemType" }, "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Share-based Payment Arrangement [Abstract]" } } }, "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_EarningsPerShareAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Earnings Per Share [Abstract]", "terseLabel": "Loss per share" } } }, "localname": "EarningsPerShareAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedIncomeStatement" ], "xbrltype": "stringItemType" }, "us-gaap_EarningsPerShareBasic": { "auth_ref": [ "r61", "r100", "r101", "r102", "r103", "r104", "r108", "r111", "r114", "r115", "r116", "r120", "r121", "r321", "r322", "r375", "r387" ], "lang": { "en-us": { "role": { "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.", "label": "Earnings Per Share, Basic", "terseLabel": "Basic (in Dollars per share)", "verboseLabel": "Basic" } } }, "localname": "EarningsPerShareBasic", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedIncomeStatement", "http://www.gdyn.com/role/ScheduleofcomputationofbasicanddilutedearningspershareTable" ], "xbrltype": "perShareItemType" }, "us-gaap_EarningsPerShareDiluted": { "auth_ref": [ "r61", "r100", "r101", "r102", "r103", "r104", "r111", "r114", "r115", "r116", "r120", "r121", "r321", "r322", "r375", "r387" ], "lang": { "en-us": { "role": { "documentation": "The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.", "label": "Earnings Per Share, Diluted", "terseLabel": "Diluted (in Dollars per share)", "verboseLabel": "Diluted" } } }, "localname": "EarningsPerShareDiluted", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedIncomeStatement", "http://www.gdyn.com/role/ScheduleofcomputationofbasicanddilutedearningspershareTable" ], "xbrltype": "perShareItemType" }, "us-gaap_EarningsPerShareTextBlock": { "auth_ref": [ "r117", "r118", "r119", "r122" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for earnings per share.", "label": "Earnings Per Share [Text Block]", "terseLabel": "Earnings per share" } } }, "localname": "EarningsPerShareTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/Earningspershare" ], "xbrltype": "textBlockItemType" }, "us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents": { "auth_ref": [ "r327" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedCashFlow": { "order": 4.0, "parentTag": "us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) from the effect of exchange rate changes on cash and cash equivalent balances held in foreign currencies.", "label": "Effect of Exchange Rate on Cash and Cash Equivalents", "terseLabel": "Effect of exchange rate changes on cash and cash equivalents" } } }, "localname": "EffectOfExchangeRateOnCashAndCashEquivalents", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedCashFlow" ], "xbrltype": "monetaryItemType" }, "us-gaap_EffectiveIncomeTaxRateContinuingOperations": { "auth_ref": [ "r269" ], "lang": { "en-us": { "role": { "documentation": "Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.", "label": "Effective Income Tax Rate Reconciliation, Percent", "terseLabel": "Effective tax rate, percentage" } } }, "localname": "EffectiveIncomeTaxRateContinuingOperations", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/IncometaxesDetails" ], "xbrltype": "percentItemType" }, "us-gaap_EmployeeBenefitsAndShareBasedCompensation": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of expense for employee benefit and equity-based compensation.", "label": "Employee Benefits and Share-based Compensation", "terseLabel": "Total stock-based compensation" } } }, "localname": "EmployeeBenefitsAndShareBasedCompensation", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofemployeestockbasedcompensationrecognizedTable" ], "xbrltype": "monetaryItemType" }, "us-gaap_EmployeeRelatedLiabilitiesCurrent": { "auth_ref": [ "r34" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedBalanceSheet": { "order": 3.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Total of the carrying values as of the balance sheet date of obligations incurred through that date and payable for obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Employee-related Liabilities, Current", "terseLabel": "Accrued compensation and benefits" } } }, "localname": "EmployeeRelatedLiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedBalanceSheet" ], "xbrltype": "monetaryItemType" }, "us-gaap_EquityComponentDomain": { "auth_ref": [ "r0", "r54", "r55", "r56", "r95", "r96", "r97", "r99", "r105", "r107", "r123", "r159", "r218", "r221", "r257", "r258", "r259", "r277", "r278", "r320", "r328", "r329", "r330", "r331", "r332", "r333", "r392", "r393", "r394", "r414" ], "lang": { "en-us": { "role": { "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc.", "label": "Equity Component [Domain]" } } }, "localname": "EquityComponentDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/BasisofpresentationandsummaryofsignificantaccountingpoliciesDetails", "http://www.gdyn.com/role/ShareholdersEquityType2or3", "http://www.gdyn.com/role/StockbasedcompensationDetails", "http://www.gdyn.com/role/StockholdersequityDetails", "http://www.gdyn.com/role/SubsequenteventsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueAdjustmentOfWarrants": { "auth_ref": [ "r78", "r203" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedCashFlow": { "order": 5.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of expense (income) related to adjustment to fair value of warrant liability.", "label": "Fair Value Adjustment of Warrants", "terseLabel": "Change in fair value of warrants" } } }, "localname": "FairValueAdjustmentOfWarrants", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedCashFlow" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetUsefulLife": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Useful life of finite-lived intangible assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.", "label": "Intangible assets useful life", "netLabel": "Estimated Useful Life", "terseLabel": "Business acquisition useful life", "verboseLabel": "Estimated Useful Life (In Years)" } } }, "localname": "FiniteLivedIntangibleAssetUsefulLife", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/BasisofpresentationandsummaryofsignificantaccountingpoliciesDetails", "http://www.gdyn.com/role/ScheduleofIntangibleassetsTable", "http://www.gdyn.com/role/ScheduleoffairvalueofidentifiableintangibleassetsTable", "http://www.gdyn.com/role/ScheduleofpropertyandequipmentTable" ], "xbrltype": "durationItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": { "auth_ref": [ "r176" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.", "label": "Finite-Lived Intangible Assets, Accumulated Amortization", "negatedLabel": "Less: Accumulated amortization" } } }, "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofpropertyandequipmentTable" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationMethod": { "auth_ref": [ "r169" ], "lang": { "en-us": { "role": { "documentation": "The amortization method of a major finite-lived intangible asset class. A major class is composed of intangible assets that can be grouped together because they are similar either by their nature or by their use in the operations of a company. The straight-line method is the preferred amortization method, unless another method better reflects the pattern in which the asset is consumed.", "label": "Finite-Lived Intangible Assets, Amortization Method", "terseLabel": "Bunsiness acquisition amortization method" } } }, "localname": "FiniteLivedIntangibleAssetsAmortizationMethod", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleoffairvalueofidentifiableintangibleassetsTable" ], "xbrltype": "stringItemType" }, "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": { "auth_ref": [ "r171", "r172", "r176", "r177", "r353", "r354" ], "lang": { "en-us": { "role": { "documentation": "Information by major type or class of finite-lived intangible assets.", "label": "Finite-Lived Intangible Assets by Major Class [Axis]" } } }, "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofIntangibleassetsTable", "http://www.gdyn.com/role/ScheduleoffairvalueofidentifiableintangibleassetsTable", "http://www.gdyn.com/role/ScheduleofpropertyandequipmentTable" ], "xbrltype": "stringItemType" }, "us-gaap_FiniteLivedIntangibleAssetsGross": { "auth_ref": [ "r176", "r354" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.", "label": "Finite-Lived Intangible Assets, Gross", "terseLabel": "Total Intangible assets" } } }, "localname": "FiniteLivedIntangibleAssetsGross", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofIntangibleassetsTable" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Finite-Lived Intangible Assets [Line Items]" } } }, "localname": "FiniteLivedIntangibleAssetsLineItems", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofIntangibleassetsTable" ], "xbrltype": "stringItemType" }, "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": { "auth_ref": [ "r171", "r175" ], "lang": { "en-us": { "role": { "documentation": "The major class of finite-lived intangible asset (for example, patents, trademarks, copyrights, etc.) A major class is composed of intangible assets that can be grouped together because they are similar, either by their nature or by their use in the operations of a company.", "label": "Finite-Lived Intangible Assets, Major Class Name [Domain]" } } }, "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofIntangibleassetsTable", "http://www.gdyn.com/role/ScheduleoffairvalueofidentifiableintangibleassetsTable", "http://www.gdyn.com/role/ScheduleofpropertyandequipmentTable" ], "xbrltype": "domainItemType" }, "us-gaap_FiniteLivedIntangibleAssetsNet": { "auth_ref": [ "r176", "r353" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.", "label": "Finite-Lived Intangible Assets, Net", "terseLabel": "Intangible assets, net" } } }, "localname": "FiniteLivedIntangibleAssetsNet", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofIntangibleassetsTable" ], "xbrltype": "monetaryItemType" }, "us-gaap_FurnitureAndFixturesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Equipment commonly used in offices and stores that have no permanent connection to the structure of a building or utilities. Examples include, but are not limited to, desks, chairs, tables, and bookcases.", "label": "Furniture and Fixtures [Member]", "terseLabel": "Furniture and fixtures [Member]" } } }, "localname": "FurnitureAndFixturesMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofpropertyandequipmentTable" ], "xbrltype": "domainItemType" }, "us-gaap_GeneralAndAdministrativeExpenseMember": { "auth_ref": [ "r62" ], "lang": { "en-us": { "role": { "documentation": "Primary financial statement caption encompassing general and administrative expense.", "label": "General and Administrative Expense [Member]", "terseLabel": "General and Administrative Expense [Member]" } } }, "localname": "GeneralAndAdministrativeExpenseMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/BusinesscombinationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_Goodwill": { "auth_ref": [ "r165", "r166", "r340", "r368" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedBalanceSheet": { "order": 5.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.", "label": "Goodwill", "terseLabel": "Goodwill" } } }, "localname": "Goodwill", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedBalanceSheet" ], "xbrltype": "monetaryItemType" }, "us-gaap_GoodwillAcquiredDuringPeriod": { "auth_ref": [ "r167" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase in asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized resulting from a business combination.", "label": "Goodwill, Acquired During Period", "terseLabel": "Good will" } } }, "localname": "GoodwillAcquiredDuringPeriod", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/AcquisitionofTacitKnowledgeIncDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Goodwill and Intangible Assets Disclosure [Abstract]" } } }, "localname": "GoodwillAndIntangibleAssetsDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_GoodwillAndIntangibleAssetsGoodwillPolicy": { "auth_ref": [ "r168" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for goodwill. This accounting policy also may address how an entity assesses and measures impairment of goodwill, how reporting units are determined, how goodwill is allocated to such units, and how the fair values of the reporting units are determined.", "label": "Goodwill and Intangible Assets, Goodwill, Policy [Policy Text Block]", "terseLabel": "Goodwill" } } }, "localname": "GoodwillAndIntangibleAssetsGoodwillPolicy", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/AccountingPoliciesByPolicy" ], "xbrltype": "textBlockItemType" }, "us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock": { "auth_ref": [ "r168", "r173" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for goodwill and intangible assets. This accounting policy also may address how an entity assesses and measures impairment of goodwill and intangible assets.", "label": "Goodwill and Intangible Assets, Policy [Policy Text Block]", "terseLabel": "Intangible assets" } } }, "localname": "GoodwillAndIntangibleAssetsPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/AccountingPoliciesByPolicy" ], "xbrltype": "textBlockItemType" }, "us-gaap_GrossProfit": { "auth_ref": [ "r65", "r89", "r139", "r141", "r144", "r147", "r149", "r158", "r190", "r191", "r192", "r194", "r195", "r196", "r197", "r198", "r199", "r200", "r326" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedIncomeStatement": { "order": 1.0, "parentTag": "us-gaap_OperatingIncomeLoss", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.", "label": "Gross Profit", "totalLabel": "Gross profit" } } }, "localname": "GrossProfit", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedIncomeStatement" ], "xbrltype": "monetaryItemType" }, "us-gaap_IPOMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "First sale of stock by a private company to the public.", "label": "IPO [Member]", "terseLabel": "IPO [Member]" } } }, "localname": "IPOMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/StockholdersequityDetails" ], "xbrltype": "domainItemType" }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": { "auth_ref": [ "r58", "r139", "r141", "r144", "r147", "r149", "r367", "r372", "r376", "r388" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedIncomeStatement": { "order": 1.0, "parentTag": "us-gaap_ProfitLoss", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.", "label": "Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest", "totalLabel": "Income/(loss) before income taxes" } } }, "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedIncomeStatement" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeStatementAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Income Statement [Abstract]" } } }, "localname": "IncomeStatementAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_IncomeStatementLocationAxis": { "auth_ref": [ "r183", "r185" ], "lang": { "en-us": { "role": { "documentation": "Information by location in the income statement.", "label": "Income Statement Location [Axis]" } } }, "localname": "IncomeStatementLocationAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/BusinesscombinationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_IncomeStatementLocationDomain": { "auth_ref": [ "r185" ], "lang": { "en-us": { "role": { "documentation": "Location in the income statement.", "label": "Income Statement Location [Domain]" } } }, "localname": "IncomeStatementLocationDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/BusinesscombinationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_IncomeTaxDisclosureAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Income Tax Disclosure [Abstract]" } } }, "localname": "IncomeTaxDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_IncomeTaxDisclosureTextBlock": { "auth_ref": [ "r91", "r270", "r271", "r274", "r279", "r283", "r285", "r286", "r287" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information.", "label": "Income Tax Disclosure [Text Block]", "terseLabel": "Income taxes" } } }, "localname": "IncomeTaxDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/Incometaxes" ], "xbrltype": "textBlockItemType" }, "us-gaap_IncomeTaxExpenseBenefit": { "auth_ref": [ "r92", "r106", "r107", "r138", "r268", "r280", "r284", "r389" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedIncomeStatement": { "order": 2.0, "parentTag": "us-gaap_ProfitLoss", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.", "label": "Income Tax Expense (Benefit)", "terseLabel": "Provision/(benefit) for income taxes" } } }, "localname": "IncomeTaxExpenseBenefit", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedIncomeStatement" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeTaxPolicyTextBlock": { "auth_ref": [ "r53", "r264", "r265", "r271", "r272", "r273", "r276" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for income taxes, which may include its accounting policies for recognizing and measuring deferred tax assets and liabilities and related valuation allowances, recognizing investment tax credits, operating loss carryforwards, tax credit carryforwards, and other carryforwards, methodologies for determining its effective income tax rate and the characterization of interest and penalties in the financial statements.", "label": "Income Tax, Policy [Policy Text Block]", "terseLabel": "Income taxes" } } }, "localname": "IncomeTaxPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/AccountingPoliciesByPolicy" ], "xbrltype": "textBlockItemType" }, "us-gaap_IncomeTaxesPaid": { "auth_ref": [ "r75", "r82" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The amount of cash paid during the current period to foreign, federal, state, and local authorities as taxes on income.", "label": "Income Taxes Paid", "terseLabel": "Cash paid for income taxes" } } }, "localname": "IncomeTaxesPaid", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedCashFlow" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccountsPayable": { "auth_ref": [ "r77" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedCashFlow": { "order": 6.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in the aggregate amount of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business.", "label": "Increase (Decrease) in Accounts Payable", "terseLabel": "Accounts payable" } } }, "localname": "IncreaseDecreaseInAccountsPayable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedCashFlow" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccountsReceivable": { "auth_ref": [ "r77" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedCashFlow": { "order": 12.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services.", "label": "Increase (Decrease) in Accounts Receivable", "negatedLabel": "Accounts receivable" } } }, "localname": "IncreaseDecreaseInAccountsReceivable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedCashFlow" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccruedLiabilities": { "auth_ref": [ "r77" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedCashFlow": { "order": 7.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in the aggregate amount of expenses incurred but not yet paid.", "label": "Increase (Decrease) in Accrued Liabilities", "terseLabel": "Accrued liabilities" } } }, "localname": "IncreaseDecreaseInAccruedLiabilities", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedCashFlow" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccruedTaxesPayable": { "auth_ref": [ "r77" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedCashFlow": { "order": 9.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period of all taxes owed but not paid, including income, property and other taxes.", "label": "Increase (Decrease) in Accrued Taxes Payable", "terseLabel": "Accrued income taxes" } } }, "localname": "IncreaseDecreaseInAccruedTaxesPayable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedCashFlow" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInDeferredCharges": { "auth_ref": [ "r77" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedCashFlow": { "order": 11.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in the value of expenditures made during the current reporting period for benefits that will be received over a period of years. Deferred charges differ from prepaid expenses in that they usually extend over a long period of time and may or may not be regularly recurring costs of operation.", "label": "Increase (Decrease) in Deferred Charges", "negatedLabel": "Deferred income taxes" } } }, "localname": "IncreaseDecreaseInDeferredCharges", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedCashFlow" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInDeferredCompensation": { "auth_ref": [ "r77" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedCashFlow": { "order": 8.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in the obligation created by employee agreements whereby earned compensation will be paid in the future.", "label": "Increase (Decrease) in Deferred Compensation", "terseLabel": "Accrued compensation and benefits" } } }, "localname": "IncreaseDecreaseInDeferredCompensation", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedCashFlow" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Increase (Decrease) in Operating Capital [Abstract]", "terseLabel": "Changes in assets and liabilities:" } } }, "localname": "IncreaseDecreaseInOperatingCapitalAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedCashFlow" ], "xbrltype": "stringItemType" }, "us-gaap_IncreaseDecreaseInOtherCurrentLiabilities": { "auth_ref": [ "r77" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedCashFlow": { "order": 10.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in current liabilities classified as other.", "label": "Increase (Decrease) in Other Current Liabilities", "terseLabel": "Other current liabilities" } } }, "localname": "IncreaseDecreaseInOtherCurrentLiabilities", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedCashFlow" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": { "auth_ref": [ "r77" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedCashFlow": { "order": 15.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in prepaid expenses, and assets classified as other.", "label": "Increase (Decrease) in Prepaid Expense and Other Assets", "negatedLabel": "Prepaid expenses and other current assets" } } }, "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedCashFlow" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInPrepaidTaxes": { "auth_ref": [ "r77" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedCashFlow": { "order": 14.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) of consideration paid in advance for income and other taxes that provide economic benefits in future periods.", "label": "Increase (Decrease) in Prepaid Taxes", "negatedLabel": "Prepaid income taxes" } } }, "localname": "IncreaseDecreaseInPrepaidTaxes", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedCashFlow" ], "xbrltype": "monetaryItemType" }, "us-gaap_IntangibleAssetsDisclosureTextBlock": { "auth_ref": [ "r178" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for all or part of the information related to intangible assets.", "label": "Intangible Assets Disclosure [Text Block]", "terseLabel": "Intangible assets, net" } } }, "localname": "IntangibleAssetsDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/Intangibleassetsnet" ], "xbrltype": "textBlockItemType" }, "us-gaap_IntangibleAssetsNetExcludingGoodwill": { "auth_ref": [ "r170", "r174" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedBalanceSheet": { "order": 3.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Sum of the carrying amounts of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges.", "label": "Intangible Assets, Net (Excluding Goodwill)", "terseLabel": "Intangible assets, net" } } }, "localname": "IntangibleAssetsNetExcludingGoodwill", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedBalanceSheet" ], "xbrltype": "monetaryItemType" }, "us-gaap_LeaseholdImprovementsMember": { "auth_ref": [ "r180" ], "lang": { "en-us": { "role": { "documentation": "Additions or improvements to assets held under a lease arrangement.", "label": "Leasehold Improvements [Member]", "terseLabel": "Leasehold improvements [Member]" } } }, "localname": "LeaseholdImprovementsMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofpropertyandequipmentTable" ], "xbrltype": "domainItemType" }, "us-gaap_Liabilities": { "auth_ref": [ "r33", "r89", "r143", "r158", "r190", "r191", "r192", "r194", "r195", "r196", "r197", "r198", "r199", "r200", "r308", "r316", "r317", "r326", "r338", "r339" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedBalanceSheet": { "order": 1.0, "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future.", "label": "Liabilities", "totalLabel": "Total liabilities" } } }, "localname": "Liabilities", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedBalanceSheet" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesAndStockholdersEquity": { "auth_ref": [ "r24", "r89", "r158", "r326", "r340", "r371", "r383" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedBalanceSheet": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.", "label": "Liabilities and Equity", "totalLabel": "Total liabilities and stockholders\u2019 equity" } } }, "localname": "LiabilitiesAndStockholdersEquity", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedBalanceSheet" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesCurrent": { "auth_ref": [ "r36", "r89", "r158", "r190", "r191", "r192", "r194", "r195", "r196", "r197", "r198", "r199", "r200", "r308", "r316", "r317", "r326", "r338", "r339", "r340" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedBalanceSheet": { "order": 1.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.", "label": "Liabilities, Current", "totalLabel": "Total current liabilities" } } }, "localname": "LiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedBalanceSheet" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesCurrentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Liabilities, Current [Abstract]", "terseLabel": "Current liabilities" } } }, "localname": "LiabilitiesCurrentAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedBalanceSheet" ], "xbrltype": "stringItemType" }, "us-gaap_NatureOfOperations": { "auth_ref": [ "r124", "r135" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for the nature of an entity's business, major products or services, principal markets including location, and the relative importance of its operations in each business and the basis for the determination, including but not limited to, assets, revenues, or earnings. For an entity that has not commenced principal operations, disclosures about the risks and uncertainties related to the activities in which the entity is currently engaged and an understanding of what those activities are being directed toward.", "label": "Nature of Operations [Text Block]", "terseLabel": "Background and nature of operations" } } }, "localname": "NatureOfOperations", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/Backgroundandnatureofoperations" ], "xbrltype": "textBlockItemType" }, "us-gaap_NetCashProvidedByUsedInFinancingActivities": { "auth_ref": [ "r74" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedCashFlow": { "order": 3.0, "parentTag": "us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit.", "label": "Net Cash Provided by (Used in) Financing Activities", "totalLabel": "Net cash (used in)/provided by financing activities" } } }, "localname": "NetCashProvidedByUsedInFinancingActivities", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedCashFlow" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Financing Activities [Abstract]", "terseLabel": "Cash flows from financing activities" } } }, "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedCashFlow" ], "xbrltype": "stringItemType" }, "us-gaap_NetCashProvidedByUsedInInvestingActivities": { "auth_ref": [ "r74" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedCashFlow": { "order": 2.0, "parentTag": "us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.", "label": "Net Cash Provided by (Used in) Investing Activities", "totalLabel": "Net cash used in investing activities" } } }, "localname": "NetCashProvidedByUsedInInvestingActivities", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedCashFlow" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Investing Activities [Abstract]", "terseLabel": "Cash flows from investing activities" } } }, "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedCashFlow" ], "xbrltype": "stringItemType" }, "us-gaap_NetCashProvidedByUsedInOperatingActivities": { "auth_ref": [ "r74", "r76", "r79" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedCashFlow": { "order": 1.0, "parentTag": "us-gaap_CashAndCashEquivalentsPeriodIncreaseDecrease", "weight": 1.0 } }, "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.", "label": "Net Cash Provided by (Used in) Operating Activities", "totalLabel": "Net cash provided by/(used in) operating activities" } } }, "localname": "NetCashProvidedByUsedInOperatingActivities", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedCashFlow" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Operating Activities [Abstract]", "terseLabel": "Cash flows from operating activities" } } }, "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedCashFlow" ], "xbrltype": "stringItemType" }, "us-gaap_NetIncomeLoss": { "auth_ref": [ "r1", "r48", "r50", "r56", "r59", "r79", "r89", "r98", "r100", "r101", "r102", "r103", "r106", "r107", "r112", "r139", "r141", "r144", "r147", "r149", "r158", "r190", "r191", "r192", "r194", "r195", "r196", "r197", "r198", "r199", "r200", "r322", "r326", "r373", "r385" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.", "label": "Net Income (Loss) Attributable to Parent", "negatedLabel": "Net loss", "terseLabel": "Net loss" } } }, "localname": "NetIncomeLoss", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofbusinessacquisitionproformainformationTable", "http://www.gdyn.com/role/ShareholdersEquityType2or3" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetIncomeLossAvailableToCommonStockholdersBasic": { "auth_ref": [ "r100", "r101", "r102", "r103", "r108", "r109", "r113", "r116", "r139", "r141", "r144", "r147", "r149" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount, after deduction of tax, noncontrolling interests, dividends on preferred stock and participating securities; of income (loss) available to common shareholders.", "label": "Net Income (Loss) Available to Common Stockholders, Basic", "terseLabel": "Net loss (in Dollars)" } } }, "localname": "NetIncomeLossAvailableToCommonStockholdersBasic", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofcomputationofbasicanddilutedearningspershareTable" ], "xbrltype": "monetaryItemType" }, "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact.", "label": "New Accounting Pronouncements, Policy [Policy Text Block]", "terseLabel": "Recently adopted accounting pronouncements" } } }, "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/AccountingPoliciesByPolicy" ], "xbrltype": "textBlockItemType" }, "us-gaap_NoncashInvestingAndFinancingItemsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Noncash Investing and Financing Items [Abstract]", "terseLabel": "Supplemental disclosure of non-cash activities" } } }, "localname": "NoncashInvestingAndFinancingItemsAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedCashFlow" ], "xbrltype": "stringItemType" }, "us-gaap_NoncompeteAgreementsMember": { "auth_ref": [ "r301" ], "lang": { "en-us": { "role": { "documentation": "Agreement in which one party agrees not to pursue a similar trade in competition with another party.", "label": "Noncompete Agreements [Member]", "terseLabel": "Non-Compete Agreements [Member]" } } }, "localname": "NoncompeteAgreementsMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofIntangibleassetsTable" ], "xbrltype": "domainItemType" }, "us-gaap_OperatingExpenses": { "auth_ref": [], "calculation": { "http://www.gdyn.com/role/ConsolidatedIncomeStatement": { "order": 2.0, "parentTag": "us-gaap_OperatingIncomeLoss", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense.", "label": "Operating Expenses", "totalLabel": "Total operating expenses" } } }, "localname": "OperatingExpenses", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedIncomeStatement" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingExpensesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Operating Expenses [Abstract]", "terseLabel": "Operating expenses" } } }, "localname": "OperatingExpensesAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedIncomeStatement" ], "xbrltype": "stringItemType" }, "us-gaap_OperatingIncomeLoss": { "auth_ref": [ "r139", "r141", "r144", "r147", "r149" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedIncomeStatement": { "order": 1.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The net result for the period of deducting operating expenses from operating revenues.", "label": "Operating Income (Loss)", "totalLabel": "Income/(loss) from operations" } } }, "localname": "OperatingIncomeLoss", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedIncomeStatement" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherAccruedLiabilitiesCurrent": { "auth_ref": [ "r9", "r10", "r11", "r34" ], "calculation": { "http://www.gdyn.com/role/ScheduleofothercurrentliabilitiesTable": { "order": 2.0, "parentTag": "us-gaap_OtherLiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of expenses incurred but not yet paid classified as other, due within one year or the normal operating cycle, if longer.", "label": "Other Accrued Liabilities, Current", "terseLabel": "Other liabilities" } } }, "localname": "OtherAccruedLiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofothercurrentliabilitiesTable" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent": { "auth_ref": [ "r304", "r305", "r312" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedIncomeStatement": { "order": 2.0, "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature, attributable to parent entity.", "label": "Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax, Portion Attributable to Parent", "terseLabel": "Foreign currency translation adjustments, net of tax" } } }, "localname": "OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedIncomeStatement" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax": { "auth_ref": [ "r43" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature.", "label": "Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax", "terseLabel": "Foreign currency translation adjustment, net of tax" } } }, "localname": "OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ShareholdersEquityType2or3" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherCurrentLiabilitiesTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of other current liabilities.", "label": "Other Current Liabilities [Table Text Block]", "terseLabel": "Schedule of other current liabilities" } } }, "localname": "OtherCurrentLiabilitiesTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/OthercurrentliabilitiesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_OtherFiniteLivedIntangibleAssetsGross": { "auth_ref": [ "r176" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount before accumulated amortization of finite-lived intangible assets classified as other.", "label": "Other Finite-Lived Intangible Assets, Gross", "terseLabel": "Capitalized software development costs" } } }, "localname": "OtherFiniteLivedIntangibleAssetsGross", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofpropertyandequipmentTable" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherLiabilitiesCurrent": { "auth_ref": [ "r8", "r9", "r34", "r340" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedBalanceSheet": { "order": 5.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 }, "http://www.gdyn.com/role/ScheduleofothercurrentliabilitiesTable": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of liabilities classified as other, due within one year or the normal operating cycle, if longer.", "label": "Other Liabilities, Current", "terseLabel": "Other current liabilities", "totalLabel": "Total other current liabilities" } } }, "localname": "OtherLiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedBalanceSheet", "http://www.gdyn.com/role/ScheduleofothercurrentliabilitiesTable" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherLiabilitiesCurrentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Other Liabilities, Current [Abstract]" } } }, "localname": "OtherLiabilitiesCurrentAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_OtherLiabilitiesDisclosureTextBlock": { "auth_ref": [ "r35" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for other liabilities.", "label": "Other Liabilities Disclosure [Text Block]", "terseLabel": "Other current liabilities" } } }, "localname": "OtherLiabilitiesDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/Othercurrentliabilities" ], "xbrltype": "textBlockItemType" }, "us-gaap_OtherNonoperatingIncomeExpense": { "auth_ref": [ "r68" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedIncomeStatement": { "order": 2.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of income (expense) related to nonoperating activities, classified as other.", "label": "Other Nonoperating Income (Expense)", "terseLabel": "Other income/(expenses), net" } } }, "localname": "OtherNonoperatingIncomeExpense", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedIncomeStatement" ], "xbrltype": "monetaryItemType" }, "us-gaap_PartnersCapitalAccountUnitsSoldInPrivatePlacement": { "auth_ref": [ "r221", "r222" ], "lang": { "en-us": { "role": { "documentation": "The number of units sold in a private placement of each class of partners' capital account. Units represent shares of ownership of the general, limited, and preferred partners.", "label": "Partners' Capital Account, Units, Sold in Private Placement", "terseLabel": "Issuance of private placement shares" } } }, "localname": "PartnersCapitalAccountUnitsSoldInPrivatePlacement", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/StockholdersequityDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired": { "auth_ref": [ "r69" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedCashFlow": { "order": 2.0, "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cash outflow associated with the acquisition of a business, net of the cash acquired from the purchase.", "label": "Payments to Acquire Businesses, Net of Cash Acquired", "negatedLabel": "Acquisition of Companies, net of cash acquired (Note 4)" } } }, "localname": "PaymentsToAcquireBusinessesNetOfCashAcquired", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedCashFlow" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": { "auth_ref": [ "r70" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedCashFlow": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.", "label": "Payments to Acquire Property, Plant, and Equipment", "negatedLabel": "Purchase of property and equipment" } } }, "localname": "PaymentsToAcquirePropertyPlantAndEquipment", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedCashFlow" ], "xbrltype": "monetaryItemType" }, "us-gaap_PhantomShareUnitsPSUsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Share-based payment arrangement awarded as phantom share or unit.", "label": "Phantom Share Units (PSUs) [Member]", "terseLabel": "Phantom Share Units (PSUs) [Member]" } } }, "localname": "PhantomShareUnitsPSUsMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_PlanNameAxis": { "auth_ref": [ "r232", "r255" ], "lang": { "en-us": { "role": { "documentation": "Information by plan name for share-based payment arrangement.", "label": "Plan Name [Axis]" } } }, "localname": "PlanNameAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_PlanNameDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Plan name for share-based payment arrangement.", "label": "Plan Name [Domain]" } } }, "localname": "PlanNameDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_PreferredStockConversionBasis": { "auth_ref": [ "r16", "r219" ], "lang": { "en-us": { "role": { "documentation": "Describe the conversion features of preferred stock if preferred stock is convertible. That is, shares of preferred stock into which another convertible security was converted, or shares of preferred stock into which another class of preferred stock was converted.", "label": "Preferred Stock, Conversion Basis", "terseLabel": "Preferred stock, conversion basis" } } }, "localname": "PreferredStockConversionBasis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/StockholdersequityDetails" ], "xbrltype": "stringItemType" }, "us-gaap_PreferredStockMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Preferred shares may provide a preferential dividend to the dividend on common stock and may take precedence over common stock in the event of a liquidation. Preferred shares typically represent an ownership interest in the company.", "label": "Preferred Stock [Member]", "terseLabel": "Convertible Preferred Stock", "verboseLabel": "Preferred Stock [Member]" } } }, "localname": "PreferredStockMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ShareholdersEquityType2or3", "http://www.gdyn.com/role/StockholdersequityDetails" ], "xbrltype": "domainItemType" }, "us-gaap_PreferredStockParOrStatedValuePerShare": { "auth_ref": [ "r16", "r204" ], "lang": { "en-us": { "role": { "documentation": "Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer.", "label": "Preferred Stock, Par or Stated Value Per Share", "terseLabel": "Preferred shares, par value (in Dollars per share)" } } }, "localname": "PreferredStockParOrStatedValuePerShare", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/StockholdersequityDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_PreferredStockSharesOutstanding": { "auth_ref": [ "r16" ], "lang": { "en-us": { "role": { "documentation": "Aggregate share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased.", "label": "Preferred Stock, Shares Outstanding", "terseLabel": "Preferred stock shares, outstanding" } } }, "localname": "PreferredStockSharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/StockholdersequityDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": { "auth_ref": [ "r5", "r27", "r28" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedBalanceSheet": { "order": 5.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer.", "label": "Prepaid Expense and Other Assets, Current", "terseLabel": "Prepaid expenses and other current assets" } } }, "localname": "PrepaidExpenseAndOtherAssetsCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedBalanceSheet" ], "xbrltype": "monetaryItemType" }, "us-gaap_PrepaidTaxes": { "auth_ref": [ "r4", "r6", "r163", "r164" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedBalanceSheet": { "order": 4.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of asset related to consideration paid in advance for income and other taxes that provide economic benefits within a future period of one year or the normal operating cycle, if longer.", "label": "Prepaid Taxes", "terseLabel": "Prepaid income taxes" } } }, "localname": "PrepaidTaxes", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedBalanceSheet" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromRelatedPartyDebt": { "auth_ref": [ "r72" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedCashFlow": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The cash inflow from a long-term borrowing made from related parties where one party can exercise control or significant influence over another party; including affiliates, owners or officers and their immediate families, pension trusts, and so forth. Alternate caption: Proceeds from Advances from Affiliates.", "label": "Proceeds from Related Party Debt", "terseLabel": "Cash received from ChaSerg" } } }, "localname": "ProceedsFromRelatedPartyDebt", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedCashFlow" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromStockOptionsExercised": { "auth_ref": [ "r71", "r256" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedCashFlow": { "order": 3.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow from exercise of option under share-based payment arrangement.", "label": "Proceeds from Stock Options Exercised", "terseLabel": "Proceeds from exercises of stock options", "verboseLabel": "Proceeds from stock options exercised" } } }, "localname": "ProceedsFromStockOptionsExercised", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedCashFlow", "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProfitLoss": { "auth_ref": [ "r1", "r48", "r50", "r56", "r73", "r89", "r98", "r106", "r107", "r139", "r141", "r144", "r147", "r149", "r158", "r190", "r191", "r192", "r194", "r195", "r196", "r197", "r198", "r199", "r200", "r304", "r310", "r311", "r318", "r319", "r322", "r326", "r376" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedCashFlow": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 }, "http://www.gdyn.com/role/ConsolidatedIncomeStatement": { "order": 1.0, "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The consolidated profit or loss for the period, net of income taxes, including the portion attributable to the noncontrolling interest.", "label": "Net Income (Loss), Including Portion Attributable to Noncontrolling Interest", "terseLabel": "Net loss", "totalLabel": "Net loss" } } }, "localname": "ProfitLoss", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedCashFlow", "http://www.gdyn.com/role/ConsolidatedIncomeStatement" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Property, Plant and Equipment [Abstract]" } } }, "localname": "PropertyPlantAndEquipmentAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_PropertyPlantAndEquipmentByTypeAxis": { "auth_ref": [ "r31", "r182" ], "lang": { "en-us": { "role": { "documentation": "Information by type of long-lived, physical assets used to produce goods and services and not intended for resale.", "label": "Long-Lived Tangible Asset [Axis]" } } }, "localname": "PropertyPlantAndEquipmentByTypeAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofpropertyandequipmentTable" ], "xbrltype": "stringItemType" }, "us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock": { "auth_ref": [ "r184", "r400", "r401", "r402" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.", "label": "Property, Plant and Equipment Disclosure [Text Block]", "terseLabel": "Property and Equipment, net" } } }, "localname": "PropertyPlantAndEquipmentDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/PropertyandEquipmentnet" ], "xbrltype": "textBlockItemType" }, "us-gaap_PropertyPlantAndEquipmentGross": { "auth_ref": [ "r30", "r180" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.", "label": "Property, Plant and Equipment, Gross", "terseLabel": "Capitalized software development costs" } } }, "localname": "PropertyPlantAndEquipmentGross", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofpropertyandequipmentTable" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Property, Plant and Equipment [Line Items]" } } }, "localname": "PropertyPlantAndEquipmentLineItems", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofpropertyandequipmentTable" ], "xbrltype": "stringItemType" }, "us-gaap_PropertyPlantAndEquipmentNet": { "auth_ref": [ "r13", "r14", "r182", "r340", "r377", "r384" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedBalanceSheet": { "order": 2.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.", "label": "Property, Plant and Equipment, Net", "terseLabel": "Property and equipment, net" } } }, "localname": "PropertyPlantAndEquipmentNet", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedBalanceSheet" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentOtherNet": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount after depreciation of long-lived, physical assets used to produce goods and services and not intended for resale, classified as other.", "label": "Property, Plant and Equipment, Other, Net", "terseLabel": "Property and equipment, net" } } }, "localname": "PropertyPlantAndEquipmentOtherNet", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofpropertyandequipmentTable" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentTextBlock": { "auth_ref": [ "r13", "r182" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.", "label": "Property, Plant and Equipment [Table Text Block]", "terseLabel": "Schedule of property and equipment" } } }, "localname": "PropertyPlantAndEquipmentTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/PropertyandEquipmentnetTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_PropertyPlantAndEquipmentTypeDomain": { "auth_ref": [ "r13", "r180" ], "lang": { "en-us": { "role": { "documentation": "Listing of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale. Examples include land, buildings, machinery and equipment, and other types of furniture and equipment including, but not limited to, office equipment, furniture and fixtures, and computer equipment and software.", "label": "Long-Lived Tangible Asset [Domain]" } } }, "localname": "PropertyPlantAndEquipmentTypeDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofpropertyandequipmentTable" ], "xbrltype": "domainItemType" }, "us-gaap_PropertyPlantAndEquipmentUsefulLife": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Useful life of long lived, physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Examples include, but not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment.", "label": "Property, Plant and Equipment, Useful Life", "terseLabel": "Estimated Useful Life (In Years)" } } }, "localname": "PropertyPlantAndEquipmentUsefulLife", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofpropertyandequipmentTable" ], "xbrltype": "durationItemType" }, "us-gaap_ProvisionForDoubtfulAccounts": { "auth_ref": [ "r63", "r161" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedCashFlow": { "order": 3.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of expense (reversal of expense) for expected credit loss on accounts receivable.", "label": "Accounts Receivable, Credit Loss Expense (Reversal)", "terseLabel": "Bad debt expense" } } }, "localname": "ProvisionForDoubtfulAccounts", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedCashFlow" ], "xbrltype": "monetaryItemType" }, "us-gaap_ReceivablesTradeAndOtherAccountsReceivableAllowanceForDoubtfulAccountsPolicy": { "auth_ref": [ "r26", "r156" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for determining the allowance for doubtful accounts for trade and other accounts receivable balances, and when impairments, charge-offs or recoveries are recognized.", "label": "Receivables, Trade and Other Accounts Receivable, Allowance for Doubtful Accounts, Policy [Policy Text Block]", "terseLabel": "Accounts receivable and allowance for doubtful accounts" } } }, "localname": "ReceivablesTradeAndOtherAccountsReceivableAllowanceForDoubtfulAccountsPolicy", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/AccountingPoliciesByPolicy" ], "xbrltype": "textBlockItemType" }, "us-gaap_RelatedPartyDomain": { "auth_ref": [ "r225", "r335", "r336" ], "lang": { "en-us": { "role": { "documentation": "Related parties include affiliates; other entities for which investments are accounted for by the equity method by the entity; trusts for benefit of employees; and principal owners, management, and members of immediate families. It also may include other parties with which the entity may control or can significantly influence the management or operating policies of the other to an extent that one of the transacting parties might be prevented from fully pursuing its own separate interests.", "label": "Related Party [Domain]" } } }, "localname": "RelatedPartyDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofbusinessacquisitionproformainformationTable", "http://www.gdyn.com/role/StockholdersequityDetails" ], "xbrltype": "domainItemType" }, "us-gaap_RelatedPartyTransactionsByRelatedPartyAxis": { "auth_ref": [ "r225", "r335", "r337", "r355", "r356", "r357", "r358", "r359", "r360", "r361", "r362", "r363", "r364", "r365", "r366" ], "lang": { "en-us": { "role": { "documentation": "Information by type of related party. Related parties include, but not limited to, affiliates; other entities for which investments are accounted for by the equity method by the entity; trusts for benefit of employees; and principal owners, management, and members of immediate families. It also may include other parties with which the entity may control or can significantly influence the management or operating policies of the other to an extent that one of the transacting parties might be prevented from fully pursuing its own separate interests.", "label": "Related Party [Axis]" } } }, "localname": "RelatedPartyTransactionsByRelatedPartyAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofbusinessacquisitionproformainformationTable", "http://www.gdyn.com/role/StockholdersequityDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ResearchAndDevelopmentExpense": { "auth_ref": [ "r263", "r351", "r406" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedIncomeStatement": { "order": 1.0, "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The aggregate costs incurred (1) in a planned search or critical investigation aimed at discovery of new knowledge with the hope that such knowledge will be useful in developing a new product or service, a new process or technique, or in bringing about a significant improvement to an existing product or process; or (2) to translate research findings or other knowledge into a plan or design for a new product or process or for a significant improvement to an existing product or process whether intended for sale or the entity's use, during the reporting period charged to research and development projects, including the costs of developing computer software up to the point in time of achieving technological feasibility, and costs allocated in accounting for a business combination to in-process projects deemed to have no alternative future use.", "label": "Research and Development Expense", "terseLabel": "Engineering, research, and development" } } }, "localname": "ResearchAndDevelopmentExpense", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedIncomeStatement" ], "xbrltype": "monetaryItemType" }, "us-gaap_RestrictedStockUnitsRSUMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Share instrument which is convertible to stock or an equivalent amount of cash, after a specified period of time or when specified performance conditions are met.", "label": "Restricted Stock Units (RSUs) [Member]", "terseLabel": "Restricted Stock Units (RSUs) [Member]" } } }, "localname": "RestrictedStockUnitsRSUMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_RetainedEarningsMember": { "auth_ref": [ "r0", "r95", "r96", "r97", "r99", "r105", "r107", "r159", "r257", "r258", "r259", "r277", "r278", "r320", "r392", "r394" ], "lang": { "en-us": { "role": { "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.", "label": "Retained Earnings [Member]", "terseLabel": "Retained earnings" } } }, "localname": "RetainedEarningsMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ShareholdersEquityType2or3" ], "xbrltype": "domainItemType" }, "us-gaap_RetainedEarningsUnappropriated": { "auth_ref": [ "r20", "r88", "r382" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedBalanceSheet": { "order": 3.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "A segregation of retained earnings which is available for dividend distribution. Earnings not paid out as dividends but instead reinvested in the core business or used to pay off debt. Unappropriated profit is part of shareholder equity. Also called cumulative distributions or earned surplus or accumulated earnings or unappropriated profit.", "label": "Retained Earnings, Unappropriated", "terseLabel": "Retained earnings" } } }, "localname": "RetainedEarningsUnappropriated", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedBalanceSheet" ], "xbrltype": "monetaryItemType" }, "us-gaap_RevenueRecognitionPolicyTextBlock": { "auth_ref": [ "r86", "r87" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for revenue. Includes revenue from contract with customer and from other sources.", "label": "Revenue [Policy Text Block]", "terseLabel": "Revenue recognition" } } }, "localname": "RevenueRecognitionPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/AccountingPoliciesByPolicy" ], "xbrltype": "textBlockItemType" }, "us-gaap_Revenues": { "auth_ref": [ "r57", "r89", "r136", "r137", "r140", "r145", "r146", "r150", "r151", "r152", "r158", "r190", "r191", "r192", "r194", "r195", "r196", "r197", "r198", "r199", "r200", "r326", "r376" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedIncomeStatement": { "order": 1.0, "parentTag": "us-gaap_GrossProfit", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of revenue recognized from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading gain (loss).", "label": "Revenues", "terseLabel": "Revenue" } } }, "localname": "Revenues", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedIncomeStatement" ], "xbrltype": "monetaryItemType" }, "us-gaap_SaleOfStockDescriptionOfTransaction": { "auth_ref": [ "r306", "r314", "r315" ], "lang": { "en-us": { "role": { "documentation": "Description of stock transaction which may include details of the offering (IPO, private placement), a description of the stock sold, percentage of subsidiary's or equity investee's stock sold, a description of the investors and whether the stock was issued in a business combination.", "label": "Sale of Stock, Description of Transaction", "terseLabel": "Sale of stock, description" } } }, "localname": "SaleOfStockDescriptionOfTransaction", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/BusinesscombinationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_SaleOfStockNameOfTransactionDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Sale of the entity's stock, including, but not limited to, initial public offering (IPO) and private placement.", "label": "Sale of Stock [Domain]" } } }, "localname": "SaleOfStockNameOfTransactionDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/StockholdersequityDetails", "http://www.gdyn.com/role/SubsequenteventsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SaleOfStockNumberOfSharesIssuedInTransaction": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The number of shares issued or sold by the subsidiary or equity method investee per stock transaction.", "label": "Sale of Stock, Number of Shares Issued in Transaction", "terseLabel": "Sale of shares" } } }, "localname": "SaleOfStockNumberOfSharesIssuedInTransaction", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/SubsequenteventsDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_SaleOfStockPricePerShare": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Per share amount received by subsidiary or equity investee for each share of common stock issued or sold in the stock transaction.", "label": "Sale of Stock, Price Per Share", "terseLabel": "Price per share (in Dollars per share)" } } }, "localname": "SaleOfStockPricePerShare", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/StockholdersequityDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock": { "auth_ref": [ "r41" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the various types of trade accounts and notes receivable and for each the gross carrying value, allowance, and net carrying value as of the balance sheet date. Presentation is categorized by current, noncurrent and unclassified receivables.", "label": "Schedule of Accounts, Notes, Loans and Financing Receivable [Table Text Block]", "terseLabel": "Schedule of accounts receivable and allowance for doubtful accounts" } } }, "localname": "ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/BasisofpresentationandsummaryofsignificantaccountingpoliciesTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": { "auth_ref": [ "r116" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations.", "label": "Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]", "terseLabel": "Schedule of computation of basic and diluted earnings per share" } } }, "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/EarningspershareTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable": { "auth_ref": [ "r171", "r175", "r353" ], "lang": { "en-us": { "role": { "documentation": "Schedule of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.", "label": "Schedule of Finite-Lived Intangible Assets [Table]" } } }, "localname": "ScheduleOfFiniteLivedIntangibleAssetsTable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofIntangibleassetsTable" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock": { "auth_ref": [ "r171", "r175" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of assets, excluding financial assets and goodwill, lacking physical substance with a finite life, by either major class or business segment.", "label": "Schedule of Finite-Lived Intangible Assets [Table Text Block]", "terseLabel": "Schedule of Intangible assets" } } }, "localname": "ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/IntangibleassetsnetTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfPropertyPlantAndEquipmentTable": { "auth_ref": [ "r31", "r182" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.", "label": "Property, Plant and Equipment [Table]" } } }, "localname": "ScheduleOfPropertyPlantAndEquipmentTable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofpropertyandequipmentTable" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock": { "auth_ref": [ "r299" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the amounts recognized as of the acquisition date for each major class of assets acquired and liabilities assumed. May include but not limited to the following: (a) acquired receivables; (b) contingencies recognized at the acquisition date; and (c) the fair value of noncontrolling interests in the acquiree.", "label": "Schedule of Recognized Identified Assets Acquired and Liabilities Assumed [Table Text Block]", "terseLabel": "Schedule of estimated fair values of the assets acquired and liabilities" } } }, "localname": "ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/AcquisitionofTacitKnowledgeIncTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfShareBasedCompensationEmployeeStockPurchasePlanActivityTableTextBlock": { "auth_ref": [ "r252" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of employee stock purchase plan activity.", "label": "Schedule of Share-based Compensation, Employee Stock Purchase Plan, Activity [Table Text Block]", "terseLabel": "Schedule of employee stock-based compensation recognized" } } }, "localname": "ScheduleOfShareBasedCompensationEmployeeStockPurchasePlanActivityTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock": { "auth_ref": [ "r235", "r243", "r245" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure for stock option plans. Includes, but is not limited to, outstanding awards at beginning and end of year, grants, exercises, forfeitures, and weighted-average grant date fair value.", "label": "Share-based Payment Arrangement, Option, Activity [Table Text Block]", "terseLabel": "Schedule of dividend yield assumption for all black-scholes stock option-pricing" } } }, "localname": "ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock": { "auth_ref": [ "r248" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the significant assumptions used during the year to estimate the fair value of stock options, including, but not limited to: (a) expected term of share options and similar instruments, (b) expected volatility of the entity's shares, (c) expected dividends, (d) risk-free rate(s), and (e) discount for post-vesting restrictions.", "label": "Schedule of Share-based Payment Award, Stock Options, Valuation Assumptions [Table Text Block]", "terseLabel": "Schedule of estimated grant using the black-scholes" } } }, "localname": "ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_SellingAndMarketingExpense": { "auth_ref": [], "calculation": { "http://www.gdyn.com/role/ConsolidatedIncomeStatement": { "order": 2.0, "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The aggregate total amount of expenses directly related to the marketing or selling of products or services.", "label": "Selling and Marketing Expense", "terseLabel": "Sales and marketing" } } }, "localname": "SellingAndMarketingExpense", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedIncomeStatement" ], "xbrltype": "monetaryItemType" }, "us-gaap_SellingGeneralAndAdministrativeExpense": { "auth_ref": [ "r67" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedIncomeStatement": { "order": 3.0, "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc.", "label": "Selling, General and Administrative Expense", "terseLabel": "General and administrative" } } }, "localname": "SellingGeneralAndAdministrativeExpense", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedIncomeStatement" ], "xbrltype": "monetaryItemType" }, "us-gaap_SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember": { "auth_ref": [ "r296" ], "lang": { "en-us": { "role": { "documentation": "Represents the aggregation and reporting of combined amounts of individually immaterial business combinations that were completed during the period.", "label": "Series of Individually Immaterial Business Acquisitions [Member]", "terseLabel": "Series of Individually Immaterial Business Acquisitions [Member]" } } }, "localname": "SeriesOfIndividuallyImmaterialBusinessAcquisitionsMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/BusinesscombinationDetails", "http://www.gdyn.com/role/ScheduleoffairvalueofidentifiableintangibleassetsTable" ], "xbrltype": "domainItemType" }, "us-gaap_ShareBasedCompensation": { "auth_ref": [ "r77" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedCashFlow": { "order": 4.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of noncash expense for share-based payment arrangement.", "label": "Share-based Payment Arrangement, Noncash Expense", "terseLabel": "Stock-based compensation" } } }, "localname": "ShareBasedCompensation", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedCashFlow" ], "xbrltype": "monetaryItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue": { "auth_ref": [ "r242" ], "lang": { "en-us": { "role": { "documentation": "Per share or unit weighted-average intrinsic value of award granted under share-based payment arrangement. Excludes share and unit options.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period, Intrinsic Value, Amount Per Share", "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period, Intrinsic Value, Amount Per Share (in Dollars per share)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodIntrinsicValue", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate": { "auth_ref": [ "r250" ], "lang": { "en-us": { "role": { "documentation": "The estimated dividend rate (a percentage of the share price) to be paid (expected dividends) to holders of the underlying shares over the option's term.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Dividend Rate", "terseLabel": "Dividend yield" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofestimatedgrantusingtheblackscholesTable" ], "xbrltype": "percentItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate": { "auth_ref": [ "r249" ], "lang": { "en-us": { "role": { "documentation": "The estimated measure of the percentage by which a share price is expected to fluctuate during a period. Volatility also may be defined as a probability-weighted measure of the dispersion of returns about the mean. The volatility of a share price is the standard deviation of the continuously compounded rates of return on the share over a specified period. That is the same as the standard deviation of the differences in the natural logarithms of the stock prices plus dividends, if any, over the period.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Volatility Rate", "terseLabel": "Expected volatility" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofestimatedgrantusingtheblackscholesTable" ], "xbrltype": "percentItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate": { "auth_ref": [ "r251" ], "lang": { "en-us": { "role": { "documentation": "The risk-free interest rate assumption that is used in valuing an option on its own shares.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Risk Free Interest Rate", "terseLabel": "Risk-free interest rate" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofestimatedgrantusingtheblackscholesTable" ], "xbrltype": "percentItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber": { "auth_ref": [ "r236", "r238" ], "lang": { "en-us": { "role": { "documentation": "Number of equity instruments other than options outstanding, including both vested and non-vested instruments.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Non-Option Equity Instruments, Outstanding, Number", "terseLabel": "Options outstanding, Balance at March 6, 2020 (post to exchange ratio conversion)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNonOptionEquityInstrumentsOutstandingNumber", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofconversionofthevestedandunvestedoptionsTable" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Number of additional shares authorized for issuance under share-based payment arrangement.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Number of Additional Shares Authorized", "terseLabel": "Additional shares granted (in Shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant": { "auth_ref": [ "r255" ], "lang": { "en-us": { "role": { "documentation": "The difference between the maximum number of shares (or other type of equity) authorized for issuance under the plan (including the effects of amendments and adjustments), and the sum of: 1) the number of shares (or other type of equity) already issued upon exercise of options or other equity-based awards under the plan; and 2) shares (or other type of equity) reserved for issuance on granting of outstanding awards, net of cancellations and forfeitures, if applicable.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Available for Grant", "periodEndLabel": "Available for grant, Available ending", "periodStartLabel": "Available for grant, Available beginning" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofboardofdirectorsapprovedanequityincentiveplanTable" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber": { "auth_ref": [ "r239" ], "lang": { "en-us": { "role": { "documentation": "The number of shares into which fully or partially vested stock options outstanding as of the balance sheet date can be currently converted under the option plan.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Number", "terseLabel": "Number of shares exercisable (in Shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice": { "auth_ref": [ "r239" ], "lang": { "en-us": { "role": { "documentation": "The weighted-average price as of the balance sheet date at which grantees can acquire the shares reserved for issuance on vested portions of options outstanding and currently exercisable under the stock option plan.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Weighted Average Exercise Price", "terseLabel": "Average exercise price of shares exercisable (in Dollars per share)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod": { "auth_ref": [ "r241" ], "lang": { "en-us": { "role": { "documentation": "The number of shares under options that were cancelled during the reporting period as a result of occurrence of a terminating event specified in contractual agreements pertaining to the stock option plan.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Forfeitures in Period", "negatedLabel": "Options outstanding, Forfeited/Cancelled" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofconversionofthevestedandunvestedoptionsTable" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Gross number of share options (or share units) granted during the period.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Gross", "terseLabel": "Options granted, Shares" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofdividendyieldassumptionforallblackscholesstockoptionpricingTable" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": { "auth_ref": [ "r244" ], "lang": { "en-us": { "role": { "documentation": "The weighted average grant-date fair value of options granted during the reporting period as calculated by applying the disclosed option pricing methodology.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value", "terseLabel": "Grant date fair value of common stock (in Dollars per share)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofestimatedgrantusingtheblackscholesTable" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": { "auth_ref": [ "r237", "r255" ], "lang": { "en-us": { "role": { "documentation": "Number of options outstanding, including both vested and non-vested options.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number", "periodEndLabel": "Options outstanding, balance ending", "periodStartLabel": "Options outstanding, balance beginning" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofconversionofthevestedandunvestedoptionsTable" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber": { "auth_ref": [ "r246" ], "lang": { "en-us": { "role": { "documentation": "Number of fully vested and expected to vest options outstanding that can be converted into shares under option plan. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Number", "terseLabel": "Stock options vested, shares (in Shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": { "auth_ref": [ "r230", "r233" ], "lang": { "en-us": { "role": { "documentation": "Award under share-based payment arrangement.", "label": "Award Type [Domain]" } } }, "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options.", "label": "Share-based Compensation Arrangements by Share-based Payment Award, Options, Grants in Period, Weighted Average Exercise Price", "terseLabel": "Exercise Price (in Dollars per share)" } } }, "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy": { "auth_ref": [ "r232", "r234" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for award under share-based payment arrangement. Includes, but is not limited to, methodology and assumption used in measuring cost.", "label": "Share-based Payment Arrangement [Policy Text Block]", "terseLabel": "Stock-based compensation expense" } } }, "localname": "ShareBasedCompensationOptionAndIncentivePlansPolicy", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/AccountingPoliciesByPolicy" ], "xbrltype": "textBlockItemType" }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1": { "auth_ref": [ "r253" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cost expensed and capitalized for award under share-based payment arrangement.", "label": "Share-based Payment Arrangement, Expensed and Capitalized, Amount", "terseLabel": "Total share consideration" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofconsiderationforbusinesscombinationTable" ], "xbrltype": "monetaryItemType" }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Intrinsic value of outstanding award under share-based payment arrangement. Excludes share and unit options.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Aggregate Intrinsic Value, Outstanding", "terseLabel": "Intrinsic value" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsAggregateIntrinsicValueOutstanding", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageRemainingContractualTerm1": { "auth_ref": [ "r247" ], "lang": { "en-us": { "role": { "documentation": "Weighted average remaining contractual term for fully vested and expected to vest exercisable or convertible options, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Exercisable, Weighted Average Remaining Contractual Term", "terseLabel": "straight-line basis term" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageRemainingContractualTerm1", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "durationItemType" }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1": { "auth_ref": [ "r246" ], "lang": { "en-us": { "role": { "documentation": "Weighted average remaining contractual term for fully vested and expected to vest options outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Remaining Contractual Term", "terseLabel": "Remaining contractual term" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "durationItemType" }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Number of options vested.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Vested, Number of Shares", "terseLabel": "Earnout shares vested", "verboseLabel": "Issued upon vesting shares (in Shares)" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedNumberOfShares", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails", "http://www.gdyn.com/role/StockholdersequityDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_SharesHeldInEmployeeStockOptionPlanSuspenseShares": { "auth_ref": [ "r261" ], "lang": { "en-us": { "role": { "documentation": "Number of suspense shares held by the Employee Stock Option Plan at balance sheet date. Suspense shares are shares that have not been released, committed to be released or allocated to individual participant accounts.", "label": "Shares held in Employee Stock Option Plan, Suspense Shares", "periodEndLabel": "RSUs outstanding as of June 30, 2021", "periodStartLabel": "RSUs outstanding as of December 31, 2020 (2020 Plan)" } } }, "localname": "SharesHeldInEmployeeStockOptionPlanSuspenseShares", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofemployeestaxobligationsTable" ], "xbrltype": "sharesItemType" }, "us-gaap_SharesIssuedPricePerShare": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Per share or per unit amount of equity securities issued.", "label": "Shares Issued, Price Per Share", "terseLabel": "Public per share (in Dollars per share)" } } }, "localname": "SharesIssuedPricePerShare", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/SubsequenteventsDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_SharesOutstanding": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Number of shares issued which are neither cancelled nor held in the treasury.", "label": "Shares, Outstanding", "periodEndLabel": "Balance (in Shares)", "periodStartLabel": "Balance (in Shares)" } } }, "localname": "SharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ShareholdersEquityType2or3" ], "xbrltype": "sharesItemType" }, "us-gaap_SignificantAccountingPoliciesTextBlock": { "auth_ref": [ "r84", "r94" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for all significant accounting policies of the reporting entity.", "label": "Significant Accounting Policies [Text Block]", "terseLabel": "Basis of presentation and summary of significant accounting policies" } } }, "localname": "SignificantAccountingPoliciesTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/Basisofpresentationandsummaryofsignificantaccountingpolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_StatementEquityComponentsAxis": { "auth_ref": [ "r0", "r39", "r54", "r55", "r56", "r95", "r96", "r97", "r99", "r105", "r107", "r123", "r159", "r218", "r221", "r257", "r258", "r259", "r277", "r278", "r320", "r328", "r329", "r330", "r331", "r332", "r333", "r392", "r393", "r394", "r414" ], "lang": { "en-us": { "role": { "documentation": "Information by component of equity.", "label": "Equity Components [Axis]" } } }, "localname": "StatementEquityComponentsAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/BasisofpresentationandsummaryofsignificantaccountingpoliciesDetails", "http://www.gdyn.com/role/ShareholdersEquityType2or3", "http://www.gdyn.com/role/StockbasedcompensationDetails", "http://www.gdyn.com/role/StockholdersequityDetails", "http://www.gdyn.com/role/SubsequenteventsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_StatementLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Statement [Line Items]" } } }, "localname": "StatementLineItems", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ShareholdersEquityType2or3" ], "xbrltype": "stringItemType" }, "us-gaap_StatementOfCashFlowsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Statement of Cash Flows [Abstract]" } } }, "localname": "StatementOfCashFlowsAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_StatementOfFinancialPositionAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Statement of Financial Position [Abstract]" } } }, "localname": "StatementOfFinancialPositionAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_StatementOfStockholdersEquityAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Statement of Stockholders' Equity [Abstract]" } } }, "localname": "StatementOfStockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_StatementTable": { "auth_ref": [ "r95", "r96", "r97", "r123", "r352" ], "lang": { "en-us": { "role": { "documentation": "Schedule reflecting a Statement of Income, Statement of Cash Flows, Statement of Financial Position, Statement of Shareholders' Equity and Other Comprehensive Income, or other statement as needed.", "label": "Statement [Table]" } } }, "localname": "StatementTable", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ShareholdersEquityType2or3" ], "xbrltype": "stringItemType" }, "us-gaap_StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities": { "auth_ref": [ "r38", "r202", "r218", "r219", "r221" ], "lang": { "en-us": { "role": { "documentation": "Number of shares issued during the period as a result of the conversion of convertible securities.", "label": "Stock Issued During Period, Shares, Conversion of Convertible Securities", "terseLabel": "Conversion of promissory note to common stock (in Shares)" } } }, "localname": "StockIssuedDuringPeriodSharesConversionOfConvertibleSecurities", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ShareholdersEquityType2or3" ], "xbrltype": "sharesItemType" }, "us-gaap_StockIssuedDuringPeriodSharesConversionOfUnits": { "auth_ref": [ "r16", "r17", "r218", "r219", "r221" ], "lang": { "en-us": { "role": { "documentation": "The number of shares issued during the period upon the conversion of units. An example of a convertible unit is an umbrella partnership real estate investment trust unit (UPREIT unit).", "label": "Stock Issued During Period, Shares, Conversion of Units", "terseLabel": "Conversion of preferred stock (in Shares)" } } }, "localname": "StockIssuedDuringPeriodSharesConversionOfUnits", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ShareholdersEquityType2or3" ], "xbrltype": "sharesItemType" }, "us-gaap_StockIssuedDuringPeriodSharesNewIssues": { "auth_ref": [ "r16", "r17", "r218", "r221" ], "lang": { "en-us": { "role": { "documentation": "Number of new stock issued during the period.", "label": "Stock Issued During Period, Shares, New Issues", "terseLabel": "ChaSerg shares recapitalized, net of transaction costs of $4,142 (in Shares)" } } }, "localname": "StockIssuedDuringPeriodSharesNewIssues", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ShareholdersEquityType2or3" ], "xbrltype": "sharesItemType" }, "us-gaap_StockIssuedDuringPeriodSharesPurchaseOfAssets": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Number of shares of stock issued during the period as part of a transaction to acquire assets that do not qualify as a business combination.", "label": "Stock Issued During Period, Shares, Purchase of Assets", "terseLabel": "Shares redeemed" } } }, "localname": "StockIssuedDuringPeriodSharesPurchaseOfAssets", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/BusinesscombinationDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures": { "auth_ref": [ "r16", "r17", "r218", "r221" ], "lang": { "en-us": { "role": { "documentation": "Number of shares issued during the period related to Restricted Stock Awards, net of any shares forfeited.", "label": "Stock Issued During Period, Shares, Restricted Stock Award, Net of Forfeitures", "terseLabel": "Restricted stock units" } } }, "localname": "StockIssuedDuringPeriodSharesRestrictedStockAwardNetOfForfeitures", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofdilutednetincomelosspershareattributabletocommonstockholdersTable" ], "xbrltype": "sharesItemType" }, "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": { "auth_ref": [ "r16", "r17", "r218", "r221", "r240" ], "lang": { "en-us": { "role": { "documentation": "Number of share options (or share units) exercised during the current period.", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period", "terseLabel": "Exercise of stock options (in Shares)" } } }, "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ShareholdersEquityType2or3" ], "xbrltype": "sharesItemType" }, "us-gaap_StockIssuedDuringPeriodValueAcquisitions": { "auth_ref": [ "r39", "r218", "r221" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Value of stock issued pursuant to acquisitions during the period.", "label": "Stock Issued During Period, Value, Acquisitions", "terseLabel": "Fair value of contingent consideration issued for acquisition of business" } } }, "localname": "StockIssuedDuringPeriodValueAcquisitions", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedCashFlow" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockIssuedDuringPeriodValueConversionOfConvertibleSecurities": { "auth_ref": [ "r39", "r218", "r221" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The gross value of stock issued during the period upon the conversion of convertible securities.", "label": "Stock Issued During Period, Value, Conversion of Convertible Securities", "terseLabel": "Conversion of promissory note to common stock" } } }, "localname": "StockIssuedDuringPeriodValueConversionOfConvertibleSecurities", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ShareholdersEquityType2or3" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockIssuedDuringPeriodValueConversionOfUnits": { "auth_ref": [ "r39", "r218", "r221" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Value of stock issued during the period upon the conversion of units. An example of a convertible unit is an umbrella partnership real estate investment trust unit (UPREIT unit).", "label": "Stock Issued During Period, Value, Conversion of Units", "terseLabel": "Conversion of preferred stock" } } }, "localname": "StockIssuedDuringPeriodValueConversionOfUnits", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ShareholdersEquityType2or3" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockIssuedDuringPeriodValueNewIssues": { "auth_ref": [ "r16", "r17", "r218", "r221" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Equity impact of the value of new stock issued during the period. Includes shares issued in an initial public offering or a secondary public offering.", "label": "Stock Issued During Period, Value, New Issues", "terseLabel": "ChaSerg shares recapitalized, net of transaction costs of $4,142" } } }, "localname": "StockIssuedDuringPeriodValueNewIssues", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ShareholdersEquityType2or3" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation": { "auth_ref": [ "r16", "r17", "r221", "r231", "r244" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Value, after forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP).", "label": "Shares Issued, Value, Share-based Payment Arrangement, after Forfeiture", "terseLabel": "Stock-based compensation" } } }, "localname": "StockIssuedDuringPeriodValueShareBasedCompensation", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ShareholdersEquityType2or3" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockIssuedDuringPeriodValueShareBasedCompensationForfeited": { "auth_ref": [ "r254" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Value of forfeited shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP).", "label": "Shares Issued, Value, Share-based Payment Arrangement, Forfeited", "terseLabel": "Net of forfeitures" } } }, "localname": "StockIssuedDuringPeriodValueShareBasedCompensationForfeited", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/StockbasedcompensationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised": { "auth_ref": [ "r39", "r218", "r221" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Value of stock issued as a result of the exercise of stock options.", "label": "Stock Issued During Period, Value, Stock Options Exercised", "terseLabel": "Exercise of stock options" } } }, "localname": "StockIssuedDuringPeriodValueStockOptionsExercised", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ShareholdersEquityType2or3" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockholdersEquity": { "auth_ref": [ "r17", "r22", "r23", "r89", "r157", "r158", "r326", "r340" ], "calculation": { "http://www.gdyn.com/role/ConsolidatedBalanceSheet": { "order": 2.0, "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity.", "label": "Stockholders' Equity Attributable to Parent", "periodEndLabel": "Balance", "periodStartLabel": "Balance", "totalLabel": "Total stockholders\u2019 equity" } } }, "localname": "StockholdersEquity", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedBalanceSheet", "http://www.gdyn.com/role/ShareholdersEquityType2or3" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockholdersEquityAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Stockholders' Equity Attributable to Parent [Abstract]", "terseLabel": "Stockholders\u2019 equity (Note 9)" } } }, "localname": "StockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedBalanceSheet" ], "xbrltype": "stringItemType" }, "us-gaap_StockholdersEquityNoteAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Stockholders' Equity Note [Abstract]" } } }, "localname": "StockholdersEquityNoteAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_StockholdersEquityNoteDisclosureTextBlock": { "auth_ref": [ "r88", "r205", "r207", "r208", "r209", "r210", "r211", "r212", "r213", "r214", "r215", "r216", "r217", "r221", "r223" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for shareholders' equity comprised of portions attributable to the parent entity and noncontrolling interest, including other comprehensive income. Includes, but is not limited to, balances of common stock, preferred stock, additional paid-in capital, other capital and retained earnings, accumulated balance for each classification of other comprehensive income and amount of comprehensive income.", "label": "Stockholders' Equity Note Disclosure [Text Block]", "terseLabel": "Stockholders\u2019 equity" } } }, "localname": "StockholdersEquityNoteDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/Stockholdersequity" ], "xbrltype": "textBlockItemType" }, "us-gaap_SubsequentEventMember": { "auth_ref": [ "r334", "r342" ], "lang": { "en-us": { "role": { "documentation": "Identifies event that occurred after the balance sheet date but before financial statements are issued or available to be issued.", "label": "Subsequent Event [Member]", "terseLabel": "Subsequent Event [Member]" } } }, "localname": "SubsequentEventMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/SubsequenteventsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_SubsequentEventTypeAxis": { "auth_ref": [ "r334", "r342" ], "lang": { "en-us": { "role": { "documentation": "Information by event that occurred after the balance sheet date but before financial statements are issued or available to be issued.", "label": "Subsequent Event Type [Axis]" } } }, "localname": "SubsequentEventTypeAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/SubsequenteventsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_SubsequentEventsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Subsequent Events [Abstract]" } } }, "localname": "SubsequentEventsAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "xbrltype": "stringItemType" }, "us-gaap_SubsequentEventsTextBlock": { "auth_ref": [ "r341", "r343" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued. Examples include: the sale of a capital stock issue, purchase of a business, settlement of litigation, catastrophic loss, significant foreign exchange rate changes, loans to insiders or affiliates, and transactions not in the ordinary course of business.", "label": "Subsequent Events [Text Block]", "terseLabel": "Subsequent events" } } }, "localname": "SubsequentEventsTextBlock", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/Subsequentevents" ], "xbrltype": "textBlockItemType" }, "us-gaap_SubsidiarySaleOfStockAxis": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Information by type of sale of the entity's stock.", "label": "Sale of Stock [Axis]" } } }, "localname": "SubsidiarySaleOfStockAxis", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/StockholdersequityDetails", "http://www.gdyn.com/role/SubsequenteventsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_SupplementalCashFlowInformationAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Supplemental Cash Flow Information [Abstract]", "terseLabel": "Supplemental disclosure of cash flow information:" } } }, "localname": "SupplementalCashFlowInformationAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedCashFlow" ], "xbrltype": "stringItemType" }, "us-gaap_TrademarksAndTradeNamesMember": { "auth_ref": [ "r300" ], "lang": { "en-us": { "role": { "documentation": "Rights acquired through registration of a trademark to gain or protect exclusive use of a business name, symbol or other device or style, or rights either acquired through registration of a business name to gain or protect exclusive use thereof.", "label": "Trademarks and Trade Names [Member]", "terseLabel": "Tradename [Member}" } } }, "localname": "TrademarksAndTradeNamesMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofIntangibleassetsTable" ], "xbrltype": "domainItemType" }, "us-gaap_UnbilledReceivablesCurrent": { "auth_ref": [], "calculation": { "http://www.gdyn.com/role/ConsolidatedBalanceSheet": { "order": 3.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount received for services rendered and products shipped, but not yet billed, for non-contractual agreements due within one year or the normal operating cycle, if longer.", "label": "Unbilled Receivables, Current", "terseLabel": "Unbilled receivables", "verboseLabel": "Unbilled receivables (in Dollars)" } } }, "localname": "UnbilledReceivablesCurrent", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/BasisofpresentationandsummaryofsignificantaccountingpoliciesDetails", "http://www.gdyn.com/role/ConsolidatedBalanceSheet" ], "xbrltype": "monetaryItemType" }, "us-gaap_UseOfEstimates": { "auth_ref": [ "r125", "r126", "r128", "r129", "r132", "r133", "r134" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles.", "label": "Use of Estimates, Policy [Policy Text Block]", "terseLabel": "Use of estimates" } } }, "localname": "UseOfEstimates", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/AccountingPoliciesByPolicy" ], "xbrltype": "textBlockItemType" }, "us-gaap_WarrantMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Security that gives the holder the right to purchase shares of stock in accordance with the terms of the instrument, usually upon payment of a specified amount.", "label": "Warrant [Member]", "terseLabel": "Warrant [Member]" } } }, "localname": "WarrantMember", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/SubsequenteventsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_WarrantsAndRightsOutstanding": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Value of outstanding derivative securities that permit the holder the right to purchase securities (usually equity) from the issuer at a specified price.", "label": "Warrants and Rights Outstanding", "terseLabel": "Outstanding publicly traded warrants (in Dollars)" } } }, "localname": "WarrantsAndRightsOutstanding", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/StockholdersequityDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_WarrantsAndRightsOutstandingTerm": { "auth_ref": [ "r323" ], "lang": { "en-us": { "role": { "documentation": "Period between issuance and expiration of outstanding warrant and right embodying unconditional obligation requiring redemption by transferring asset at specified or determinable date or upon event certain to occur, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.", "label": "Warrants and Rights Outstanding, Term", "terseLabel": "Expected term in years" } } }, "localname": "WarrantsAndRightsOutstandingTerm", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofestimatedgrantusingtheblackscholesTable" ], "xbrltype": "durationItemType" }, "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": { "auth_ref": [ "r110", "r116" ], "lang": { "en-us": { "role": { "documentation": "The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.", "label": "Weighted Average Number of Shares Outstanding, Diluted", "terseLabel": "Diluted (in Shares)" } } }, "localname": "WeightedAverageNumberOfDilutedSharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedIncomeStatement" ], "xbrltype": "sharesItemType" }, "us-gaap_WeightedAverageNumberOfShareOutstandingBasicAndDiluted": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Average number of shares or units issued and outstanding that are used in calculating basic and diluted earnings per share (EPS).", "label": "Weighted Average Number of Shares Outstanding, Basic and Diluted", "terseLabel": "Weighted-average shares outstanding \u2013 basic and diluted (in Shares)" } } }, "localname": "WeightedAverageNumberOfShareOutstandingBasicAndDiluted", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ScheduleofcomputationofbasicanddilutedearningspershareTable" ], "xbrltype": "sharesItemType" }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": { "auth_ref": [ "r108", "r116" ], "lang": { "en-us": { "role": { "documentation": "Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.", "label": "Weighted Average Number of Shares Outstanding, Basic", "terseLabel": "Basic (in Shares)" } } }, "localname": "WeightedAverageNumberOfSharesOutstandingBasic", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedIncomeStatement" ], "xbrltype": "sharesItemType" }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasicAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Weighted Average Number of Shares Outstanding, Basic [Abstract]", "terseLabel": "Weighted average shares outstanding" } } }, "localname": "WeightedAverageNumberOfSharesOutstandingBasicAbstract", "nsuri": "http://fasb.org/us-gaap/2021-01-31", "presentation": [ "http://www.gdyn.com/role/ConsolidatedIncomeStatement" ], "xbrltype": "stringItemType" } }, "unitCount": 4 } }, "std_ref": { "r0": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "105", "URI": "http://asc.fasb.org/extlink&oid=124434974&loc=SL124442142-165695" }, "r1": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "205", "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=SL51721683-107760" }, "r10": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6935-107765" }, "r100": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794" }, "r101": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794" }, "r102": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22583-107794" }, "r103": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22595-107794" }, "r104": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22644-107794" }, "r105": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22644-107794" }, "r106": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22658-107794" }, "r107": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22663-107794" }, "r108": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1448-109256" }, "r109": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1377-109256" }, "r11": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e7018-107765" }, "r110": { "Name": "Accounting Standards Codification", "Paragraph": "16", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1505-109256" }, "r111": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1252-109256" }, "r112": { "Name": "Accounting Standards Codification", "Paragraph": "60B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=SL5780133-109256" }, "r113": { "Name": "Accounting Standards Codification", "Paragraph": "60B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=SL5780133-109256" }, "r114": { "Name": "Accounting Standards Codification", "Paragraph": "60B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=SL5780133-109256" }, "r115": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1337-109256" }, "r116": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257" }, "r117": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257" }, "r118": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=124432515&loc=d3e3630-109257" }, "r119": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=109243012&loc=SL65017193-207537" }, "r12": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(1))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r120": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125512782&loc=d3e3842-109258" }, "r121": { "Name": "Accounting Standards Codification", "Paragraph": "52", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "260", "URI": "http://asc.fasb.org/extlink&oid=125512782&loc=d3e4984-109258" }, "r122": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "260", "URI": "http://asc.fasb.org/topic&trid=2144383" }, "r123": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "272", "URI": "http://asc.fasb.org/extlink&oid=125520817&loc=d3e70191-108054" }, "r124": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592" }, "r125": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592" }, "r126": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592" }, "r127": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592" }, "r128": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6161-108592" }, "r129": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6191-108592" }, "r13": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(13))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r130": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592" }, "r131": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6404-108592" }, "r132": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6061-108592" }, "r133": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6132-108592" }, "r134": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6143-108592" }, "r135": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "275", "URI": "http://asc.fasb.org/topic&trid=2134479" }, "r136": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599" }, "r137": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599" }, "r138": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599" }, "r139": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599" }, "r14": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(14))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r140": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8906-108599" }, "r141": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8906-108599" }, "r142": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8906-108599" }, "r143": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8906-108599" }, "r144": { "Name": "Accounting Standards Codification", "Paragraph": "31", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8924-108599" }, "r145": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599" }, "r146": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599" }, "r147": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599" }, "r148": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599" }, "r149": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599" }, "r15": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(20))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r150": { "Name": "Accounting Standards Codification", "Paragraph": "40", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e9031-108599" }, "r151": { "Name": "Accounting Standards Codification", "Paragraph": "41", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e9038-108599" }, "r152": { "Name": "Accounting Standards Codification", "Paragraph": "42", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e9054-108599" }, "r153": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=124259787&loc=d3e4428-111522" }, "r154": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=124259787&loc=d3e4531-111522" }, "r155": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=123577603&loc=d3e5074-111524" }, "r156": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=123577603&loc=d3e5144-111524" }, "r157": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 4.E)", "Topic": "310", "URI": "http://asc.fasb.org/extlink&oid=122038336&loc=d3e74512-122707" }, "r158": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "323", "URI": "http://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571" }, "r159": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437" }, "r16": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(28))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r160": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=124255206&loc=SL82895884-210446" }, "r161": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447" }, "r162": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "326", "URI": "http://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447" }, "r163": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "05", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "340", "URI": "http://asc.fasb.org/extlink&oid=123349782&loc=d3e5879-108316" }, "r164": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "340", "URI": "http://asc.fasb.org/extlink&oid=6387103&loc=d3e6435-108320" }, "r165": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=99380562&loc=d3e13770-109266" }, "r166": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=120320667&loc=SL49117168-202975" }, "r167": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267" }, "r168": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267" }, "r169": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "35", "SubTopic": "30", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=121554622&loc=d3e15372-109273" }, "r17": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(29))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r170": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=6388964&loc=d3e16212-109274" }, "r171": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275" }, "r172": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(d)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275" }, "r173": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275" }, "r174": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "((a)(1),(b))", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275" }, "r175": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275" }, "r176": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(1)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275" }, "r177": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(d)", "Topic": "350", "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275" }, "r178": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "350", "URI": "http://asc.fasb.org/topic&trid=2144416" }, "r179": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "360", "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229" }, "r18": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(3))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r180": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "360", "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229" }, "r181": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "360", "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229" }, "r182": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "360", "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229" }, "r183": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "360", "URI": "http://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230" }, "r184": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "360", "URI": "http://asc.fasb.org/topic&trid=2155823" }, "r185": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "420", "URI": "http://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869" }, "r186": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "440", "URI": "http://asc.fasb.org/extlink&oid=123406679&loc=d3e25336-109308" }, "r187": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "440", "URI": "http://asc.fasb.org/extlink&oid=123406679&loc=d3e25336-109308" }, "r188": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "440", "URI": "http://asc.fasb.org/topic&trid=2144648" }, "r189": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "450", "URI": "http://asc.fasb.org/topic&trid=2127136" }, "r19": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30)(a)(1))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r190": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(i))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756" }, "r191": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(ii))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756" }, "r192": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756" }, "r193": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iii))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756" }, "r194": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iv))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756" }, "r195": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(5))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756" }, "r196": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(i))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756" }, "r197": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756" }, "r198": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756" }, "r199": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iv))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756" }, "r2": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765" }, "r20": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30)(a)(3)(ii))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r200": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(5))", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756" }, "r201": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611" }, "r202": { "Name": "Accounting Standards Codification", "Paragraph": "1E", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "470", "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611" }, "r203": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "25", "SubTopic": "10", "Topic": "480", "URI": "http://asc.fasb.org/extlink&oid=109262497&loc=d3e20148-110875" }, "r204": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496158-112644" }, "r205": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496158-112644" }, "r206": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496158-112644" }, "r207": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(g)", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496158-112644" }, "r208": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496158-112644" }, "r209": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(i)", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496158-112644" }, "r21": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30)(a)(4))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r210": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496158-112644" }, "r211": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496171-112644" }, "r212": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496171-112644" }, "r213": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496171-112644" }, "r214": { "Name": "Accounting Standards Codification", "Paragraph": "16", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496180-112644" }, "r215": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496189-112644" }, "r216": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496189-112644" }, "r217": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496189-112644" }, "r218": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=d3e21463-112644" }, "r219": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=d3e21475-112644" }, "r22": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r220": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=d3e21538-112644" }, "r221": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.3-04)", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=120397183&loc=d3e187085-122770" }, "r222": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 4.F)", "Topic": "505", "URI": "http://asc.fasb.org/extlink&oid=120397183&loc=d3e187171-122770" }, "r223": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "505", "URI": "http://asc.fasb.org/topic&trid=2208762" }, "r224": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(i)", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r225": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(n)", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r226": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(a)", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450702-114947" }, "r227": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(d)", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947" }, "r228": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(a)", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450673-114947" }, "r229": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "55", "SubTopic": "80", "Topic": "715", "URI": "http://asc.fasb.org/extlink&oid=35742348&loc=SL14450788-114948" }, "r23": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(31))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r230": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5047-113901" }, "r231": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5047-113901" }, "r232": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5047-113901" }, "r233": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a),(g)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r234": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b),(f)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r235": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r236": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(i)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r237": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(i)-(ii)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r238": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(ii)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r239": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iii)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r24": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(32))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r240": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(2)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r241": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(3)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r242": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)(1)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r243": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r244": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)(1)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r245": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r246": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)(1)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r247": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)(2)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r248": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r249": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(ii)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r25": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(4)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r250": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(iii)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r251": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(iv)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r252": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(g)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r253": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(1)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r254": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "c(1)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r255": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901" }, "r256": { "Name": "Accounting Standards Codification", "Paragraph": "2A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=SL79508275-113901" }, "r257": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333" }, "r258": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(f)(1)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333" }, "r259": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(f)(2)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333" }, "r26": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(4))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r260": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(g)(2)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333" }, "r261": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "40", "Subparagraph": "(d)", "Topic": "718", "URI": "http://asc.fasb.org/extlink&oid=109244661&loc=d3e17540-113929" }, "r262": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "718", "URI": "http://asc.fasb.org/topic&trid=2228938" }, "r263": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "730", "URI": "http://asc.fasb.org/extlink&oid=6420194&loc=d3e21568-108373" }, "r264": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=123427490&loc=d3e32247-109318" }, "r265": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=123427490&loc=d3e32280-109318" }, "r266": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=123427490&loc=d3e31917-109318" }, "r267": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=123427490&loc=d3e31931-109318" }, "r268": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32672-109319" }, "r269": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32687-109319" }, "r27": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(7))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r270": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32705-109319" }, "r271": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32809-109319" }, "r272": { "Name": "Accounting Standards Codification", "Paragraph": "19", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32840-109319" }, "r273": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32847-109319" }, "r274": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32857-109319" }, "r275": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319" }, "r276": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319" }, "r277": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)(2)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=123459177&loc=SL121830611-158277" }, "r278": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)(3)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=123459177&loc=SL121830611-158277" }, "r279": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB TOPIC 6.I.5.Q1)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817" }, "r28": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(8))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r280": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB TOPIC 6.I.7)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817" }, "r281": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 6.I.7)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817" }, "r282": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 6.I.Fact.2)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817" }, "r283": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 11.C)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330215-122817" }, "r284": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=123586238&loc=d3e38679-109324" }, "r285": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "270", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=6424409&loc=d3e44925-109338" }, "r286": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "740", "URI": "http://asc.fasb.org/extlink&oid=6424122&loc=d3e41874-109331" }, "r287": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "740", "URI": "http://asc.fasb.org/topic&trid=2144680" }, "r288": { "Name": "Accounting Standards Codification", "Paragraph": "23", "Publisher": "FASB", "Section": "25", "SubTopic": "10", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=123586518&loc=d3e1043-128460" }, "r289": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463" }, "r29": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.1)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r290": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463" }, "r291": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)(1)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463" }, "r292": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(g)(1)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463" }, "r293": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(2)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463" }, "r294": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(3)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463" }, "r295": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463" }, "r296": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=79982066&loc=d3e1486-128463" }, "r297": { "Name": "Accounting Standards Codification", "Paragraph": "37", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=123455525&loc=d3e2207-128464" }, "r298": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=123413009&loc=d3e4845-128472" }, "r299": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=123413009&loc=d3e4845-128472" }, "r3": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765" }, "r30": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.13)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r300": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=123410050&loc=d3e5263-128473" }, "r301": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=123410050&loc=d3e5263-128473" }, "r302": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "805", "URI": "http://asc.fasb.org/extlink&oid=123410050&loc=d3e5333-128473" }, "r303": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "805", "URI": "http://asc.fasb.org/topic&trid=2303972" }, "r304": { "Name": "Accounting Standards Codification", "Paragraph": "19", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=123454820&loc=SL4569616-111683" }, "r305": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=123454820&loc=SL4569643-111683" }, "r306": { "Name": "Accounting Standards Codification", "Paragraph": "23", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=123454820&loc=SL4569655-111683" }, "r307": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988" }, "r308": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988" }, "r309": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=d3e5614-111684" }, "r31": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.14)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r310": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(1)", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684" }, "r311": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684" }, "r312": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(3)", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684" }, "r313": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c),(3)", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684" }, "r314": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684" }, "r315": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4582445-111684" }, "r316": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(bb)", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=123419778&loc=d3e5710-111685" }, "r317": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=123419778&loc=d3e5710-111685" }, "r318": { "Name": "Accounting Standards Codification", "Paragraph": "4J", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=120409616&loc=SL4591551-111686" }, "r319": { "Name": "Accounting Standards Codification", "Paragraph": "4K", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "810", "URI": "http://asc.fasb.org/extlink&oid=120409616&loc=SL4591552-111686" }, "r32": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19(a))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r320": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)(3)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011" }, "r321": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)(4)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011" }, "r322": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)", "Topic": "815", "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011" }, "r323": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(bbb)(2)", "Topic": "820", "URI": "http://asc.fasb.org/extlink&oid=123874694&loc=d3e19207-110258" }, "r324": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=123594938&loc=d3e13531-108611" }, "r325": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=123594938&loc=d3e13537-108611" }, "r326": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "825", "URI": "http://asc.fasb.org/extlink&oid=123596393&loc=d3e14064-108612" }, "r327": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "230", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=123444420&loc=d3e33268-110906" }, "r328": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32136-110900" }, "r329": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900" }, "r33": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19-26)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r330": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(b)", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900" }, "r331": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(c)", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900" }, "r332": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(d)", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900" }, "r333": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=6450520&loc=d3e32583-110901" }, "r334": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "830", "URI": "http://asc.fasb.org/extlink&oid=6450520&loc=d3e32618-110901" }, "r335": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "850", "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864" }, "r336": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "850", "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39549-107864" }, "r337": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "850", "URI": "http://asc.fasb.org/extlink&oid=6457730&loc=d3e39603-107864" }, "r338": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "852", "URI": "http://asc.fasb.org/extlink&oid=124433192&loc=SL2890621-112765" }, "r339": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "852", "URI": "http://asc.fasb.org/extlink&oid=124433192&loc=SL2890621-112765" }, "r34": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.20)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r340": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "852", "URI": "http://asc.fasb.org/extlink&oid=84165509&loc=d3e56426-112766" }, "r341": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "855", "URI": "http://asc.fasb.org/extlink&oid=6842918&loc=SL6314017-165662" }, "r342": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "855", "URI": "http://asc.fasb.org/extlink&oid=6842918&loc=SL6314017-165662" }, "r343": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "855", "URI": "http://asc.fasb.org/topic&trid=2122774" }, "r344": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(1)", "Topic": "860", "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719" }, "r345": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(2)", "Topic": "860", "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719" }, "r346": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(3)", "Topic": "860", "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719" }, "r347": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(1)", "Topic": "860", "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719" }, "r348": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(2)", "Topic": "860", "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719" }, "r349": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(3)", "Topic": "860", "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719" }, "r35": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.20,24)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r350": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "910", "URI": "http://asc.fasb.org/extlink&oid=123353855&loc=SL119991595-234733" }, "r351": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "25", "SubTopic": "730", "Topic": "912", "URI": "http://asc.fasb.org/extlink&oid=6472174&loc=d3e58812-109433" }, "r352": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 11.L)", "Topic": "924", "URI": "http://asc.fasb.org/extlink&oid=6472922&loc=d3e499488-122856" }, "r353": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "926", "URI": "http://asc.fasb.org/extlink&oid=120154696&loc=d3e54445-107959" }, "r354": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "340", "Topic": "928", "URI": "http://asc.fasb.org/extlink&oid=6473545&loc=d3e61844-108004" }, "r355": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "50", "SubTopic": "235", "Subparagraph": "(a)", "Topic": "932", "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e61929-109447" }, "r356": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "50", "SubTopic": "235", "Subparagraph": "(b)", "Topic": "932", "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e61929-109447" }, "r357": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "235", "Subparagraph": "(a)", "Topic": "932", "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e62059-109447" }, "r358": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "235", "Subparagraph": "(b)", "Topic": "932", "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e62059-109447" }, "r359": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "50", "SubTopic": "235", "Subparagraph": "(a)", "Topic": "932", "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e62395-109447" }, "r36": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.21)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r360": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "50", "SubTopic": "235", "Subparagraph": "(b)", "Topic": "932", "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e62395-109447" }, "r361": { "Name": "Accounting Standards Codification", "Paragraph": "33", "Publisher": "FASB", "Section": "50", "SubTopic": "235", "Subparagraph": "(a)", "Topic": "932", "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e62479-109447" }, "r362": { "Name": "Accounting Standards Codification", "Paragraph": "33", "Publisher": "FASB", "Section": "50", "SubTopic": "235", "Subparagraph": "(b)", "Topic": "932", "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e62479-109447" }, "r363": { "Name": "Accounting Standards Codification", "Paragraph": "35A", "Publisher": "FASB", "Section": "50", "SubTopic": "235", "Subparagraph": "(a)", "Topic": "932", "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=SL6807758-109447" }, "r364": { "Name": "Accounting Standards Codification", "Paragraph": "35A", "Publisher": "FASB", "Section": "50", "SubTopic": "235", "Subparagraph": "(b)", "Topic": "932", "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=SL6807758-109447" }, "r365": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "235", "Subparagraph": "(c)(1)", "Topic": "932", "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e61872-109447" }, "r366": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "235", "Subparagraph": "(c)(2)", "Topic": "932", "URI": "http://asc.fasb.org/extlink&oid=123377692&loc=d3e61872-109447" }, "r367": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "25", "SubTopic": "20", "Topic": "940", "URI": "http://asc.fasb.org/extlink&oid=123384075&loc=d3e41242-110953" }, "r368": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(10)(1))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878" }, "r369": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(11))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878" }, "r37": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.22(a)(2))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r370": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(15)(1))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878" }, "r371": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(23))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878" }, "r372": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(15))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260" }, "r373": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(22))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260" }, "r374": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(26))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260" }, "r375": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(27))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260" }, "r376": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.9-05(b)(2))", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=120399901&loc=d3e537907-122884" }, "r377": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "360", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=124429447&loc=SL124453093-239630" }, "r378": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "825", "Topic": "942", "URI": "http://asc.fasb.org/extlink&oid=123345438&loc=d3e61044-112788" }, "r379": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(12))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r38": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.29-30)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r380": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(15)(b)(1))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r381": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(23)(a)(3))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r382": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(23)(a)(4)(ii))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r383": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(25))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r384": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(8))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910" }, "r385": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(18))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263" }, "r386": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(22))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263" }, "r387": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(23))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263" }, "r388": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(8))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263" }, "r389": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(9))", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263" }, "r39": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.29-31)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r390": { "Name": "Accounting Standards Codification", "Paragraph": "7A", "Publisher": "FASB", "Section": "50", "SubTopic": "40", "Subparagraph": "(d)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124506351&loc=SL117782755-158439" }, "r391": { "Name": "Accounting Standards Codification", "Paragraph": "29F", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124504033&loc=SL117819544-158441" }, "r392": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r393": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)(1)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r394": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)(2)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r395": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(g)(2)(ii)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r396": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(h)(2)", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r397": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "825", "Topic": "944", "URI": "http://asc.fasb.org/extlink&oid=123600520&loc=SL75241803-196195" }, "r398": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "310", "Topic": "954", "URI": "http://asc.fasb.org/extlink&oid=123364037&loc=d3e3115-115594" }, "r399": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "440", "Subparagraph": "(a)", "Topic": "954", "URI": "http://asc.fasb.org/extlink&oid=6491277&loc=d3e6429-115629" }, "r4": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(g)(4)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765" }, "r40": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.3(a)(2))", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r400": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "360", "Subparagraph": "(d)", "Topic": "958", "URI": "http://asc.fasb.org/extlink&oid=120429125&loc=d3e99779-112916" }, "r401": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "360", "Topic": "958", "URI": "http://asc.fasb.org/extlink&oid=120429125&loc=d3e99893-112916" }, "r402": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "360", "Topic": "958", "URI": "http://asc.fasb.org/extlink&oid=120429125&loc=SL120174063-112916" }, "r403": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "360", "Subparagraph": "(SX 210.12-28(Footnote 4))", "Topic": "970", "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024" }, "r404": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "310", "Subparagraph": "(c)", "Topic": "976", "URI": "http://asc.fasb.org/extlink&oid=6497875&loc=d3e22274-108663" }, "r405": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "310", "Subparagraph": "(b)", "Topic": "978", "URI": "http://asc.fasb.org/extlink&oid=123360121&loc=d3e27327-108691" }, "r406": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "985", "URI": "http://asc.fasb.org/extlink&oid=6501960&loc=d3e128462-111756" }, "r407": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "b" }, "r408": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "d1-1" }, "r409": { "Name": "Form 10-Q", "Number": "240", "Publisher": "SEC", "Section": "308", "Subsection": "a" }, "r41": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.3,4)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r410": { "Name": "Forms 10-K, 10-Q, 20-F", "Number": "240", "Publisher": "SEC", "Section": "13", "Subsection": "a-1" }, "r411": { "Name": "Regulation 12B", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "b-2" }, "r412": { "Name": "Regulation S-T", "Number": "232", "Publisher": "SEC", "Section": "405" }, "r413": { "Name": "Securities Act", "Number": "7A", "Publisher": "SEC", "Section": "B", "Subsection": "2" }, "r414": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)(3)(iii)(03)", "Topic": "848" }, "r42": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.9)", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r43": { "Name": "Accounting Standards Codification", "Paragraph": "10A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669646-108580" }, "r44": { "Name": "Accounting Standards Codification", "Paragraph": "10A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669646-108580" }, "r45": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=d3e637-108580" }, "r46": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=d3e681-108580" }, "r47": { "Name": "Accounting Standards Codification", "Paragraph": "14A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669686-108580" }, "r48": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669619-108580" }, "r49": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669619-108580" }, "r5": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765" }, "r50": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669625-108580" }, "r51": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669625-108580" }, "r52": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=d3e557-108580" }, "r53": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124431353&loc=SL116659661-227067" }, "r54": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124431353&loc=SL124442407-227067" }, "r55": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124431353&loc=SL124442411-227067" }, "r56": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=124431353&loc=SL124452729-227067" }, "r57": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(1))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r58": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(10))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r59": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(20))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r6": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6787-107765" }, "r60": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(24))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r61": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(25))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r62": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(4))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r63": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(5))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r64": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(b)(4))", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r65": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.1,2)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r66": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.2)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r67": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.4)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r68": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.9)", "Topic": "220", "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227" }, "r69": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3213-108585" }, "r7": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6801-107765" }, "r70": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3213-108585" }, "r71": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3255-108585" }, "r72": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3255-108585" }, "r73": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3000-108585" }, "r74": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3521-108585" }, "r75": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3536-108585" }, "r76": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3536-108585" }, "r77": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3602-108585" }, "r78": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3602-108585" }, "r79": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3602-108585" }, "r8": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6904-107765" }, "r80": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3044-108585" }, "r81": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123431023&loc=d3e4273-108586" }, "r82": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123431023&loc=d3e4297-108586" }, "r83": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "http://asc.fasb.org/extlink&oid=123431023&loc=SL98516268-108586" }, "r84": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=123372394&loc=d3e18726-107790" }, "r85": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=123372394&loc=d3e18823-107790" }, "r86": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=123372394&loc=d3e18823-107790" }, "r87": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=123372394&loc=d3e18823-107790" }, "r88": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(e)(1))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r89": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r9": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6911-107765" }, "r90": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(h)(1)(Note 1))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r91": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(h)(2))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r92": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(h))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r93": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(k)(1))", "Topic": "235", "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r94": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "235", "URI": "http://asc.fasb.org/topic&trid=2122369" }, "r95": { "Name": "Accounting Standards Codification", "Paragraph": "23", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124436220&loc=d3e21914-107793" }, "r96": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124436220&loc=d3e21930-107793" }, "r97": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124436220&loc=d3e21711-107793" }, "r98": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(2)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794" }, "r99": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(3)", "Topic": "250", "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794" } }, "version": "2.1" } ZIP 73 0001213900-21-040534-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0001213900-21-040534-xbrl.zip M4$L#!!0 ( />#!5-A'0>EE1D" )\F%@ 9 9C$P<3 V,C%?9W)I9&1Y M;F%M:6-S+FAT;>R]:7/B2+8P_)U?D9<[?9^J"-EFMUV+GZ"]5'N>*NRQ7=.W MWR\30DJ,NH1$IR2[Z%__GI.9$@($6A"+L"9BN@QHR3S[EN=\^K\_1R9YH>>.WI,C,G3=\8>3D]?7UV,-KG$T@U'']IA&'?R"'!W)QUTR MB@_[0)Z&'NEZSZ36)O7S#\W:A\89^?YT21JU1EU9WUBS=R$7^#;^9-KG6;-O])P[%:C?AK]AD:MUCR15P0W_%QV;1VN MM4S#HO_[Z\/7Z>5N]/732T]<'TVJ"XC&)[6/:HVC1B?TD", S\R#?'#%/>?L MJ!F !:[\L6*G^'-?=:A_N<.F:Q^H3I]?"5]R("+ IT_VG*-G51TO7BY_B+X% ML>=$WL-_B;@)%ZS/$8YNC-J0C]6AA)8Z1_J[EZT$X],J,N MA*?BQ6D$^G8@_*I5/(^JJ1+,MEUI M)2[]Z9Z(%^'3C^A?GO'RN7HI?C]Z G16R0E(BQ/QU$]]6Y]?24/]DBU%/&%0AXI,P95?A>NX 3__33V'S!2V;-A M';GV^ .I?23R8]]V77O$O\$U'JFF\6Q](']ZCFL,)A])BM>>C.=>C8+RQJ F MB,D'SZ1']^HS19D8WM:KH;M#?$'ME^K"?H\'WY_>'VZ?;ZL=+M79'K_[W\K=O[:^?^\^_G;;^_)TUU,J5\>7QV#PM%OG![A7GR\/95,MB<"; MNX=OE4_&SP^6;?6\$5RH"77UTWV@@\]5#4Q U':?JV!P?KBR-;C&5_:C<6?3]_B!M-2$*H_US%0S]#WW;-JEJN+I^^/I'Y>'Z_N[AB=Q_ M?WC\WNT]D:<[ CKB"10!J3?)W0.IM]_I[\G=#7GZ[9I,U<=4=70OG_#G^GFS MM3_X*9DJA@)N;%9QAY3\Y=,?&O%/SZ("M,V:$O>VQ:?=&(ZFFG_ VV[@&Z=Z@:[EHH@O17X1 M-P74>?=0(FN_]-= -9U(!<:#D@9&J&8T6&O#&NSIH=M[O$4]5:JP'=$=7_Q\ M@"!8/E"]XI;JQ M[P<5;8LU7+4/XD:CICE6=9%K!BK%SY@9\C^GWG@H$Q(D-#3;--6Q ROS_ZJ" M-G)9^J>_4.8:X.+Y4!/@K((:=G7_:=%9E./V-,^2>C>M\U_6-9@QL_O!<<'+ M'3/[!87!K$,LA +PI\W&TGQXQ*LO;<]RV>32UO.2$;[FN:*F^@I^^4IYX.HS ML$T-N<8RP&V*S.<6O$?$,(_K)_7GK0ZW@BS2.+Y]_9TKEL^:1[5.LW'::,7A M&?[#,K%E-2.)S#,S",LE@"VF '['&;@"[HX-_@XC?WK,<'1#0UR'Q#+9[?:2 M81BTJ!&6301WQ9Y5R_B;?YY1GMFE1K1\WZT(*0DZ(.C;XX?CQ^/*]6ALVA/* M]H>(,V]I5@)7>O;Q B5+N7C"#:;=N=(+E16%-DY!,Z54EUU=9]1QY#]?#8O6 MJQ?M6JU6N?Y)-<\U7BBY5]F/5W4RK]Y29!*6O:M1O7CT#)>2=J/V!MSJS.BY MA#_OV)/]:@' 5*ORH(Y0V>6##ZY/[]@]&- &EL1=7'87H\F9GGQO@VEN_G_& M6-C9YZWV6?,-H/F=W'X%U/N8 4R-L6H2&O"3/0#)2)TWYAD7S]/[^S1OWTHU-Q MJ4G'" ]B<8 H:#J;'L98"/C;6$^KTY*G"K IK(P$6<@,UZ!.A7%44T9U,O:8 MXV$\T;7A9N[1D7KC7?\]AALQN=75W \'2.YE3#&W,%+S;..A,601@B?/+7^Y^J-7HF\SZ)O/)*)H M6DPB^AQ\+057CI4%'"I/8-GVNH]7W7\)3B98@D]=\O7K94$S2[F!YH'JE(ZX M_?NJ,O0'X6+ZDS+-Q))L_OMPUKG87EF"FS M=,R2T4I_0K0A!93 (GZ 74QYJ:<(56 ON MP+]_>08&4ER;]*F\ !XL8RGBUGH3L\RB2EN$52K3: SQ=1R&6O!GK-(F.OP* M3A4N9LRH1KF+56\0?A#%(>_@>5P.>V#+.T,;R[[\XF-W"&)X;A>OZNQ2<9T5 M?K/!-_'JX$Y(<)X^[B@3&I<<8/$T4V:-9YZHNGGSY@SH+N1%YAFRQ5+AGDZ Z/[]XU;Y2 M1>(%NAT9+C:8H2;0+[,M%/SF!&P9T (3/9%WB))328R-9N-87N8.#0<6 MKHZQ/',-YJXD86ZQZH!=J?/^.&TV,00=!([DS9(92V9,S8Q ^"HQ8964J)H& MS"C:/B%A,E0ZD=\2(+"CR!^<$7 QO(7Y>J*"79M4"Q@;6 :]#R#+9V2H9V:_ MND,B?SZ&[5"^-IT.#(L?U^$.#&:[&K6/RU;(?ZY_]"];>D%%7K"P/G\!P9-0 MS\J+EZS5O]*PA*RI-_I'#3\A$S87CG>:E=D^$QUL6N9U:+CTB';3:+*_=%X8I?R@CRAUYT2FI -L]16&& N:Y,A MP'%=^8'L4MHE@ MI,! $1^EZ;$K(+YI_*M!7M^<2#RG+? M$^LFA'7/Z<-5T1/I:4-5]Z8\[NI77],_J!.1=)59.0R/\<2EQEOTI>DG&17LRUY9D@4?$4>S^MZ MS[ ?&8%7>.-W!0F 4?**_Y&(O>'A;9!L,YBM5X&(- /L9.=S];9W,XMHRQOI MMBLOB,A@\5((GN5]Y/41=Y[+Q2O(V2K!AFZ4QZ<\RQ"O$U44U8M.0ZG7Z\I9 M,VCQYJ_N(E1IP18+]+50,1HPA>-A=M+2B3U]\?&VH+__Q).));;=13OHDKVD MBW;097N77;37DRI)O<."4 &"^".\XR^/6N@8U*?PYKWHQ0TA(@BOHQ.QCDZ( M,I86'H?/7H>X<\;8#MZ\;"5C6/I1GU'UQU&?@J2#U:OFJSIQ9H&U9)'9EQ F MTSV@T(,[D?S4_?7K=>7NAES>]9ZN>T^[;_9>YHK6BF4)Y@E%(L0JYANX[%G\ M8E)J'H[COQDG\YE>0J0U NYW8V9'GA:!]V]\QLS]*1 MC6SV@;#G_KM&K:4TFF=*H]U^'Z)^N (7\[G:"#AW;^@(CRVK9,C0L/]O]3^U M6KUZ<=]]>"*WQ^3FMM?M7=YVOQ+P*>X>OG6?^" *]6(>P/Y.\R&T*.K:/.TL MC4/F23:+(G%O".'6I2/@UU4296_6.DNQC>K%31 CY#TJ1'WG.\]2/=UPJ?Y> M$.UA$6Q]GT3N_#W<3AGCU_##AI;\:VB;X# Y,BI.KO_R#'=RB+S0+,5ZX2B]DY32 M56=(;DS[]2"E>*N4X@=(VZ=8B>G" UR;+"'R*'_R$ F\_79%,X]W-(H8[SBK M7GQ3+?69DZ6?5"=7AJ-Y?) )-S&ZEFI.'(,+Z2DU([F+$BR\YH$ZGBGD^-V8 MBL;2!TGFC3)6$L<)S2)RPGGUXE]8\F> D$9O$HD:OC#]S\@3INUX6(K2[=N> MZ[#"<'X=(Z,U-6RS[3L:M I)QO<:-;9?9I@B1W#-;HSI2[4'2:*<4Q@=A M52]?:I')<]MYP"(EA^M!W M-#E,I7OZQ@W#>K>(Y-FL7J"K0FY4S;5929EO4[(6,4I5;U4OOENAEOV/JBD. MA(A$%PFUDD.?Y[O#6VY*,7R0E-YYPXFPPL:8ZNWJQ14=J)[IDN]C/+5$+<-F M(?(M2?5-"N5"1IHZU8MOAD5!& \HR.!0?+2DX@,4N.TBTNAI]>*.GYZ^M<0I M5CZNM:3.-RAC.T6DW[/JQ?7/H=$W#K-DH/.&4TQE<+X,Q1;X;%?]O'KQ>/NE MUWWZ_G#]>*CA^DY44=,A-9/:4D. QD=R-^8E01]P+;*ETD?R;QP<]6%G_0)" M^XZBKRA8"-!::$R:R5@P!!8?(!_)TV0,^_YJOU+&[_I(<+Z/ %S/1G 8,RT" M_#LYH,K&!L7@E%4_N6I..W G! Q!P0'%MZ N(%KCO[%6S6IAL4' MCKRJ3#\R;?N';&+GE])C\SO#XAV_1E2U\%?9 &Q 04""W'*F\7)3?845B8F( MTV=4#.O%-E_X^ =LH^1BP2J85OA-TP:F+W M/YR\XKD>HSB$@A?^,V)[S/\R:-!7P>]%(2D\$?[@_CN\=^7KQ'!FRN?3A+[F M(R-4>#SV$P0@NS9#NX$,5,T5.]( A7U*#.SG9 P,JF,7-D##R!%#)%0G:'\/ M%^!L=1Z8^_Z5#Z8^%*RG0U"C\:+^G/OTY!IVY<#U@ M@%KZPM'SJ MR&J6DC2CD+XW)1(35N7R62)*F"U4+/S\<&AR)\\V,C/-87(% ^PX#\\,7L%; MT\SW-JD=-Y9U>4SE<7%'86-/SQ'GYYW3\UGW=P]##S@HC"3]'P6=Y?$3"5+? MZ<:SX8*,=J;DF+PQX,+!*F^Z/+5/T%S$%P&DI+$IA40J+8@F+$;K#\'\^STVG?WDH.7 VBVA<#,ZN1V53_)*Y2^8N MF7OOF7L^)"7ZB@08"!43@A@,\;^8$#YM%]S M @2&+1'X%7*,#=Z@.HX-)\577Q1EA7*TSRF-O0>JMY.:2FTMN+A(W M#SS&3VJ-J45=$3?WL"K(<'BTS>=LTE<=6G)WR=TE=Q>)NX/L&"^0L4=CZAJ\ MK6)0?L,+,D,)=?49ZUQ=/L$93'@<^HGUG>E*<0Q+!VBQ22DP2H%1"HPB"0P7 M'FM.N&T?CLSS$<(B&J^KL(\9&V%:RE?R>\GO);\7B=\-R[)?T.I'?>]7P7%& M#ZIR\4.?R=J[D; J>%$>%MWX @/6:%%6\G_)_R7_%XG_?0=!0>8'1>XJ0O=; M0SZH#O5\GW&]S^OW72!FN,@#GP&N'P/)E#J_Y/F2YPO%\YHZQD0,Y#\;&AFKS+5$=K[DYY*?2W[> M4&FZ9F;EKTBGTE^+$W3_171IO<=\Y+EBY9NF3I(JEH63:'KC2S5+2S M5=,LG>B2CTL^+A0?,]5P@D-JX#W+SD^BL+UDYY*=2W;>"3O[YT13M*_Y.<;Q MT?!0T9**E[UA4(QBX0N>-Z4JT\19-.E@XPDTA3A\' I^+4)G<*.(GLON:RGD MBCXR+(-[[5B7W%U,FQ\/I4M]SP^JRT/J8V8/#*3G2?A,#/+]#SHA=#0V[0DM MM7G)[R6_%T&;\Y:_5"=^T#Y4#"MT?)!<4[6_/$.<>.6_^,TNE&DEG MJN OXR?-'HUL7*@-TM/O'?6J,G$HS>9W)W]]K_MXU?W7V]; I:PH9<6NEJG9 M3IH*&#&X!$=!@"7..\B3L=S&;,2TXN.7DWG"RR8\EY&4^*C;GDY8+$QL:VXQB^%8_#O5XI&:HO%#0TM61D?,(G M01G8=IVK;FPN09G#3Y7S(!J&UB;$YEUG*%QKCPQ-2=]1EJ?:3^S9MA8X6^38S!DV3>5+AS M_@2^/ZE<)!_@.3>!%JZIR#(IWY:4DUPY=PAC470@"$R^Z5"0X)BR$EU=I-' T+>]FSLO 4;DHLYI%O%H8 MN)$&*0Y4#5Y:,:R$:L&?WLKST:9#7^$%\>* H^V8? /Y8X/=H_!.+X%.K,SJ M1-@C>X;M,WO$.[OX+:%$^P<7-X]T*OP D\.)> Y>)4F2"[)E&I>CF4_E%02J M6A5C-,9>LC9Z#Y-58$])IYP+--7"U:J.@V0W(XXES2B2!@3*-(-IW@@'+V/? M&T8'IG!7_-K^5;.?8=OHZVA#)&"=CU?6@#7$@U71,L-_*?%?:K/*[#L%<'0# M:)\1G$C,##P>)!$R2SBX+#XD>?FZ2BU0B%WUJ,%-VE<<@LPX)]BR*2MSD#6 M@$><(AW0#8$'CLS'QR$BH:F:J#Y#;]BD+N5#5T#.\8<-8L5:2$!4\C!"A+*0 MP\=MRQ1GWUY\!>8/BA6_RCGH^$UXZ#.C_%VFS?*H.X/;0%@9)GHOH"A[-Q7!X(*Y$)I<:C)=7 MV .0SM.YYWH@-NA/C8Y1KL'#_O(,)B(JIOK*0>6;ED+H8-A%""7^>#&/G!\_ MM*3]P&95MVXXFFD[7+Y4^(CX%:8($!R*U9 ) R_0.+H\%+*F(=H("5-A%?G= M+?Y>";U)MZ6!)(#'M^)/42>^$A'4+JV,<'&60KA>0ST,V_.G%#C<='"9!X#" M_F;P^4^PT%V"8(9'@'8(MT] <1V>0(0&"\)Z!%19"MI"[.K6JF"T2IB-(>KB M9H$TO*9F:-C><@QXH\K"-_FTR"U4,1-'CJHS+,%9EC0U3(KM=7VS\;CRQ(5Q MF(^8;ZUSXS\L%M07%5Z,MA:*ND7AF43R"",$A"P\Y956?"N;&P_A=^%?\ 98 M,3_%@"^%51EB9 ^_>KIF9?%V9(8^EG.,#%>80&#T2G6D^/4;8:8.B8T^PDG5 M14M"$9>9C3"CO>]Q:PQH@?X#$L-+,M%STSWYJ5W=!0%-A,7":=?BJV@[B"]<(]4Y?. MG7MZ*3,VN:LTU9^MLOIS9?7G&RC_W FGY5+^R?^C$D/_7%7_4ZO5D?;5BRWN M3Q!IGH+D4__BOOOP)#9^6T$]7&]\)#>WO6[O\K;[E=SV;NX>OG6?;N]ZGT[Z M%WLBP94 Y1L#$SNO'E9L@T/<8*,P2UMUOMY>/Y+>[KU>WO2^/"K#UY?'.D;R1'7_O=;]?W3Y=7U4N[WI7U[W'ZRL" M?SW>?;V]ZL+7Y-?N5Y!MU^3QM^OKI\?#!,([<+]<,/D=L)ZG40Q>[BV"]506 M?Z-KH[[?.1#VO*I"6IF:;9KJV(%7^']]))D*+JIH.X7**>:+) 2 L/E<[517/##*1HXWNKOH M.L\O-W)M$G/AE\XLER?C]PE:C?RA]4_/HJ194S[UV:9TFBWWR_B3HKET\XOLX1ITH$[I7W\!'14 M/VYPVK]4'=%[2,,_,-[_HIK"'(ZL*JO_$LTO\U M-'Y^L&SK!L>!8@ 0<[1PU0,=?*YJP)8ZU8R1:CJ?JT?-*A&!ML]5XZ?[P?)& MNNW*WZO$4D?P,L\Y>E;5\0?<<=?2\9_KZ7:[[J7*V 0@Q&,U53&3Z',5GNQ9 MAGBIYP [=$Z5\]/6IY/9Q2TKPHL&1+3 VC,(-W<%X7J]H9RVVOF!.#G;+3(5 M?[)AZ12MG*/S\0(G-6J2D[J:!OS*(_<:A4V#K875$")Q9)KVJ\A5#<@_-D38 M7?\E-S:[LKV^._!,?U$/P9JD3%P._D9M$?1<0JQ>=W9RR6G=K?I9Q+IY/@.- M#:EL:PHW-OB&%O0P5\$\;3?V9Y.M%/L1I:NK&'Q[,FX1?#WJQF/^7*FUZ[%\ M%[?=78!J#>K+!*IZ1SD[KZT)JLV: XE-@.]6WS!-JH<$UVI;:6_)WM_)%)=. M+":;ROGYZ1NC^2QPJBNGY^=;(_@UR/F>T;%JZ"([3(FK_BPJ.<_=C*-UOZ!HJ#-8B/=^548657D=<4".YEY/N M25MAL&L!/W!9[A!X(N 1*Q#;2O,\WDE9@M&DT#HL3*W-\-DPU5":G7A)D E3 MF]1HX@!?]>+)=O%$0O)8UMXJM(3XJM=.E5;GK1EE28'3;"F=>J=0B@U5E1CG M*4Z7_.49LLFY1=UBDK*_H7M3M5R01]?^GL![7*4S8-5OC*ZS0:JEU!)HU^T) M9ZSN=7&4):90A0PN,/5.]R*D#J#B^J<\0?;%MG4\<+0J0J@T6XTW1L;K@>Q, MJ3>V1\[YR.PK.J ,3W^ "UUHL\/?R"V/"'"G,:4%V5+..NNBKV@$OS[4VDJG MMLN0T1+GR>?6P_:ULK-+O#1KMI5&@F!@Z?OFPHCQ^*B#2Y @&[%A#S>+UHFI MJ5D1%?/]XN@(UWK%/XF)(,'R(Y+R:S]W&U[Z"FH[;2KU9C,KN26"V29*N@X! MJ^N&%U9E-$\!JYD#FJFQFD6Q;\>>BK]PB\9=EL7L7&17+[X:HAVW(;,2&/)Q M-UU,\880E\1_\ZL?S2DN]G#/>[68/:G("$K)QNH$L_/9(+6@H;9??W0OUI\@ M0],Z6]=3W#IXUJ\Y2@J>T_:ZR9"M5%[ MIA']2T*G,V1+VXDI,3\R$?HJU45 M&:VU:\.*%BU:$V2=QF+Q9E%%-^%*+3S2;WXA79R)Z%(=X)RR+/F&Y7QZ<#4:!55 MLB+,'T.,YR=G=GFC8)8&D+,;:A\ZU"QDYW'4V.GJ31J\=5(!2FN M*[SGD@9SC;92;[\UPRR5Y=I4FA&'RO9!>^UO"&VO%K,9"3*G(V;J9$H#('UA M28@G8VH"SSOQ96>E(;"9\I^D6&J NY\Y.;SGB:VE7H P(U8P_^J.'9ER;(ES MY#LQ/U98C#6EGN!D5IXPV&-@YV+*K+!AVDJKO@%@E^G[/3!:-I:^?\29V$/X MD3*']\<\_2A3^.1=SW8I.7^_AX#;J\5LM.G(.6_=$YI?KJ3I*M)*T\N%OX33 MP[W*[ACOEZGS#B[WE#UB/[U ^-1FA<\]=K;'8>MI).#VUU8[KM5J41)ROI?( M6&7D!1_^D22']6WO)MN.^/*=KN<.;6;\3?7(G:2'[W;64Z_7%( J_C\!8,5= M1 V>O44 WSJ.MPYP\US+G>?B!!#D\Y4+:K>4T\:9TCZ+BKM%=>[9&GFL"\T\ MUY(8FC7E[/1,.3U+0JH&WZ"<-A \_ZVV&0K!/*:GUUL[/+,]R.Q+W8, M,![4!^N%:.K8 *^XF*0]W<\];.?6NA2;6>%H-9K*:>NMA=,S@.E,.5\[P#E;/_J,HLG-143)+UMW$M=_'=4L=C9H^9@6;Q"I26(X4<8^CUY9]J.\WY^AX<5)U^K M=L@'(L^=7X9!*(+G7P%^/>K>#9[4GZNZGI2IC3F4O=M<(5-6G#FP/GC;0FHJ M/]R]WV+J4J0MG*71O@1AXIT=P,M*9SM-D(0#J]<Z6Y$I5#$9,T_9U,I"LG 3T6VO;])<3P:G M>.S6I7HZ'^>+ WBQM2?_ MBZMP[I8.@D%]>S?9UL=BBDFP[8_D;HR,XWS %3U2P=XIAL+6&WE,A5VDA$2 M6#WDM/3Z2;N_J,(%Q>??M_N'Z-X#"[;^O*[C7P]QG]/C+L]&4K372_GQ_*PY, MM$Z5SFG\@>;BS_=L;Q"(#1RY$E]24GP@UC8(Q+..6BG-AE1! M0J34F\KY67ET>TNJ)2%2VO5$EDZ)E%Q454*D-#M*)\'AZ&(>GZ]>?&&VXY Q MLP>&.[^G(IW:SJ[&. 3N.0!6EF2?)IA*_$:.R&=73XF ?:8T(T_2O4E89]^'.;FT6N8+M2@>V$#Y MJ.HCPS(<%QVBES)!N9H<)." *KHS8(L7-4WE+$&XILS'Y*D,,F/K5&DF:)Y? M(BM/C90968V.4B]9:\MZ,;L@/ -L;:A:8$_:I8G#[O:V8XP;TGQ!K%2B=E4_ MZC.E55^W?U+1'(\T\*DK[=-BPB>[>$\!GV9;::\]*[)HCD8*^#2 OQ+4.Y8) MOG(Q>[:8/:A.N@TWO",#9H]\%6U;A9[HD8-JG[9%6Q4L:YZ]I>*.U?WIDUIY#5':)M- M%\7$6+^YJN_YO5>(11=J8@L74EA-(FOH(01:S[;L65*)B"4LH98\SX0<>#/< M-1178BS->2VU>)?NK07G-J;CUN6DNE)OE,RT#;6X+J::.9[N2:TAM^2EB<9@ M4IWB"-9BSU[,KB&GMM,-.*Z7\%##\@"U=X$'^RL'53#0DSK7/UVF L4;ELHF MMRX=.4!MN!QF\PC^+;8ZH,ZJ$G.E68N/-I4>WYX@;XF<:"CG"J MNT5@76DWXI,&;P"!V97MCA$(OFP[W^#-5GS9>V:_& XL]>1=GUIT8+CO$>0K MU7'A[+N-*FR@)&G0_2H N*IF\_2L]).VJY)7HF<),Y\E2'"_(?=HHQHW%?O4 M&F4/BNWJTRSLTU1:Y^E;S>^]X[I4A_:H2]"73:#L=S:%)=FD@PP#6#85+Q9G MHY-F$I3666:1G9-5_?:0FUTUIT)N0ZEW,L?!2N1NW9-.A=RFTFYEUA4E MO;<9_\%UF='W^#"#)_M>A<^"AG2+SQ$,$F"Q%VP2SS8U;+F%!&1JEO@E'6R5MDGSXZ0X=9 MPS'%GCJY*:48P>(I)FO7E78]?=(C^>#)+/[=(>-YG5[0Z^ Y6YBFQ//V S3K MX;FIM)OI^QN7>-Y^K&8]/&<+WJ3&\V:\Z/V-&I2+*<1B==T?Y;C M'NZW7$PA%K,A:?FKZAA:MNTN*,7U')-&"OUVK3(+=(]S3]DCLA7?1:#9:DLT M&US-F="I7M2.:UDZ-;S?%:3:NX14?)1ECR!5VR6DLK0;W!FD.CN$5*:.H^ND M_*X,TW.I7GA))_=1RKJ-P>IM2KMLL'J;\BX3K+8C\4I/N5S,'KHDB3SEW_DG MJA,5'J,^4^$Q.\3V7,=5+7WS3;X+CY%R,<5QGQ-O-[EA>=N[2:'6?'[K"G;K M>:,^97<#KN*.R#=2184X^ MQ+V27^L8?U.Q0G]__B[QL;#/\0[VIE%L[9#GUIZ&M*)JFCV"!TZP([QENSB= MBE$";S#@=<\XC66L,E&$/Z0.!347 M".*&4*UJ>#7U1L1R.OA=7$EL-02)1:0GVG-U9A_^#CZ2I\D8]M%E:M_0/I(> M2!"QRYZ-6VN$;SKQ[^*;1C %VUVV_3ZCZH\CT1#K Y *0B^\V$[$8A%,X0V+ MG^4F0CB*?GEXO;B/*8+VBJ;X?U1BZ)^KZG]JM39L^$2]*+2\^-2_^/)P>U6Y M^J/7_79[^4A^N_MZ==O[\JB0V]XE\'C_XL D).SX>Z_[_>KVZ?JJ[S[ M>GO5A0_D\0G^^7;=>R)W-P1^^??UP]/MKU^OR?W#].3%ZZTY8'@X[Y/MD2_*0(T"6ZT=-]J& M)1Z^)0;.V6!8NF%N&@'835/6(7)[##_##9K_>;9:4[--4QT[\ K_KX_DU=#= M(;ZS]DMR.%43.;J+0>_9B3+\0,7K$(R (UPS+,NR7YDZCJ:L:#,YR^W!J@ * M"-W/U4YUG>>MN9S0[1)/ CP1YUT.:[?Y[*91[F9WNXDH>%YO@S'UT_ZBNYKF MC3Q3#87.MJ*$6P):>O2MCAL0+]NGK9*B;]/4@4H'<-5 MJED*E8-"K(W'M?<&I[N" A_!]XP.*&-4)X^N MK?W(O.VD;8S2RK1T#?]O C9$]V5I8^1 =JX9^9%@E,/, Y@-U M5<-:PR,JH1F"IA8^0ER"- ^0.B@XA_ S98Z,7V\9L&_92FEL24N*@H$WR#&; M!6MW9'O6PI"]-VOSE=1<:+#NF)H+!]:$'KFFCHUUG/P2KM%PI?($7 G8G %K MA ?BE=#-6RIC9VM.7"4'2Y*&)J=7Y(C2&[8+Q0YXCC[5355K%I3 M77)%-8IEL*195TBCUJ@M %'63:1X9S11+#XOIP;K2TA=O*>=QWM2MMQLX)I6 MM-P,@6"=QN@K][W'^%HXX+U#5#5WB:I85V/O4;D]UEMU). L^Y& E,K)74L.?4 M4,_>33<-.30:RNEY?!NFDAHV3@VKFP35ZQLBAR6]=N-/6^9$$HO1A9(:XF1# MD:YCR]I3OWOU&D[K+K1AW>:W%QKG#>PFYDD3F2*2]21(I-&0Z;PXR,198 M]C$FH$7$L(/Y*94+T\03S#=("(K50ROV!>1)B?&T),998CPM(C%N/065W?#C MAO)17Q7]+T8X;YY/B"L$[91:?DY\G)6&8$DBJTGD_,UIF-4*)OMP/BXZ;QW' MH_J5QT BWU-FV/J_5=.C?E]^JE^&A.J*K(72.8UO6W6 N$DZ+C-NL.P;!DW< M*-$#!,V&3,9"Q RO?VI#U7JFV%3M565,M5P'VZW9:$CB034GZJ#:?A)4 M4EZ+JR$Z0%Y+"IJXFIVW9WNN%E/-].4QS_K$6B:D1-L(!]YS-_A=AZL4%31I67@N;MA943@^;M!3D3@V8# 9P]"D;.VX^4 M:8;#[4=N*A)[C+JG&$GHQ"A]@P&7I 7Y&W7J2Y,Q@6LK[$/^XYU@/I\K]95& M8ZNT&%?0=1F1V4J,=275+I9YY9?F*Q)BDM)L&=E8"IJ-1C;V$S2["+#N!3OO M3705H<1/@Z)U+ 8QJI9.QNJ$CZ+@DRS4G\3NPW-X*-HA<(UG\MD5S!X1B[KB M1N)0US7Y! N\ZX4Z>(VPN-57E>F'97 WRGC-4M!L-%Y3&MQ!C-9G7G\:W*UU M:5L6Y:_XW7"'_^8\V.7,ERA(6U=J"_KKO7+Q'X>@9$SQYFY8;F\'3 %,>8]32 M)L1EJN68W @GJHX3>=#65K@%+LST1"!+?^0OY2&\C ;=.H]?7869Y!A=+HQW MP*!-+%OC\A";0$8&E^"@D57RP<[YH!F7="J1L45DQ&5*2F1L$1EQ*8 2&3D@ M8Z6YW\D<6;_#$3.7X9[QT\-OTF"]E/;J$YJKXO5=2W^:&J_=P';M4?=N\*3^ M7.X;M.+[;97DLFERR9Z(.6ARV60.)]358VGSSF\JTX9^Y\[Z2A)>/GQIV=49 M>67]EHRILJ!KKG1]D"STKLD9&JF23/GVG]PW EHIHLZWU@2RI=33'K@I+)4F M!_D.^RP>/J@;V^E=5Z^?*ZU.IP2XUMA4=[BYGA UY;19RA* =V,K\&Z5P@1@ MO:5N=ZV:TFBES.KDV\MNYTU/RFYW^[C1Q+9W6<54TD@J#$H'E[]2>K MBRP:&^\Q5E=:9_&]I]]D-52S+/F9I<;L9V5V2(Q[4S5?MK,KPD83"X>-GITM M+;U#H)'6&^P,MM*:R9Y#SK/]54?IG*:,ZAP&;I*2[1L\(YP4-&_P*.IF+,)" M,'2!XH8'U/&NM"/FI4[9ORZ=G='>E_YU9>/<562=JE#E,$"3LWD\2[58Y+6@ M3*.(=[DJ/:^?E12[G&++IH)+0?,&LQKY6L9%X>6M!50/J25?:=/.RXN-IOI* MFW:##?;JS=)&6$'8;R]KN).@;[J67(UV_!#5 T1,4IHM&\$N'4Y9YG"V$?'= M"VXN4+BW;,%7&M@Q@FNC6;S2P-Y@0[T$)U+?,%V_O11L3(UHQK!Q/HVXFDJ[ MDYLR/JSZT?8;;,Z<%#1O+_63=VGMGO/P;LINRTYYRRRULD/8/H,VL=R,2T"6 MG?)*/B@P:!/S05RVN43&%I$1E\HKD;%%9,2EGTIDK(^,&(?\;(][GSGP"%C4 M@@L07S^]'N$D<>W?,,UD3ZL'8Z0[FUJI-A6NVS2V NM-[)"8Z)=7_:/NKK M0CYU.\"#)/.5@KU9VV*7P=-&^EZF)??EA]X==C0LT9HK6K?3S*_>:"JG&?H/ ME\A="[G;Z1Q8/U<:K?A*V1*WN>)V2YT*XP<>EGC-$Z];8ME64ZG5XX?WYH-; MW[$]<54 $[?R+RH5:;F/PW@'S[D&\'PR1M0A/?I*'NR1:BGB"X4\4F8,YOS1 MVG&C;5@?R4AESX9UY-IC^ Z7*;_PEUX+/%FY3HP$&(.)OU1_P>.Y]?$U$XV: MI@0&-TKQLS-6-?_S+(6 4VZJ8X=^(/Y?'\FKH;M#W%_M%P'")'NM)@H(+#K[ MX7UJ ";*EG';XI6I@E.P/P"#];G:J6[KW2G2//5%VJ9]Y^W!2#8J,S:30U;^&9$Z%TY #>C):>:I5@H/C9M3'GM"I%[!HLGV]TD41^,NDB9R%T.\'M&!Y0Q MJI/'J(Y:^Z(]]A> EZ(?V=:@5P F'JN&#IY["0T.C0?JJH:U.PM^S\"AA6L[ M2IAPF#BAH![/>)]F-X0.70W[.TDYP1JG$S0QN ML@^<3(.;9EMIGI<60^:3/IVXKI1O#W(KJ?I\.ZU7ALPB(XY.T!851&:(R_Q7?O>K9+27/! M\=[$>=^4UFK")R7JC9KAK!=OXQ0"97<*R;O!PQP<$[4/;#4Z60_F)@5=\="6 M5*[&-E:9 M.PPL@N[054_Z S*9$;91/!T(>R56.''=;$O +0%<7'/5$G!+ -?:!. VF]]) MGC<3G6RH#J\1.9\^?38LS(FB7S+F$P?F-[Q>5BZO3%R.78BR.W'2(0_NZ.:G\<9U# MNYHW(0BRNFVY"()&7>DD"**5DF#3B-^&)$A_U+[$R\\P_ M5B]ZU"58D.NO=A5=)"7"")0MZ4,:]\0-K28Q \?UN,_'[5G)C&\/Z'&][/=] M_7'MWW>T_IAT4_:N;2!"IOVNEXO)EM(^CT^+KT@;[1JO<:U]]Q.OV8LPMX/7 MS8:M%U_+JXF.^JI#\3C':$PMAZ?72@480?.G<45NI0+< -#C*F!VM?Z< QJ) MIE)C2/)79-;+$*^N$D9GM7A3?-\)("XCO>_KCTL,[R4!KWE:88\(.%\/4?1I M.$N\?LQK99I[%_-,Y$=F2ZY;O!=T#/3+IDL5@J70)U^Q9N&BCF M1OC+8;B\X"Q95C)!9=ENS(W<4WKK$VMN-+H' GK-@0!9Z'0NA5),N&W&,DL! MMZQLO5]&35S1UKZO/RX9L9>TNQFC+"7MKBLOMQWB@.TY!N@_QKRCS&=D:^!U:]M2Y%V3^? M*IG :,8)1F>=^/K__8VLG^YIQB3Q^M]:9F"OR#??\[C\F]B#MY=#]9&R9Z%. MG?!A6ZHKQ*(NADKFMY MI5"IID)\?E;L;,AJ:7"ZH?!$C[[RGV)*CL^4VMIV]HY\E#7[=2SQ41;AEJ%T M=R_AE7TV^[KP C^JV6CN+=22BJ%]S0\F7?^^IK?RU$X-IL0"UN8N#;6;>#\ B=J?L'!GAH]*X_;9@1<7.2V["BR;WFLT&RP M1ZK!I:X18T"VX]5ZR1]+^"/C,87#!=R.TVFKJ7_Q_$$S\[&NPT5A4MJ/"_>7 M@%L"N+B0_9L#W([SF/LB--8)QZYN'/]-9=I0=HUOU.87FZX[9KY'[-;AH[C< M1YXK71\D"V?ZM-I=,X+P&NM;+RS/XZ$+B]>]K??UFM."^T>]F_<,EB;+K MGY1IAD.Q@HK721%[C&M?F$M=N$3;$B7RYO*-29D_+J525C^ED4IG>W&*OQPO MEI4=ZK6X@.N;@]P.S,@4![#;\0F:-X>QQ+2^X5EZ!PRYGHX)I=T:8^5K OZ'$8 '0"=K\[L-+=:WI5>>);LEQ]Z=UA*5J(U5[1N MIXJJ7C]5FBM:-I3(W0ARU[1Q$R*W<:9T,E3FE[C-S1R**QDH09\K6ZW9/"-Q M[5];.3]-/_ R&W)]K_'$50%.G/8N*I6*I*=Q&//@A]8 HD_&B#JD1U_)@SU2 M+45\H9!'\(8'<\?F:\>-MF%])".5/1O6D6N/X3MO@USK&WU0LV]]U^+^?3O#A (.QO^_LVTZ]0PT 1%F> M&WP:THJJ85V*:DUPA#&V(' (&,\$WF# ZYZ9:@+',M'R:4@="K2G>KKA\H(6 M1)HH;;&X?Z/BUP/# I??@!O!2'C5MKAF\Z\>_BFT8P!=M=MOT^H^J/ MHSX%20W/'7/HA1?;B5@L@BF\8?&SW(1/*4M?'EXO[F.*H/W@D20OC&4(_A^5 M&/KGJOJ?6JV#5*M>%%IZ?NI??'FXO:I<_='K?KN]?"2_W7V]NNU]>53(;>\2 M)%[_XL#T!>SX>Z_[_>KVZ?JJ[K[547OB:/3_#/M^O> M$[F[(9?=Q]_(S=>[WQ\/$QKO;JV*.[0]1[5TY_W.][A]/<=M0("M:4KCD@?B M\#/S *_R_/I)70W>'^,[:+V(1R81.DNS%-'>1W4=9D<"" M/2!L/E<[U14/C%*!\2KTQF9H=!''^$E&\-"A0RB87/JG/CNY"/(I"7-!J\]+ M)4X&;0NG&I.D,R,.U7APR8/2+VF+=R M!^<#O=87WMAA965F"&8K"CG7O'NS58U2VIUV?HERMN=/P,W=5?]E9;@DN"I1 M%$1>??Y+9'!C]4F.[ =T[ID],-SY8QQ+6B@WE78K/MB_W$A]:3@#+?4S*ACMO8 )%1 (YF@&%A25; ;_%O#87'F-DO!FA!TI^< MO/,P_&!8[R/ER(<-EWC'7[C%>O,LB]E5XTR1'J_7CQM<-5[1,>#<$!,]P)0F MZLB&9?R]C:-2&Q)QX2UU+;T;VM#*HVNU^/3(/IYGR"[ ,@&J#E2W3W,$EU+V MKZH.@.F[A/[$\QATPSC:H,)^,;!6#3R2*]OKNP//[&H:B(-$D^_V5>GW=[M8[DA;962 5X.;G=31.LPCVC4Q+64+B.SK3O:D&[BG/#-8; M2K.5Y7Q]D8V4M$ Z4UKM8LW56TKMP++6,P5Q3@:JP<@+UJYC,OA594P%G59, MJK^!O? R_*GK>3?X76YI!5X35)/NBO(3UP"MUV4AY_';G+H<)"_5<2CX_^C^ MF8;:-\S2A2^0F/!-7 S>4.,%TT(%]746K1=_;P_!UE9)_M/3+#)BMU/2\[3U MTD +S>,LCL\VS;WO%L@B$VR]*65O6NGE3=I\C-X"IGK^SJ:86J'ZFJ=K(*HH M]EXV0"WQ_5I*[5",P'M&^:#E+3KUVQ/O%WWMD*3VS'O!^KDRW8]ELW[>_%ME:AL7F^O[,UMVW;QX*KO;UTQGI4S3PZ M$V\X(,+&K7V=[FR%:;^VF7H 4GXUP):8^.WZ&D;A_HAVS@3A5 8WBOK4H@.C MJ!'>%4FH9'D.I57?VUJ,'63NE@!M"6.<;X4O81_Z+#JO35YY,R$%X*2"8R H##Z,3 M;X>]M%.>*B$_N498RPB M*VC2"'P>?OKJR>YJL!5&[^7N[DW5+YBQL[%ZU1JCLW M@(H':F*GT'L5O*4KVE_A(#5J9\KY>7QKVWVRS:H77ZYNB9A! "2H4SI"$K09 M-\SVAOSV=&QFWC8"+^D78R,>)"YN;(;B8=49UZ9RMD[3@GQEF>C_3 S'\?@L M'>S-$@7=^[P8VO'[N6'@Q)PKU=PM:2'*W8RXX2&R'=W@!J=PA0L M5"_\, EO/*W^)'8??N7E1RA4'<]T?;V.82@N;8E#7=?D#:?Q+C3^*;X!Y\.J MKRK3"\DT/IKO!D**W5J7MF51_H+?#7?X;[[-+M_?"I%V!A)M+T]P)598<:-> MMV=>+HV^^$:.($PJIQ0[AS>F>'-]A@(CD2/].)N-S3S=WYC97BUF#^*PUX,!&,9H;M&?FFAK M+5W\@84;+T"%A6UD)'9\-[B6^WV [=Y9/(=LZ?C/]72'JR9([>L9@,3N03UN M\GTI%]ZN7$"[[)TN2[W?GQBR^!OSX[N2!YLRFZ)97PP>GR]Z3Q)I:RFG;Z'S MR[K@F[-@:LK9^;KGJK82L;A<1OX*Z=-GP[+06\%R1PZ!P[9ZFVM1S1S)/%#' M98;F4EV2U.P7R=1RO:&<)AA^4,8UPE@\WSQ Q^M&"%"L;M.4O&Q M]BC815BEG_N:EMX:^T9NG5/E/$$3YHT%Y/M:F@;!^T9:@UIN[ ML4/# 0N];RUPB3R4;&)3K@&.VZ^\SYQFJ.9TIS=4=4'DK;KB\GZBE8Z-L_A>/Y:N\9%M4 L&-C@M?\!KOXYU"+J * M'XL[7<3BZ__KZ(C<&-34/Y![]9E^A'?\Y5%+ T2=D:,C>347!^*&$#N'UU%O M1"RD@]_%#Y.?PF"1YA+MMCJS#W\''\G39 S[Z#*U;V@?20_$KMAES\:MM<(W MG?AW\4TCF(+M+MM^GU'UQU&?@J2'YXXY],*+[40L%L$4WK#X66XB1"+1+P^O M%_1OQTHEX46F!]ZE]\>;B]JES]T>M^N[U\ M)+_=?;VZ[7UY5,AM[Q*$3/_BP$0T[+AW]W3]6'FZ(T^_79/OO>[WJ]NGZRMR M>=>[NNX]BK\>[[[>7G7QZYO;7K=W>=O]2AZ?X(MOU[VG1Y]&#A$Z[VZMBCNT M/4>U=,Q&_M0H+'U,F3PQ!#I)?;_SK6_,+EFZ*V&(]L 58X:V8"8+VQZLW2Y8 MQ__I<5?L;B [XX$R/])J_\%K_E.O$@HF[QCU O/H0C'PPIW5P@(460WLGTJ= M2 N8_!IX53SW;?'-HB5D!]N=IZR"[GV1F$YF"&B.N.8I39*3&KADB6BK4>7* M:37Y%1:D7YBA5ZXFP"^&YI#?;!/SN7#]K:4=DW=@2W,R:]0^BGY;$_ZI_I& M5RU_^'+UF_SRO=^_U2%IQ!E3[I:./;@':3X4O)).,'BWX"%N>9?P=F!FGY'%Q3[/"F+ *!D^SG\IGES@%?W\ MD!@!Z?I,F4) Q7(N%CD$_VR#(B:554(K5>0E8]FI4@$6MMDS,.C?@FK@?8X! MD%;9E.U@=WT F10,+[;Y@F^7ZQ7ST8#;X WN@O! MZ K,!V;PXX-W [_KW340M@M$^N_K (PQI/9+HI$?&_W MF5%Q^!Q!AET@$9W?. IG5BV_"JZ?+E^$2'KV"QWUX8IZDQ/H^DUWV\ZOXKQ&7.9-2WS:G&^Z,G=UI!$/NI$$2 3_#\MIDW MJ8B/X"PVZA^-\]D_ZO7C=BWD"^#_4Z_G]V.YH@63J-17L_HJ3@>$+;)$T(#C_')(EC4X#E^2C.\?A):_W$*TBLHY>3HIC_"&HV!H6'S M83&F#Q-5MFEH0"U/<-^O)HC#I*Y[LJ<5EV5]=[X17C9C)\X4Q=)3935U 0;](-3TFHS6ST MW:BF4PW?_:0L=VV,T8V/V<< L?QED\1J@I=4I7]LXH+((7JCLR56Z0H?I"29]22^H6H6OPP4SGS2IY M".*96N#O84P.?J%C?-I4=55D2!A\*%]/?;?X0C@"G"#X\OWX\9A\Z7;O@[BW M.$TAF'&ZO- Y%^$Z+2X(7\(\>*.@<[BJPNBS9\H&@U(W/E+-8[S(FC_'[[&! M/LK($.Z+O[;'Z\MI$*;+WP9;,R?$%LN#&@/; M=D6AC70<>>>H8.NBCRQ@S:3@546J:!Y\R81-@,' Q 8JN#X+EV7*- ".@N0A M21U)4:#>'6)HA5'%QYH]-JR093$?_P&J5)_YBW!TB ;.'EHU?@1TH!JL,F-Z MR\>(9H_.;&(MN,W'OCA@"IL/YG<%-_J7ND-&J3#HC9]D! PQQ(0)]N;ZIV=1 M00G-&@\SUGDT"%'FK]3@ 64=Q(UKO-#YQ7%8C-0)L *A/\=4A%G:'LFCF6&MZJ>QJEH@3$U8TMC&.C +LT,CD#%'_T\ )1QB M&!@F/"A@0. 9$8IGVI"T)20.5G?.ZLJ=:<]V-NW92FER*9RMF3)]I( CK[X41JAE,\T:@RF&SSH>#$0Y[K3-/LPF)3MY"HIE-2&"X MB!^Y(!HU3=D[XG,5=39\!HAK_N=-$% 56%)WAY^K]5KM%US)TN-*\)3J125T MG(3?" \Y;K0-J[IPVF3NY__Y[_/.Z?G* R\!^2*7#FU3=S QK'GA-!P($VZG Y$9.AB^XCP$J.PQAET1QOY=NCH!N!S!/Y6IWQ(Z"1,< M@YFK-)? 7 3E;/7Y_G#'63;N.,V;.UK9N*-93%%DXW'BESYIS%0Z3Z\VQ4?Y8WU;>S47VKI/IYJL=V M]M+.!&1P:1^4C 42'(,HECZV#8QB^;9>P! 82W'YK!Z@?S#_>-2*X;0K5#!H M]1PB*]1KV7CA/&]>Z&3CA7;)"ZLT0+@>NSM7T,V$-ICYQHQ2K^*:*WG\G/CV+I%6>CSP_\;'3[D,]&)R+5Y)2?C*B3/"M) MR6:.2B9K 5P];R5SEDW)G!8W/GUK51;RJ\LJE15B>R[W#%#FR]&OH 6X@T 9 M+PM'O<;3J',MP.;TBX(--42;GZGFEHTTK3O7;:[^I>97>,UUF(=C;W ME/$Q@T$KF]IL*QOX76RO>E$[!B6U.!I@>J)"P93UJ^6'[V?#]HH,IU$^OY$? M9.(@"\+T"#89)-?Q$,?0 ' QM SX %1%8,2RR;-MZZB4*S839?<(8]5ZYM$X M^6!X.\IQ_7AY-'^,HWHQUX^/F4.)O]29"@KY:/S--$!&F[Q2I"(*)J)J%J(J M[,F[<"K>69:+%\> \-'BP)IH5%+&BOA2(\SQ"?>%&XQET_(8Q (LRD%<51)2K&3F/'/HVW-AB" MV.2E?L!"KG^H5N7>T$B4E;_X(LFI>.-Y27<%MRCXI5]EQH6_QT\ZXM&*0&M& ME1F%-:82(V8:>ZH7?;T>UI"B6UY%GJ3B7V)>"N,H1O11SH7\-_%)?GY40("4IXUM)I)4W$+QSQ.K(^0#H;- _:"0WS<-9SBM M28L]/%90)MYOZ9RQ#KO>3%E*=AEH95ASQ@*R5<\HKI#_U+^X#VJG*Z(IYW2; M9?'8QED@8S%EO;7,0$E(ZX5%YL*I@VEU>F2=LN]RA(JGYDT$KHQD0?W"(6F_ M1IWHX$9JKCFI\!,#_B>>UM8)+ZFW0"N9)KJ(_!R(?_8ZI%V%)NVK)C>20AJ- MFL8(U0X\RAL+HIIBL51$F^;"C#6<]7;:8W0.O1M< W"QITCB)FBS=Q67=?$$ MG,/[-5%_,Z6&V3AM9RP]K$?5'HK3;LN(N+#H0YT2<;!Y)I@3JV:6EQ '#3QF ME ZX.B/U!YWR O>A5/#F1F.A*X3J$0.IN?H2OI8\*3-U7K04I^WX.Q9:,N.! M,]=3S8H?VM+X02'=&& '#C](YX06*]L::$-Y$>4*3?//%^$U#%Y]3$)D%[H[ M=(S-?A7*$'QL>+U&C1>,*SC8LLK4Y'DZQ BLFF%;^)FPXIPCBPI<]%["DX(Z MIDOM,69B[8'[*N+)Z&P>B8IIA + 30:3!:%C.WJ,VH?:T8_5":Y("0JR@W<- M@G[V"O$<.O!,6-V+! X&C%\H$XN=R*7-!97Q.C_X//=\<9##?C'X(<'YH4_\ M3@_@QEP5J4#]2<:V["%?F@N;%JD9ZU7KIVG]5H'>T&L>#.>'T[7T[S[JD0VR MG+S/]NCBBGBP/>26*^'V%PPW/ W&>HE; DA$WU MU?0C=VDU1G5#] [$D@Q8!,%3UZ":)^)-H99:/+@K \-]BK,=^>DE73=$U\+P MJ7*P#H+OS8E2"5LQ043?@,_\S')_X@>9Q607!K>]&,R;GL*_O/OW[=51_7S: M?!:63$>&[/KW;-I]/A5"?,E3NO(._CJ+/JLB]%L1QA$5J4QN;W&-*AX ^M>R M1Q,%>X4QC[<,D+\X.!Z-=R\T+$>1^3QA3X6% \ 6ZZUXJA1]>'X^FO5?R&:#P@SBA_1'@1BGXW9$I;_H3 MC[?I 1TOBM%**/S/D\TS>!;K"F(Q"^L>JKH@+=XT%&PAR\:GAXY_+VX&WFP& M'..GG2LZ'8NL. #Q!Z5CF1)JGRD)P_C\A7I'&OY IV)5@MF\J=B_T MM2%T* .R%2Q2J"D'B[VD!>AQ8LP"<:9S*&Z2"QAGP2ES988/["12% M'] 1^#M.2/WX2$5.0G#(CB+.$"0?EMOA*OD$:K^0X4^['T@AWC3$%!Z>S]R^ M4 &U2$6?6U$($LWQLX6Q91WRD,/XBC>UYH78#K M<8!A?[-AK<^)%*B+OJ(44'T/$CZ#=PEN-#CN'\%/!(*R>/.3"A<9X#$&],9U M#:]<\AF!!P^F 6;>[1;!B[5*Z@_*ZX7EH4,Z+Y\_3O$F$#"W=H08IPE.':9M M/1^AY^HWZ9&:5[@W>N"4'IH=G;GD.-\&AQF/SM3/TR=1I_8FFM:7W-S$OU+D M4)<]HMB>Y8PI7IF:XD+#6[,67:"M2R]SX\R1\8A-(^J(C9]>3< %A<7E4V@6 M@JAX=;BU%V1.IQ%::>Z#88HMF4*16R)Z-H%U#3IT&K4VN9X*XKVBQUG$,RO1 MSP2K>=H##NRG,;;RP%@VLQTGQC!'BXW9Z+X98OZ(6)[T?8(A!$NF!9^'B\%N M>S&7:W>#27TADZ=<8I]2NGCMZ6MO&$IZPNUG$ MA-'Y*K0 KI5I$P/ "4[&HN@FI(!F(\7LY5FVNZ<,OP"C--C146,=J&YZ*?6H MX:US7_RRK'8QBOUD%0$1XW=F^L\1T7_.BBX#;]2.*ZL!4]\&N=U9B\06T!;) M0%JGC;3X#!+L4N(\3 7.I7#WHC'*"\4C$!K@+UJ$K4+4ZITUMX$0-Y+_9\1H M!$YB2*E5!)PLX9+52-F.3'ZU%S$22R^=_2.7V79J*<- MC:K.L&OI^,_U7Q[8EF:&@1A!D#3)PXH;8<)P*6R-9P[X$6 ZW609$-UX0#3K MO)BE!V+3TGYAL1H.C?H%HLX""PJM"Y:#*8W(Y_W*,DLJ#M:KK-SG@"5=U/&;V M3UE].ZU;/29=E[ABXWPK.N7Y8;G.OFK]/L.$\M^M'[Z>]>/Y=_8[,KV^N[ ,_VK!/\G M57EYOK.X @8TH[^5RER:)4B;<$=,EQL/PL*EWMPX^V4\I]F(.J>Y!8;S+=\- M<7-A22R"P92YS&0TBRFS/2;BS(PTB&I7M8(3MWVLFA M[$7$V[$(KQ(:;S!SY KC1HG(B5#[JGW0)E3I&YH\9KVQC.)3<'@P"*,I) M2[@(+.6TE H\:]JN/4BT28CR FM_U+ /1ARP, #0HW'$SSEAH;8H1N/'OY B M'-L2:#!^4-,8VK8>D,58EL@%L*]$$EJ0U],IE@/+ MN\NR+YFG<5UT]EPSWO MR')KB05=R84M[Z%4.VXL1F]E"Z7E:3#1 R;)?D]/]V[#K;@-1P_'*NWF32ON MC$>[&_%'NU<.O]:&5/=,&G2*T-V0DI M6_C*@"[*1'7L WX?WTDLFTNMN--WEFSBC'.%;U[!2%79234U0-JFVW&RXGR ME>+H +S'U#\2N9EI]!6CSM7P_?XS<0](O)RQES\P*CX=']_N(O?/+S=R;9*U MPB^=62[OWKM/T&KD#RU4"P0TPJ<^.[G@:B$?T!5A[[Z&(* <@OW7]IUT\N6H MZL4[;D?:G@/VL_,^W>L3;Q/0 >!_9B 2=91E-OM V'/_7:/64AK-,Z71;K^? M@F*N+_AIYY?9I9MT@/%!%,I1YOJ2]N+U7Z)!-W]5U+O^L>29YW-7\UDJ,;GG MF:JIHV8:6VI!\SP(@_U>91C2G*_7:GM'1/DL3R;E,?+6CN68);HH46P+#G0XADWVQ7G/:/U M*LX =^,VVLI"6G 3%SHF3:084CUCVRJY1]TD>KC67NPWFP"VR3GO(!"3IQY/ M@IAZ1SD[CZK66QLQ/H/O9!A,[#RF)#F?+<2.,K9.:W32M@5 MZR"H:$=PFK(K#WLQ9KO#8F;$I"YVEN4C)K%@!R<#X[\*4?U;_&$>6*^#S0), M= R?YHI/8'PF^O3!2M"\ M:$+%]G"]F&V,>-/T14ZHM2'/-VIN,%1%WB8ZA_ DG#P_DFA!LST9*[R@B;=K MP,84?+:F[%D1!8B@1R\?ZY%B6D#RH22+?#!O#RSDF5K'B\; -,\$6XZ9][.U MA=:/%WV2^ Q@Y(G%2GF68/M"/V-WML992LOGBVQ^V;7TVZ [9IY5&U&AB_J L)%]8S/H[JLSI>RPG=K@:\*N9 M<0 ,F#!HMX@N=T&YE%\;-#OES6]]A$5%!&5!0 WL:[)$(.(*M-: MJQ]X/?D+?C=8,9OQ ?8&._VR(0"3Y""8" A(B4*]! ==%J+X1-%XO?L+M?R*P.EIKR M["YP2WF M K!$%XRB?U_Q>W/8?L[?_M7 M8T"K%XUY@@]W*HE>PGG.2Z@OKH'/6^;#OB*P)FUC&; ,V;YX_ ![,1/L/N?R MCHU^J/M,/E>#/SRV#+86)YI3J8S2$S*+3EL:BNG>4:^ MI[+L/2,D&?_9H:/+D3Q&8]:R003V=\ Q&M1/9Y=H_W<$73WCK%ML;HXWF M>WF2+,%:G)YT810/S'!3*4R>DM+Y^8'0H0_>Y<\/',[[/PZ'"3J,? 78*!GK M&"HB^#RUD]TA#2-06']!-UW9IAGW$0YE]R>A5L=S+^;C;"R"'9;=26#DHR^# MIG'%/YF[S(Z,]@Q+._$@&['4#[P1RVG9B.7@&[$T,W:=:#92'U[G'5T?1* M%Y[188I]4'$M3O"3Y.XJ;+J]TE/:N*>4L8-#LYG@"'E2LI^>"T_.*(4EAG#0 M-Z@?Y6..IG4 W!I5IWUGT3HG]?=RW $OL?S3#!U-Q &N@6*D&1<4FG:# M-CF6;#RK3/?G>V!XD_L4?HF$M&;Y *,!9=R@;2Y_C]CW1*1#L$8B.&R^\&02 M\>36^WE0.16$!65B$*77%RZ'"#ZWWX1(,:+M]"D:S(?_A M4!_KN>+S?3C#YK] "('@F1AD4_^?'N]P#%(DQ!?XZ1<5T>-0H&^N)#815\+H/LS2&_G=," M.L4X#$_"W]!IPUAG*J-%> H#*P)$/.&,,,=B1GC^D3\SF"N9@?&3ZD<#2L-H M<$3GE)'ZI\WD3-VH;OG^3+L0H&1\"N-)\Z\++5"V2F-!Y2&2PC,9VAY#L/ A MS0O97K]04HX)BT@-AC$CP1-ZQVQU(TXGH5FA$']!GW_;\[BB\1PDOR9#Z/VCZZS-^)?K500)6S/CB M4ZMG)M[@;*.(1TQ8J?5KJ[JWI[HSM,)KM''5W*[7N;A97=U\N*M P M!P2"J0/@GG 9PO-=HJ2@'#([5/(^@A>+4P"?U%S5D&P"M]*$MD+ MOX5F8$3QP>K"@.&PBWC/=""J>(9X(HIJ)L;FZ8%C")8,+ FUA.B8A8W1.3@9 MCTK.&"S3J8[O*>2S/!#5F0QJ7^3XV.13X_)$8PJ4E57IOH7PM:9<43 M?<,,T,.6:9A5V<1ESW6&W'CKTVD17867P(%L"+22?RAI9N;KD@>*5+ _KUE& M>1>4VD)OAD!E<9PBM$8Y[2N, #9 )WY5<)@@ M;,N<3"^>IN%]KP=G78;?5Y$N"P\(R#-(HK)[UDLP9F)V<4Z#+';!@*FOOD+^ M1W"FSM9 [51>?2=\QM&)*$!80HSO-0_TC<'-:6 M8P#S3Q'9K?SIZ<\B&,$-"7G!]$E3UTL,V>6PA)]<,> &V9Z/FPYV(2RTA;:9 ML%U1OFOS?6!YCY44)]P-Y9H<]QT*"KV;=@*==O[D,Y9!$FD8N-#?"Z1Q:,F^ MEP#F%V!0@5$[3$=*Q57Y/&X>^YB34KBTB9B0[!.S,O-M>.&^519T"EU6TX(& M!R_9GL8/CBM=$WM+/<^,60=3!G(B]@]WF5,(0PT"XD!C^5&LD,)Q8#1CE++Z\22G*R]EW M 9%[(ZXWG$7*Y5F+*5K-244XWQ0;H4KE-0VK\Z( 4;X43-4.PDEEN_>-FV09 M3UTW3U-GS&4YU?W4.OC_V7O7YK:19$WX.WX%UM']KAT!<7B7U.YUA%JV^WA. MV]*QY)G83QL@610Q!@$. $K6_/HW+U6% @F"('B7.3$Q8Y%$H2HK*S,K+T_> M:..@"@K!2B,>K_5'872Y4BO?M#K%U+=^3"K6J;8N2KBSJAR,-+Y>[5@=+9-< MW5U;W7I7V49&F9J^6H"]ZZ/CB9SF#P\8MTZ$D1&98S)* R-3JI-_UF).724E MIS$(4+?%\'4\]-A#GIM/B:H27B+G-V4_.6-[L5@S/_G%8(QXTP6PKC!**_>6?- D/5:L^,%KQ;A M1.JOYYB3_OT;G!^@E#^#2\L?OGK7>*.9,#MZ[@$PXG.4K!.D[9-,EV$8",K( M5XV3S#!U.@1)"> MRER1%RD^X7A_AZLE=3N@-^'US$U34A[1@P(O39Z=%$*K M#&5G -$6X*,5 F49B%VK_T=C?*U\VC=[P"N6S[7K6SK@[;4.>.MTP!"XI=4W4*EH,'CZ'7GXE5I9&-XSJWQ_&?0Y$N%>L0VWEU MB)N0+IVUI$O[)%T62Y?62M*E.-H"0H3#(YRJXX+X"7WRNJ87AP6A^3 RG[ R M3[#3G?QI,CT6?JA#(P_4%RA*0R1HE'#0&U-\*<"S)"\@@VW&AA%>3IP\>-G[>:9^VZ@3\DF3" M?.('%Q1SK8,%VRB"F (I7I (RC3$B ,\ L(E030]?<[W @=\$!Z.[3LX*M;_ MM//J?]8XO]TC=C+ZOK4@Y]?(,L9B\D#8E#@>J1)Y#(7]$#(XMM@5>/+R'5-M M=/.%UT9?G&JC7WQM=+MB-56[O6*D]V[D1N(/-!I0=@JZK83!#4E$PMI!=O8> MQ:T/%Y;50%"##"L;M0KYNS?6)P"OULWIBK6,;3SZAAX MH+6.Q]'N\3)6)@!4A7"3<;H^1$#SLT&VM;7NXXS4E%<4]\F-!IRW/Q1>0LGO MF'B6+5Y2*>/91,XT?2G&B=JA-.#R7\[I\OA^TN%G=_U1B#>GSW#-08?-1,>6 M\7?C<" 8&I3_J6/75DYBGVL'4VK." O\+I[-5"LCSJ3QZQ]#3%?TO01+(#6H MO8C&#G6V/AM&0M!M#%Z74&49UQNHWUIP9+ J>Q!GZS(4JE2L8)_T)*:R4S13 M G/3YO? IH*2_HC)9R/Y>'BBH<0UI0'0S/XS\@;V^V<0]5Y?T=^+S13A##]@ M\!QI('%\ _O+U=W[J_]17TLFXM17_6*=L,NH97)=Z>Y:6=;"(DYS61F.56M4 M",)@[?OALQ!&72#L;XREL3,-$W0_=4Z4IH%PWJZ5@Y9F)"FG19B43BKQ4WE0 M+LQPY;380_> K:P&^H=QWESDR3R>E,:2B+<@'/&Q?R+^TI-((N6;% $'1(FD(@.8FZNAK! M7WLU 4O48^BGK9FGI8SQW1BSS" (\^N9>)]R6A#)#U>0 M ;'-E6OJSHL+1.3S=5E&JV>B9H-1>M<'6)X+Q MOG=_5(2#6O3\\=I]A):+B[(2]\>IC]8.>+UB1G<[KX_6BMRM8N,ECL'1;KV) MD3(,?4(=310T*M>A>FZ/3'(#X]_5.\ PK0SW3T>B9G]CP(@178'P"0>,7T8Z MROQRYC9C*>L&OJ3(CO3;,<((6*5AY$:JR(._,.%%E<7K,L2U6%96SCGK$.^3-9*X^5YOB$AL_ ,%LX MC>UOM;N:/1089_-I1D1@A^]A/)K\@MI=P%+AKC;P^K*@YN_&GVB.\+P5>*^C M+9K8PI[50OZ!DP"[%5B8B_[F-[T7AM^9;C BF+MCK#WO]Z.IA$)Q!WAA M MW 7*I7RR#K< D;YDC"4Q8:Y"?C:=L*I6+M0WMY[<-2/=$JJU".&'3K4V!Q MFQKE4X+S['O_43H$ 3B4,L!3R(+7,8M"550_UC6:RQH*Q2C&Y/W.03$"9\M1 MDCKG=48[234_+%K]G#<'.KFZ/%.0>PF!^("F(W@G7+2YY0]B=V,$^5$X%I4_ MLM) *JAEN':.B.$;K^K$=(=8(^HE:0'Q!"1QE$H;+D>4U_$8+NV#*3=BY-)? M:Y;(ADHSD<>'4_0JXB]H;:P.'-::V)^3OOJC4*V+R3/*$7EYFPB2N(Q M%\>2J9'V1N*V19QB8C_ ANB*_MSM,LA-8.@P1(SY\2*M>%80369)OGY*PG.% MJH*9KO(1(GX-3L)\R\*\4['ZI;VPS5P)&7ZT6VG:^JE''.TA72S/1YB."9DM M"3N^95M7.QX)H9QE!-JW3#*[>C"2N58/:_UC?)."P1$_7&U;]Y[A 3KA4[@W M$%:=+$^+J3.#_3T(GT#2/6BOMH8F-/Q/62^E"1QD&55S> -@**44$T+/5>$* M1;*)F(_H='%BYS^O/'D/(+82NOJXNM%'B=:WS;(-95/>%!&&U4!9Z5:R9TVC ME^P$%OSJ76>^Z>VO:I>P$Z! *:VT'UBG.'4#:$-"_&:V(Q-]T &""1T5>?.0 ML1F@X-_@;R[]\>@:XJM21'*:2T".V$HO(GQ?\6(N26 4+G- 8S0O,!Y2SL^3 MN-VVN*U8B]19M947T,L8-PJ#$"44\0O+Y8H.R57'/5Y93W7V?8)"L=Q!."%G M?^JUF636?G)C;OWD5*RSZ2ROLZE\5M24UCAL1\LJU[)U%&@:75UR_VG M8DSE]L#0&2ATX(_:LYB2R;Y+0"%1X/R/D**P1A3TX]7='QJ >#8M/6\,Z]MD M0+:8PAF^NOL6IR/(VXL:EG3NU=UU-A4 ;20AT7#)_ HQ<?$)!I9JB,)<06HT=2KCRC^- ;E6,NR;@I!]JPG$R! MF'U\&*ZPCWBIXF@FW40S0$QJW.N'*'P"^T/&/AVJ/28Y1D\%L-'&A/1T M9929$#;G7KC\^9,!L6TQ6+&FIY-7T[.>\#IN%]M[T.V45]6L-RX=+1[48" MTXM0 (#8GO@RO$+@ANIE:3S%Q7B#K3!^AY0$X\7RC0[LEYB<32>VO!IST$@U M0W9T'HUL2F?EH7[)U@%803BVC=Y!%$ (X&:FH.952(=$$XDNUE(LZ*<3E6J2 M1@V&!&*+5T#NJFB9KU+..KS(D1)"%!GSUW %!-8E%R7?_C17-3I4V%&7V76$ MP4C2TV.@/XS,4)^6C [2AB;GSBB9S$4C+AS;Z-EN<,4(C4L*Q$3.5$E"ZDVD MN)#>4X\+-@<>*S=N)9,"L#%%K%#COI]PV%Y0O4KKA=>K7)[J55Y\O4JG8AEC MI[4R,B'?^C^1);# -KK'@,^J^(0KCWN\%I;I/9$FU%W_41%;="]4:/_)6O.]R@7N2?\ M\(G[,',P5[H:3!.1F@4)C\+I\*BEWN13X3(Y<'392,AF(@;AQYBA+*=PLA$/ MQ!=0L1:M4Z:G3O43V=K J3YNW\)'T8OHK@8W]6Z.;P'N\-*)T#TS? A_4=X> M7O;I:,OOTVQ(+)# 'EZ(18I]6+#DP^=$#\\KF5)E75F+G2Z8Q69Y@G)CEHZ#Q61/ZC (LU[58FI M!HZ0JF_CGZI8INQ;1[AJL(UGF.;)R2IJ" VY-I6(K@;.N?XE.51X9)1\?,=. M[].F2-[<[*)F!]2IN[H<2A,L9Q'61A8Q\TX@9)I!I)_W8#>] M*)8^='2J_!$F(TO/3FVQBHF;197\$_)V88P??3MX2 8>]W-$3B?7E">;,%"( M@*J$<"G9$ )EQ6DGN:4Y;K.$+<\=UN8)>R^=_X8U;_XZXUFSS#02P].F_&K+ MO&>-F1I4,DS8R2EM$39GM!>K-^6@B@1BMF:ZRJB'EKO):"/)^#E9.X=B[52L MV>KD-8O:G+73WH"U<\09<6#M()I1@:5#ED.CE9HY:33X$W:-F=+Q.;N&JX^7 MV'^%>'&Q9=2DU>R^T864GXU";CBP_( E'X ]S1V7K2D]FOU$H8H>E\9@EQMW MS"'=WK.M8ROM=++7X2 -=GP:4^MUW>F7AK5@6"?_Y7KJF<4Y.*?T99TEE,D? MQ*30;]8]9M>A9+I/ ]-?L;G,D%]&:ZKVH$LL-5_6?:ZXZX_NY>?#Z"2[O8@V MG[4Y=X[&Z5MNYB,2[[IF1]]F^TP^GZ>JH27<1&, #+B*FH@E8V-!__HC!]0,G66##,.PH#LQW)T:%P.#S+ MYH?*N<+-S.1.6ZGIP4K8'I6PKZ!&7+L6>5!>B'7,FI9)\7TQ >ZY0X(Z-C53IH MA,,-(800HUX_(XM,P;E Y!DI2;0 D$*HF_E TU14L4R,8.=I9A([\.5=2'7O MY3--H7^\AZ2:4=?[J7QETK!:9^ID,2Y_Y'0JZ0LPH]X@Y-S8(T@%BZ[X](6N MYWQ&A0T:CC/?J<<9N5#C1)8C4K:S[N4H"EH;CM:O5*BN1"JSE$=G2<= _$-5*Q/%U6O/\7KNW"!@KZ'K5K=B,A6_6.Q_@!8;G)NJB):R J_5*OU>OU!NO61J/6 M8CJJD9ZHF2K6.DT3,@0P,#$?7_\I+@55_6TKGL56M2-\Q)$[.!P67)^QS]=$ M0N+37?U.@/DB\>^*,:J CQ(T#*XS*%L!2F>KQ M,I9S+%!J(-^[_G."5KW%M9/LC7&GL/ST0A%&"7K;"DLC+QIF;>2G+Q\S64A? M*/!Q,[Q62?VZ +(^5__8@",Y5P&9E@,HH!J$\KNH=^@*E"<@I,<+9<\3):R" MF!G,IBJ[?8IR1HZE[@]Y0]$ \BGNGH;9L:XLW*= DCOQ$EW[[K"P"4*=<8SF MJ_+J@"!Y\*@!.8,:<,&J&%@Y34[TO:5F*[&+8/#-3PN@QB%GI-<5- MP.L)CL?26%G_Z*22=$#O*J\1=J.O]GO U<6S)%:WFIRG626014Z.MK0)-'G: MRFV.-;,YM4*=.J=2[V#I-T,"X3-TY\WP/FWZ^>K=5]H)K&-AC25SMADK8H(A M:+VF9N,_"#\)WM.H=2\ZP!__I=X"LVW4ZL0Q],F;D\(] MHI3O]@M/^6[43SG?Z_&3,=_M69'M:E;D6A'1)8Z 5;3'BA'%OZ,V6JQB^-%ER1]-4*!'O?C4>DJ9KGM7KVNI1> MO*0FSE5+?/LBS?Q+HUYK7%I:U3F,QDO@(\G9M438EEI0P\(9:![UVF7N%#BG MA.P BO!QGR@@6?B4&5NF:-%#EFI=)^-SZO72/SVPV[/70X7.3IEQ8$Z[,C=L M5BDKS8:.;)H3@_@ZMG&M))*"D?T#+'BL;74L8PU&C(LQWQNU\^Q4)"RPFI$Q M_3ZV^8VD*>0&LVH;DWXR"KE9:U_,H$=;]5J[VLHS^YZN?QJ4H(#.*)Z.R0@T MTWH&(9T#+/!.W>99LKSMZJ%.-3VTO-?-PG*?.XDJAU=M@]?@ M"I\SA[FRGY4:'4HCK0]L[TYBV&?UK[>V;"Z(30N9$\H5=H'94M#AD&T+, [! M&'R(@/4'^.XP^LV.'GJOF_6VTVQ=.,U.Y\TK:0#-=3N\N/@URPB^&(*A(A=[ MAG^!"58[[U"O$"FV<]7"@G:*C5\S[3T73*.1,XM7"SJ(RD[\XY;!82:-G294?4$HPPO\V+MU;; MTGB)6+3C?\'Q &N_R/B875;N^(4\L.QN4YXU5AM)-G.DM8!82=6Y%1!R@&&#!_D_C ?Q2<0'= MZ39WJJOQQBI'VSS!60N]VKF=V].UCNQ9J\2693H3]F:[NEUA%),!DO]X3G]R MR]5/5X@0;/[\&F1Y0V]T*[O1>,J[3KNSSV.^II:_]:>@Y:_1CV&*:[C+DM,9 M[ZK2RW[TRG[#;$:2 0EG:(3[\"MG?=VZ4?*\F&T:K;J3%]@[8,&P(K^]>J>, MQC'G-N3*DA>G7RJR$>=_9"ZIBYFG=5E.YJS%/&LW@R]V-9B.^I((#=M/M^A6 M+&N4Y=8HS&K*,W5E%#:,.X9SU]]/(HX[U7CA@ M:_I6.DQOAE<48M9G5>3!-V]2X)UJBSR MA,/"9,,TB5R5B V\""NBN;*IST6",LLD7O5X59DPQ(XQ5,@^%$AL^)Y#,TN$26O/RYV7)SK(*46G+F7 M5*;D.2VOX.U-6PWPKXR>FA/7&YQYP%VJU>=?N+*52(B@(3ZJ7&2""#W63(?0 A@#Y:8KH"L7V.ID =[H%\%<-LV"D ME<69U(#\LKJ55 G5(0>^#V8!71^\":JF^;*/DZU304F MF2&0*Y0YT4UZY5&/]SC+$)C)6B8KUW^UYB_[=N-_0IZ-=^&J#'#=X4 M2K)E0<%5:<;>FL/E)K _N\],MN8E0_MD#7F5,$^)"AJW2II[JH&1_/C!#WMD MVP?QU <-T7_6^?5Y3*=;0M"7JB=$S?Z(KD=5!EUO.O)A;(0G7V'),@^"B1IX M#QY?*61MAR[I0 SSB!'58<'AF'H>]J,PYIRC;__MV%_""/3=%7&'Z]C7M.E\ M1?DPC4 +<-W35>RYLI0WW3-+'R8P;,5@YBK3N*C;8CSQPV>)#&=0]7_']DBX M@SXWJ)\95F)53:FG[LQ3M!XJ7QZ*B'+@L;4M/0!6I @>$NY<%G-#^X1; AI] MRB1<.B(S1=]%,I/%)DL_9J>"Z/(BX/1ZLQHYA'L.=GM]P"H#-SJ+1V$DT*37 M+1G9G-#[RRVU*.^+6D#:G\4/KQ_6MIF=->-3W)KCH.1A+BC>*BU0]IN!JR,< M&<>T-*FC--V6S+PT]S&;U^=A5NUYFC8KT?UE&BDET&8?P$3;5JO6U1LWM MCSSX#=4&L922I[_1M,?PIE&<+?O7%K&; P^Y:&JJZZ">5EZ&:P]5A.H'KH@] MOU4:' /6"E>,-87"(1HB^Y8]!2G_I:77T6X)8CK#G7",@!FZQI-@%B.)5@)? M:&G%@0#$(Y7()*I;)ZA3;JX,>A9O?]QADEUA2LO+S[7@>@HC;.:KG%VL9HU^ MR9C4'0NXX\+)>^1 Q5P)Y.Q#*8)H< :G)6WFOJ@[A,\"DOW>V%CP+L M$83H,EN\_HYLD&"RA!%2^65!*F M:V;1LHLU[@;/J:>2(J7C3Y52#BC>1;GZ8P,YCP&_9.EEBH2G.N5P>8::F^F_ MR).YUZ:7XBZ%M(45("041(=30@%0VUHG%BV&/L,"K5YZ5C47TR[Z+'B"61YOM&2 M53HUWO?['%5A*K_4X-'647;P)+04)$&J_W+5X5)*>+0XK@B+L[5]UK;. M6D'"4NG36J6X2J?VZ/JJ-/KV:8#W9 2YY8R>*\D=5\'@KY0WKI@UCK'F:CXE MDKCE26!Z(/[(!V7[$0\V>][D^2Y,GX:)(V=A)M%,QNL.,SN+RL)>O;N6R)9\ MZ+=0\367G;E&L==%IW+6>,Y9FF=NY-(2["UIQK^\05"5Q5F=ETZCW3G,PK%7 M[V[101XESPY6D$M\40P-3,PJL'T4]!S(1BOZW")UX![N[Q,\)#R MO%$"<&B%?2#H*AEYDV*Y=GB[ORA(O,899ZI\-8E2D/G?<,Y;R^O\-G^XW]U' M+JP,B/"S[QC_A,B!&CJ&'_T1@40KV#2G<7Z8I_7=G]+L/[)-W880_A0,Q!"[ M\8B_X&X%?ZJ+RDQJ^7P15]WIUEL'5,.EZFAG+EBS$\JQ.PMV?^[7I8RP)4\= M$7LLXX)VRVDTETOF4F3QM MKS2U&"#@0#A;7C/,+R35;IEH!;5D3O=\^:WC8. %WALAKZK;7IKYCV+O%47N MW1_&EP6ZSNF4J#O=P(:7UW(Y+L/#U71'P12E.*$+1NWRHU^*ECN1!CD\<+LH MB'^X_+-M]C'\OKJXDDH+KS1Q[G3$^?]BEZFO< OR$&8WA:DIX)I6U[GL-+=G M)1U>W?$N'?H%=8>E0P+[CDZNF;>3AJBRZ1B>(0+S@E ZBT,E^IG9K9D(U&^' MD_OPPN)1%VNS[_DFP/X^9IP 4<8+\#(B3LN!*W(TWNM/9N"U)%I$2BQS?.(/S+&VZ/(%N;_!4W^F2Y\WLO M^ML[BQN'[C#"V6TOB' 6Q3<.-=+9W>2-XRX1$T-2?Z#JGT^R^.=3("\= D\D M'<@"9*R2@8[J(*!+=B"/8]63^&AA5ZANAHQGL>C_-IA&V)1UEH@?%SJ<^9CB M*05B-.?J *C#ZWZ65G8%L7E8/],I??7N#A0J\N49)O/.&]%;0BW,\1U0TE8R M&]0J'.=HT*C%5"HEIG+TOKP26'Y7S#KM*Q_ M7=E01<&7M75R!0HY(SV=OC9_R=RLR5S=E-\0MMTF'%87ARJ7FLYE8WE(=QU^ MV92L6O[$MH??F.]MS18XA^B1NUS;I7&QO73V*\92PAK\G-+6;&57I(,)EBLK M=K'T=4LP7"HM184I3.2_Q?A*S4* )9BN3G*W_V&8%-I?CK?IH(8?,<". NV64/E.Q3,H(?3*BUI2+.[.O0 M:V0AX( $?X@$O)@W0A>\>3'53 X8W@L7-N1"/;A74YFB[K)H'/N7[H+=I;AJ MU->65Y?''4%0'#O%0_WH@L"9QD8U;2+ZH\#[]Y1+0G6W)"/8X*1E-ZJ*V'BH M)[ B=0#TD_U/J?!TZ(=/W#XV]F+'PB"&&)YA1>Q9%#Z[/F9.XU$;8RGM&==_ M*EFAFUP:=<*(+P*G"]?* (*P&ALE&UBF?4S G@9A#R%"9#1D,L6Z83AJ?X$@ M\*V6_HAZO0ZI[+;W/%OD"F(CPLZWSZJ++'P?BP7SR& ^8EFJE*I Q;'[7:05 MJP3P0+)5]9?J8:%L#"(?YZCAMI@_X",I?^BQ)(DX8H-7"/A.4H__I)\HTLN/ MM/#N30R-6XA,9Z7(=&DQ?HZU4I,C*V 16M56P5FYAPJ^]"N_ ML\ $K,WGI&@+$"F(!8G2H-C1Q+\(N'SB"XN 00MFC7MA+8I,@_C\.[83;]49 MD^L$AK)Y:;,!8+8M(K-ENR5. W043U)7JSA/KH"9AO(/N= C_6E;" ]YZ9L$GJC6G+;(9&R\*? MZ=)CH^VX?%)>X?0BU8!(;^KJFKT@]02:6!(WRFA!Q@W:S:"B.F!1QH47,^"( M">,4HU'R2*:7[GENWI+$$(PM3X!L56 H(,M]1>Q4Q)ID06F--R -<,6+B'-6 M>KH";>FXKP^\UE@+>6W_=R "#Y@_6NKT)"E LH;V-L!OI420]P5E\V=0=F?D MR5;4[K4"ETP^"B./=350;EXRVF@@4\>Q'4_A,N7&*7)E0E#MC 1,$F @%&C] MSV7_'QUP3O>E ^74F MP #T&YA>TP0,@=] 1)0RH0Z"1C*!XO&'A]?D#ZXG/M7HM]U\_V$YEKZ>O1 MX)W17G%J 4M,2Q45&+ #*D#S,A(\H#D9-]#S824HO4K:P:5,Y)]+C92Q]-8] M(]4Z@A=42MQ&X4=DV4_I1>OH4X1+Y-RP"ELIU)PWP.I)PMU9:I5,E2IXWYWW MP_X<(MBM_8$PQ3FW5/E6*B^N6FWKIC*VOREOP/;3M3>V$WCYV,ALCV6U]IS^?=7U^]DT[80\]LOC3OC?6RU\99#W-]#FBI[5RTEU>P;2TQ>6<$O*QO MAX#G=:?=W" !-UM3_$4D-E@.^\,$6)EME6&BXPP(T&N2'P.__^?5V7SN[7EG MC=K]W9-F=8:L2IJNTVU6:#1NA41 MM2SU@O=HVT;Z@Z4[8_0QK=[LC7F[AT*V1A7TL!G&5IF>J_9>/A3W3>DF M8PN!^2KT%U/":)4QC]>;H[J+=71W,;7N+/JC@Q'Y4U>Q)4[%2GRHXM85F?AH MMT&MU\HPFFJ\J[LUZ)CY'*+T"V7$(^EVD.ONJW@ UG'T+7SER;=7;8 BA\H* M(U;AS^J1M]Z[#RJAG[74I$IYXDMRE5YAO&3O#M$#Y.$J%"8.RR R (^1ZYE> MU"/4#<)9>L/L=SRLMP5OJ4YU9!*MX"I>?4%'2Z3WHB_&/1'Q>UL-@UIE7Y*A78*)>-TB7D"^T5LX)\ M#DCBK/#MSF]G*M9OG ZK8N?(2[1WCEI MNTZ[O4$LFLU&+#YC 6<@(IGX,H4'PY[GKXYO6RSBSH;%UV+/-:[@3C MNIA7J\,K5>;5>F--*/H]D:HZ1DU54G4ZZY)JUP#6'Z<1K #SQ*B+-5 &_KV+ M@U[=@+G8K!AHK6; 7&[V[>GWG)ZSAU-<^8_NB5F/WHKN]CRXB M[^["8?)4(:*\67NA4=_^9>,8V&[W%X=.":2CPZ35[F\"G4[[H$V&TE!Y?V'K M\U'H#Q#K)0H?N?![2WA16_++5K=*&O4-WTY6,TL:]?((H:5>/P\0NL PV3F4 MXB'#8C;JN[]SM+O+VZ><-BFS2=5! JMN4K.U)5#22O99-4V[NG56I5O7?C1_ M<_<7F8;3Z!ZGF;0/3W2[5:5)U$&:27'\FWW5[T_'4ZYT'R"T7M^3"%?H<370 M(X[+?JH\P(O2/L5YN]5%C<$T[PV>@7_[@LH5@X$)@5RA!_2YTZXOS^ OO9_E MBL2.=RNK"\+M;V7'Z9:HB5EU*T_FQI[,#8E8QMA!BAU,3O@B"IBAY9QWED=R M#Y%2JQ^Q]2C5="[J50IUMF]I_)S'Z.@GL]G0_+4[\1+XY#]@-\;2RPX'Y%'X MH^Y,M2]3-3U/(G91_SOE1HWS66 M!]Q.-]RU;[B;W;1F>_-NB8UWA=MRCYR3[-I7Q*CB=3WE^Y6OH0VG7=^@]^9G MV*2*GH*U-JEYL3R)>\MAO:W::(45]B4WAZ.D[CI60N M[&"+MA!S7;Y%;:=^N4&[*T_ K0K\ %[* +RLPG *UV4U)CU:HJ?+M&1+QA.2RSK(R:NQVCH(*G?]D1A,?7$S M+' OW*-&,47A44*JE+=BF+#R)O0TDZ\-=O((=L37B MB'UDX-:+T$5 JX>@_+C7$39]&'F3N4J98P07:31:&PZN7ZP8W&]O^/VEZV". M'P:CT>AL(]JS+ ^^XUR>+P]IOP3R5H=N6"O+HK4\WKE5H)%W]Y$[$+B@@\Y+ M:IQO6'2T5Q1=Y7$-2HJN^E$G)EWNY;1TSX\T)ZE9'8MAK72D^F'7YZ%U M^R4,SK #F$B$[3Y$XBC+EXOD2[,\\%O%O,NCC-WLK.JTN94$J&4"K?U"0FR[ MVZ:MI#SM:YM.]3I[+@^NSA/-AE,OD5YRB.3:QQ&Z9'@@).$0P\(?J9L^WFS!;I9*Z8OY:K,)@D_^7F?'$AZ0X=%%.ODOE*:<9_ M>;!%OI=X8IW,UQ)#'6]6HLI\/=>9K[1/VVSK.?E%=X\Z[Q7F= S$)8V\^>^# ,M*J M^YU!GPS4:E%% 163@MC,>7>#O:X.EIS5'<6KDK,$!-">6H?QE25S53G&J"TM M0VZ,81Q)#[Z M^-@VE$A*M&N39K=,LB+4@%:)QHE'$0\X<&"4JCO4<"ZWM4.;0&S"47^SZ[5& ML^,%"V*9>?.X#Q/77^PK>;$AI365Z"H: 27Q^U:^]61UQ_9 M7@P_ADMVXE";]$]OP8 3Q^NU_?NC[60=Q:/ M<;P1(15XO# @=W"==N+^.,4:2P#ME&"L%&&G%!?NF,SW>7+,TTQ@BQ\3$<0" M)>$OA39)MGUF9P6;1-H@FCX?^)5_B$ ,O=0TZ#T3**LZ"WN@5P3Q(ZR2C2 A[#',>Q;8(<+\P'L%A?]83^YL5U^NU>Q0#^H MEVDZ?847\HUS"HKP9B)57^H%/6L:E)K N<$*B59MWBS]E99=?GOW,._SVGSC MMU\WN+? \Q%V8X5_9/?5IGV%%UGP(AZPU-LX21)YO2G'D,>N%_C/^/2=-+<:W:;U>OR&1H93PM(59C#E MKWUO["5,3C"=X*+O^O!\.!S&(K%[SR A46JR19090OSHBSBVC3-?LZ_@!_=^P;X-PK Z"]1K_U:R__?;?](_&VS_&R(TUU4'F$*18- F)W)KNL/)"MLQ4\#;+^VGDBR0W%G+>?*HF M\QWM;4 Y'V@"3Z)PB(M 0@J\U%E+BN8RDN#3EX]E)W_++_J@WG.+/MKT\-2- M%<0C8+X8UU!WZCE5QV!)X[..P?$] ?HO0,/Z:A)YOMT@;FX!,Z#E#:--?8GY M!J9X?^2"S8Y'!C?,=Y]F[?LQ;.XTDMO[[;]AP4,1T7E .TG:]#PHJ4]XQ::U M)=$,38=()(9V6:P>Z[7Y'=?*9" 'RNAX2O%9*(1L)1$R2J3(:+"6&@WU/1@- M.>PS;S38JQD-W?T9#:V<;9XW&F+OQR9-!BM'M:#0+Z92?<>Z=YYB+ H;K3S3 M\4T)ZZ&[7^NAU:[-.TE_W=@FY]H.EFD[V'NS':RL[6#ORG;XF+',@'I6"2IG MU<0$KG\TYP#-!;)*"0R 0/TJ7[,D$:@GP=3,B1BF##8,X]>\FQIU%(0 MPVZ<9$7S -X6C;T :3]R$SL&QO2ELHMID[5O21H^(,G!O(F>I?FC7O\43OV! M4IKP'!XL;^CU771S\7"65![ID&X EV8_SPCMNU-R>>'O(M@=)$V"=7+HZ>1A M$)H"KK-G V5%@5GRZ,7PBYI]!_OKNQ':9_< M;,^\>S?_^/3^K'$)+ 3CC+U^9E/3N]/"]5JS&\M4#,*$%S,09(A@(,E/Z48' M%!V]5'E 0A6?0!ZJO3PGS)K8LZ6\+T=+LIO ^NQ&_9&4D.>F__Q;[:YFW\*) M!#:"0X@'DDPPX&HP7YE3K[Y^N,-K"DAA..I C1"XV$8^F_I3%(W][RY;O:@* M0K0 I8A6O&\]^&$/>%H=@9I=Y'=M-#O9VPE. -[_7H#@\R94 LO^)C4S>A[. M7PPR[1$4H&]X!VNS<>PS]@;!^MUB'<&/#DO96GD4:P.V4!"1=$S9HZ@[1> V@A9 M/\-O@-%B_AX.Z),;@1)3U\8O-W_%^N+X !HDHN"#O%;@P#%L8>,"-[)QZ1BZ M&/\%"X%YP!MP!R[JO^)#)!HD)5*UAC& :>+YLJZ8KS$A;!].P/:&-#V/(@;] M[Z@XX0:$@E)/ O[@Y_FRDGZ1WIJX\HFTV5N626*,.P-WJ6>82@]WR_N/FJZ' M"9H@PI06IA 54'GJ@V8 0HO(4-ZMU_]ZH^"VX?3:UU/8''S%W\->S P+,CAR MO5@-[P[P>/%U:P%)AE$XAAO*K\C"G;JTB=2Z+*2W)C?]X\%C6KL_)NZS@*63 M\O+E)&%VK*+XP06OQW> 838!TE,U!1H3TX0?@]5IHLQ)F=>,AG5H+;0.X2&<.M^2M=?$?IAZ W)ZP%T9 M-!9Y.K(VSA/<-VR!,2FZ"HP$)4N0'E-Z3[ )V!.6:UZX1\H8Q*= <$[A)FV^ MSXOC*>F^TIKC2,7]DH#7 1>37KST8M+VJ9ATPZ>D7 70!F/ =WCI&X4^<%B, M;7"29PQ\KA$0+CW@\1J@*CI\J:/#YJ*EXJ'>8,GS*5:\)%:\.@.JP'$5UCW: M#< :U;0'RR"].H!E,(;YP$_95M/. _1QL/V8WA.4>1F+_C3B@E;R@)@F"\9M MW"D8SCAFUL X4MIMLZ)U=29L56;?([ZS_^Z] _X",]LB+R-LP,N5BOMBK'9E MQEHK*W+_2B55\]3*MC5,311.X[BL1>Z;<7AFL;C7I. MM(V9206H^+?R]CS&#_ U< %-[&O.C'1LPPO6R4LB';D#>4U<%JON;I (G^B- MA03HY&7TE%P_?99S19]=^.YV_6::Q GH6=B3XE6W:_-%(&5633K:(N2),'W7 M23-O6H!V*@O0]O$*4-#,MY%,V[#N3LIY2[S5K=1T& MC_ N6,,?;NS%9_" OL?/=L4M>.YX&?PJQFBPJK>06J/!L0;[S_>?EFN+YF5U M;9$EZFH*H[&"E1"$&-/GZ@?CXXEZO=0DAO[ -5*M('KNP3!W[<9OC1[N-2>\ M 6FT#WW.!B%MJ^P0\E47O.B)LAWH92H8EU%O?"E59IQC+*0X2ZK1/#U6ZH'ZB8R+?9Z)B\IGXGQ39Z*UVIE8 MW6/I\U>8_LUJFR9X"%) M:S-M5:I'<59,/;,Y_P@Q/^ KUGC'$9@M&87!*Y03RDWJ%Q N_A#$>9 M+V:'3P&F,4C']\Q0?0S!6YA6$ O?=_10#D;\"=C@R8L%YN%A,H,B.>&'2*O'4*;28?T&3A&D#Z9*#9A@M&0+TPXISY1F3,D* MF%_X?OZG=O:G,"G*T3 V!RRRH? 2$#64_M_'I'A*8=!UQ5=C3KO 0;_"#E)N MT!WF7<$>T$+MOT2"^F7H^? [_>#=AVO,^?B["V(J>K:;74 KZ1NPGOTP>$ =IJ=.9VL!;VG\SY<+^%ELW:VHVXJD>J9N9\:UEA73 MFU:2EY65Y,6FE&1[-2796OK>Y5I1V:IE].?1\G3K\M*YO+Q\:[7K5!K%N7K\ M1V-..% B%DD$C]6$ A^8 ,Y<^!H/OW-,1_D43O"0&B,L&/W1[.\Y=&LX9K^*71JG7D6GYI=."S M])Z9+5S@%/!FW0(!1EI@X#Z#SN:)4,H9RNF>(%0%F!,^]<8.@>ML%VN_HN3Y MS'A4I:*Y*#.?[02(_W+OMTY_4BGNY]UP,Y1A MHE!!C+O [,LW^8B.9M5!22*NX3G>.1&EJER!B'8N$:W21+PL1\5UHK5[HF*. M1WA%*BYF1>N*;E&@FE'/NW2WS:4J5K7E2P@R,Z2$..GQ/?CG&HWJ28SU32GN M[FJ*N[,!Q=TNK;B/."?I=^_=/UV4,,G/[>[>ZP%;(TNXL:D#=K[: 5L>CEI^ M;#JE#]@1YZR &2'12YI&8;EUE[C#H=)XZ!V4CFW\4WJJ^2<4ZD5-C]=VU*93 M0B>4+L@)EES#7]]NKZZU@UQ5D[]>/,'4EXY.S=G9RWII+")[2HO#<**H^O%=9Y&@?JM6BF83 MB0%LIYD?VD%DVIXOV9FG<<1/_"2\F""[5[@A(-?#>.O:$' MT\#<4"&H=+TGNF;!DG76$2X8 MV6)(H%)XO&*U.MZ'@9;?*M3!?.#1]P0XP!R )_PC7!9 80?60S*/Y13G@&PZ,%)"F;91WH!LUP"]GH$-KVTU^7DTQG_&Z[G0 &J MOYZ=]/]8QJ2?[:Z<\LFHV(=14;UVH]'O]Q4Z)8V*CK':U2P MNVT!: V6:U/D%J[E!'H_7)(RF &^6B4S[1J5Y/7/,$((&4GL):3,\71**EK,BNXLL*20R<"$QP&?N/83 MO]#N\QLU??W0#=8CJ:5(.F]L'*F:.D*KJ7IA8F-YPD-),^AR-:MI>8+'J^D#2#WK"3952R^X[B5>XLMR=-YN#&9,IG"30A3%'(TDDR@PO2#- MN2A._F^NB@RL(T(@S&Z&G/>/KUHAV;_1J'7F]6\M=0N-X886(J(SW*3%#Q'U MO9AOTA8(.2)20)$D7)Y,')10PT9YQ9?0'LJQ41;*F"X""?6$T@C3">$R\AN4 M6%6V4,G$2T60]Z*7? KB))JBIOOL)IBA\OP>]%\F_0IW6N^Q%UNRXQ-"0/,\ M2(512AV!'OV8P!4^<]'NV*^'F'/(F%KN,&$H),*'\D4*V27L/Q!E"C$GP4CJ M>0&=OS>4E F/^IZ(+"( RODQHR"@MO#^C2XP_',N>_(D^/G=&##E3^Q8YCE"@F'XM]3( Z)1$**CY=0M+4RE/XF%.9%+1>67B4M6N1D M!@9JUNU,IB)>,@DNOE7/RT,4@0Q@H+^VIY0%/2D!&DT_;4Q)Z_@)[XV=V1OE M=%9[+>449UGF;%LDN$N5ZG@8B0=,@F=)H=W4*58T7YAEU:5&%9F4^E" MZ3]S]46J;N.3N[>,_CI@*,#+EPX%V#E! 1XH%&#&DJEJCNW>KY\[\S*FUX)' MRYN+F%[P4?2B-&>V<9X7_J-L ;C/1!A+MO^,PNG$_NNO:T0MMMSAT/,14YF2 M\^ ^)(+ \OALQNXG'=TMDD\*',!5W]L?9!&%??4 MFI[(9HXV_W6:+W$[C>(ICB$U[OQO'=-!H@R6Q.LUYJHE5'.2S-Y6SMFXF91"(DI M4+/?I_D*\^T[K$R/GZP$R'*MXBN)G^$%F&"+^1#L_,97>(%FM*4GOF(KI-E( MB*+;$C=^0/]H-^MW[QUVZ&" .!N42_ 39;;OFP];&^;#(ZZ)_//] M)PNA32:8PJO2A38 YT=!"?LW<%NB#E('3J\(W:L1"YA]A9DM[ M8>;WCBV[8EDA^[,?V R2B!Y]X7-?&WPW8W)$F B-&:)IQY!&4QF7.6D1>5$O M2N;EIE>.+#*W!O)>F0%^T3.0)AL:GRHG=8E17J%3:::\[H_EY74F1\Z7UX%- MC_T=L8_L?8@?&;8]E]X5MS_-R>=)C7PNS^?7S?0BY>\RO>[ ](P>.(Q)2;N8 MBD+=7G430#3UTPV=N-[@# 93J2M+(QN-UNJ=M,DL_B0GSK8!=@V 81?][>@[=/F^8E[W9?TB B@2&2U%8H;G$4GBR]1\=>&A M2#?F\_?-P@H'$P,R-_7,(?PL(BR*U)?VG\43OF^=T]ZPSCGBZM+707R]@\#T%C*78U53*#VIL&QT2+;W*V*V/ M0L]RI\"3\/X^-59UXQ@N,@.I2C+HIREETJRHI0%?-W5DL'SF.A^=4,2.2VKL MB@@T[ NE8=1,U&L5-)K.'^*H,QLRJJ>;&Z?E9;+,:TX6LVTBFW&RAL3/J5^A MJ5-#Q-HR>]=*26\^811YR66.PP$5C>EYSW;,#2,/9 $J7?Z!)4%X^,$^OQR- M)::4(D/6(J!D)25#N1%;I@1?=>9-VZGTT2*@A\VVB]+>LN+^2 RFOGS 681Z M-F-I%4/ZM">2)T0*6F9O=*L&_K?ED6[5.CGY%@1JM&0I MYP>XE/DHB?43@/\>EK72V;"U+< M=3<+(9G-V<=/# 2369WO6"OT7G^Y&(J'=4BZ&SXD2QH3U/,]_6RU226)$T@+ M3X!UM3] V67WR+NF?Y^9N2]\?X+7\."!Q#/^#;3OJ[]55@GGR_3A/+B3&'9+ M_>LM:.)!,L+MJ__*^UDNW\*R[=^32(U/^/F@(Q1G,,"\S:'EFD328?^]% M?WMG&Y<'Q^:/R$@,IS%\&L^N*G<)\AB9<\M2Y6])5(K>;ZFA\T.$N.2XUV'T MFQT]]%XWZVVGV;IPFIW.F_D]D0QPN)Q=BV*<7_.W M8/9767+[8I@LVGKYR.7,(X3=JX_:@N3.=7'&UKA!K>BK<\Y;\Q;30AHOHUYY M%BD^E#SRM1N/!(%@JPD5;7'9?=&KV:T[^1XQ\Y>&TK)YGR=[3H1WM01']_3!"O#6'M3X%[B-DR;GZH"T.'A%8[_M M=,_G$TOW)TQ>O?N@B[(I0Z19WZNA7_TLS]OK>F7%UZ\JV[$3<[VTX-<&_-^N M\4#[_OQF'JWDWP*[[,NFSP%*V(=-K]Q6IL=*AE+G F/T\B;%P7HOI?J[L/R M+J,@I'-J= _!3,]*:PF2:.?A,NY7BI^OXZZ)Z< 5R/-/P?_PRC_@PLNY95I5 M[ET;N#FO)K++[.A+%>45>&9OWIGY8/WN)/E*\F*QK-^IN"A&MMB'05_)5=]V M.IWYZKGM6^]%8C]3C+=7J5^A)\F6A7ZSLQ.IOPU??)%>R-WR%ZH6UFUTLT.M M,%]V>6#F_2Y%17DLH\,6^,W+Y;J^G,#_&^5I[#B?Q\3\F,5_6Y".L\=\G/,- MY^.LA2))9+7K"PA[I4_4+#9V[*%3-9L@YEAE8;)GBV'*X"60%LTVY-)Z9!DX M=D&5N\)9Q(3FH1K/68Z(77D)E&K'^+L,0,!"EU9$W\DS/._8RU]<:RG2@>R" M;.)25LO17*01<:5O7550?TA64*$9I%Z%.ZQ1[%\01%J[-$',9;[>KYIAOD ;_ MI)PXT#>\A'QV6S$K/47=8R[R@@2D3NSULU47VRE>O$<1LRKZ?\'!D>K%,/I2 MK ]*9*9Z"4E8:]&9<.A0K,00JY^**LTGY^-N"#QX/W)E7"Z^>GC /DZ)^*1V M\1^XB:4P<=J71935QR4-ZX.^PJPY6M1AJ/3?SE[C$(-)9+/J_#:81XOYN MIS]G40'QS%GZJI9UG:[J'A;5>/7NW$!W5H8C@Q7SB9D&D>B'#X'WGQE$#@0[ MAG^+V%)-D9+08$-==U4DFK>G&00H.E#M,[I2-+ MJR2EJ)\1%F!'+N[.F>_!9:V'4&S4A-PZZH6;?8#K,_!7@:L77!"?EHIRQY MN6&6O#A>EOQ 8.+ @Y;1ZYW[:H 9&4ZQ<2G8+6AV#3QL-HG(D^X$:_BI2%,U M$?4T+Q-04A8@"91>%AKIG@I#Y<=X@QQ[U @VA?X'LXZ D! >W_U!\/BNNIS8 M[AC[=)5P UY4QL3AQ9BNI&([&PUHZUA?P4P$"P\O W<,HCK[B4W]R_3C7^^^I8_+7US!_F%[82(95Z4[ M-ICO1!U4UMDA;C-#H"O,_"W?N8T?7^D?VZ^Q,)+Y"T& #*8@:SC](>;)CB=^ M^"R0636G.0H9(:96<:C$+L3Y,R'L\P ^,Z'T'4-RZ++_X+#@R-N+SKWV4U)Z+DF#_Y)467JYR< M"\VDR&[B^*K\-L=>I5)"-OBRHG+[:K7U&X[;*HB!RFO^ MO??N2DFR&;AA^P#GB@WV[!7^0W)Y%D9YYVRT0WR#RK.^FM=G3E[B?.Y)-) 2 MMG'ZRF %;$?$+$%JJ,S)!U<'ELFRT+SP,8S(.BQ,)KIT+B[RDHF*.67;>[C9 M:K+*,U-71WG=F*'*-D_+KH[()L_%=A)QY]AYP<6G..>V59K'-TCY-SM4(QN< M]M>[;R>./R2.APU9B=OS\LL/E=>WRLFW*2?;K_&6)/T=;TY\?0A\?:OY^IZV MY:H_\L1C62[O=.?AY ^7S_W M;)POA ^H/.%[;FM(2=.8BVN_CD0RC0(QH+E(K.A)&/JS6F /GJDUBIVV$<]BD#\ZG<"6LXK=PBVO)<OXDAIU MY_)R'T99P4G92X';^J5MQQ!0/)!\N$9CT_W_ZL>;?O2[]XY24BP% WU*@ML9 M'VZ\#^41-Z+$]@8E:TO;S;UGZ0I'@KW'$&,@J8(HC*W]0ZD\$4XXITSSA7MMGU!P"A@L\K!YVHV?.NZ%G M1RZLU@66"LYH*KJ2#ZN0..4L5.7'G!45J;84CL4U3'UOXE%/;AJ+/D/+:FGK M)=ES"3.7AMX/H&.VBO#4V&5'LF_3O4\;1]S\%&5?>@9G.F;1Z8)#0,5D>.;' M5(@F6V*IEJ'\./8993%$]_"SN_XH]$5\]AGN?*&J5R-&Q]^-PX'P^51^%[*O MF2RLY"95(*UDIAN>O]FN83,9=$=W M0Y$-YM0S5M>=TKEV[(3>"WDFWXI!^,?>D^7'8UVZ;-Q =BWXE@7OS]; BW?P2A M$1$Z!R(@[^G8;.C8E'%U;>78X,9^A'W])+=UJ3ZI[26L<]AZA"!VX/),T" _ MR9DHN&@V2X.]J ;.5V#(4*VL@0*$&"QK+*A+OEZYG-GXVV'FR.Q9QO^YR%%E M-K4_3N[^Y:"$_2XAZFA3-3[P#/01??D>-EQKAA)0=8UV[3*O)\U/%]G?K'/R MP*%O&YMNV-YH'[=;7Z%I3#%DY]K_$5&(:!OH0+,'&>>,X7^GW"C7]_.]^!S! M8E_^F?+EPW'L3WTB<5RS[S1X[TSXRS(!8X,PL2?3GN_U_6<[X2Q(W?62'H8= M)-QMF"/"49@/1_#/S&./L*\(,2'FK\VV9T8N*'QIR?B%PO(<>;"L"-6=^1S6 MWWM ? P1 KLF'KX=<0QGI\TSXUA&I"\A$2DI"88K,F881S(MA> '$^2HJIS6 MM]H=#!8)%SCX6>Y/?QH]4INYN;A+S9ZQ\?#@6R2@<./;3 MR.N/K,3]#@N#*U-HN_T^(:NHZ*Y$W\C -/(RYT:C10A\B)@-!E-,,;MX+X@3 MX1)"1DIW"W\3>005-I@B>##P*SETX6>PU^(1];ZQ3T "%[Y 8!!\*<6UN=$> MKD4%F]1"8ADW8(0+XWK M7Z.Z>40.4KL?>S]LBDC'BR/SKR5_GU ;#@G*;T>*J[MIQ=79>)C-G(X99KN2 MS'X*K9U":V7FRYFZ!Q5<.^W72CF;O7>$&,[3CJ>3=Z\;6)LR16W3).NWL M4>PL.K2,C6T>ZL;N)![>;:\3E%8UC.'R%J'V:\(%Q5E@%N:B2J]3J'R_R"=I MRPZRB P'5SB<;XTTTXP@OX+KLIW7"V^'P>\R^W*4#+?(G;IW7BOVK.(UP/OQ M_^K_;P@#S3->KP3CD7;V@O=H04?QK8CHR1)>TXM:J[33],2-.Q-_Q?>XA5$L MR4F=>4Z:9YDUXUB7M6:S9!SKA,ETA*&I TQ&V&W'PVR$ZL\HC(L5^WX G'*W MZ4A8[)BBGU*R-A;HZ'7Y#+XIV9'K@,*<1\-H.Y-EI5_T$Z=S*.VHNT>>>*KP M15ML'KY./^"99IME;K[[R&L]4ARU(U2-S867#LTD977<15ZKTY.*.PAQ=!0J M;A^H7LOPZPJ=YR?LKBU@=VU'<\XBXI70?,V+^2:Z>\/L^DDQY19IU$.%DRNE M]K#4.!'OY:%AKDZ6%)8*RW2); MS6"+C4=J+VKGW8.J./Q9RJ+R;3M'OKIHCO^&3 M8>35XTP6FL(PRH)C9,WG==1KS8X7;-!^SP>-I8QCKXQ.VT)!RU?5K#5>J3T@ M%@(]R=I677F6Q7_,*#L2D?/RL=3>EF>58D#H T.CN]CT&3P_G<'J9[!Y?&=P M[OQ%8NQZ@42RS=0Y'LQ9W!C--E2(MS,!M,A60A/B+3R.>+]]6%VSD1H4=$/0 ML\^;N81V5:JB;5ZI1@C"O,@M12WAKWS]/8"%7D=OS^F_M+W KX&5^ M"7%I<)LS[2CU&*V:MC'=K?SU]R+A?C_K";B6P, 3HI\YVV[.;)%.K^:V7:Y" ML=+"EYOS7<7D.\)#M ]%>+EI17AQO$ 'VX%K9Q<>YWW^@["_KX*!<0_/!7!7 M#IAZK3V?EFA&07CB=5!X5-I.V4!@IW8Y'PA$[!'F?F9:#RPN+XB]?LJN MN.5+6+:U\E:NG07.O1(^!7$238F4-]BDX'[D!KFT^Z36E84KZB[.XZW-AP(T MRU!?"LL4!3,"A!HWJ!#2(C'AE#@DC79[/=KVEM.VMS)M]1G,DG69+.:SV*@M M;J;!3,AM/Z9!)/KA0P!Z!:MUTQ40>$D0 [DCUJE6$C+9"02!B1\N(7XIVJ_. MUR2B[G'^WXSIF_3_(">_F$+M8M:S>T)1@.!I7%#9D8NBX<3O&6;3*F>4O2\ M%\$?1K\GU2V*IE+<6$K9G33U"HVE,DL>A(QLYZ(#UYO WEL>&!%NA"H%:*=@ M]V)N-"5_3FVD'D-:+4688U#3B>?+R^#,.R3-_@A!S2%>F.^)J5J$[ &5)Y( M'J,Q+&\\%@./4/).RFI'LF'3'?::1]QA[V,8664ZU,&QF$RB\ ?A%P(7KW"K M7QF??&VS,MM]=HE+J)%S(9YQ"9'_QXOC*2(W3@S\0E-"R=,O?HC^%!OW,:;A MANED^,#^Z26C4>B#X7R-=OZR5.PI$X; QM28IEBLW8[3$>N+?-:=*K-/S7PR+XC\^Y;P%JA MR-56X&F;RL>EOL/-T&4J>(--GD)K3/A$L>([S6L@)=PQPFZ"F.!>;)2@RIZ( MQE)\3'AC27!,S'FU<,S7)SS,?:BN33=(;#8K 5+.)$PJ03R;(*& MJI:HUV49!F+E?-*LA5*\Y.ZRS-3F._M!P=!_\#Q[Z!H;D^NUD[GSU8]BE1 M;)J'T3-4)SLMT4+G%>]MG^)XBJ?A1@*OE''VU6L%*1S&"9-Z-@&ZBD1E/<"= M2"9)SZIBZBF*7XS=']YX.L;,+;C=6'UW,L&0?+*,!A>KUHP0!3[SVV[I9;?< M%=9]2,L5SIH&"2; KJ_>M>KSL+V_>O\OV*=G:!V? MH:6Z4EG]0Q0^@0SS ALDPUDD$M?SX?+Q*("C=9Z/*2"Y3DIV(,;6P1\]E#HV MSD'J K#D06QBL^959@+W%E>UN,:R8R_H8Q]ED9:H#/E-S_)-];PIO\8LKV;] M[5?Y]Y^T/OJP\?:-L]J,@D%&2)S@!'8I #>-&-+<%6+(3R8 *V");%P 4L&7 MUYLB7ZQTQ#_3! H$W9Q8"H?V%Q [7Y=*RI7FP2^KG<1-KK@I2#TTK&*3"7A? MC=UX+^)^Y-%]X=7.1-BFL1Z:1XSU\-$;)L^6/$CVZT[]S:\J1UG>M@)*R< R M/RP2=*PE3H_+]6I_JL! J'*?=)XM,X!N3YA(,71@E6)6-E<,V^6@B@ M8GBG+3>.R3E!'\Y4Z64\P3A9CK7@)6 2A3VZ/"K;0,[!BVT<8TS1VF4.WQ50 MR W#UI@538KF5.3L;3;GO=VSY@I*CQK[LF7-MAF(MF0TUHQ#S[O)F3A*UL$] M:KN03O32N :Q%>6-&6A]IEAO UL7"4VZ+H?"DHGTY% M\JP1GF\60,F-G7KQD_,QC/T3[L*TVCMYC&S9EFW+7'PW)U>LF_&;8L)E"K'I.^#'8^7 M!S"V\((?:_ -G:P1+[!M[8GO,N*?( !#,.@H*S,O$5,;A@0A)$U#:Y%I2'<# MBDR2F=>MG6L#$[_YI65\ !6 2Z]3/]$"1@#!?*3YK^@1^_UO/-*GL M UP@JJ:5U@<:;&99NV>]$Y]OF@WNO!\G+C\T+B];DGF"$=H]C%!.^>F2RMTM M@PB==JMXM^JGW3JBW3J=K6/:K<,Z6SN!4^LTU\$OP[LUQOUD4N@+1$I;U,9[ M'R!IV88GK16RB'+\C!]^]/WI@%I'Q,G-\,\PQ,83,(U'KR_ND)E5\+0U7]M< M&N=@?_!U)VY;D]LZ!\)MW?DDAA.SO31FJQ\(LS5/W/83<%OW0+BM>SZ?M;9O M;CL0J-$/P8,7"(&M%1V,' I,BY1M2,#8],,)1G%.P%F[M"93@/-%P6MCU[[* M/8.S\#[=L(*ST#@0>-(3&VW93-PJ&[7+*_ 3&QT0&ZUN &Z5C1I.X[PTQ.6) MD0Z(D5:W[;;,2/5.:3SY0['L]HR[?0>DY$918S?Z+K!5&.>\=2 >B,-N%/$GMT8F^\P=C+W 0^1B3.O??VJC'.UG[1JQ$8>2DWMBW-T:HJLS;M/IM$I;I"?&/3'N=DSA MU1GWTNF6=V6>&/?$N-LQQ5=GW+9S>5DZF+,7QMVM1W7SICQ7 2\JN/TYS^BB M/)4#.I[5\T!5#>H?FZ MN1!720(_U68YKX#3CG3KE^/Y%6#_9%&,/K@1HN3'MR*B S-_1AK%<$$+!SC> MD_5[[]V7,!%6HV%C^Z%&\ZVM5DD0X 2&/ M'<:1K72ZLJX+S+>/ MEL 9Z#OX_RD"+HLY=M+MKS[5XC+#,M'.>PESRF&=O(4GA&*GCT6R2@< MV!'"X44P+F+>35QTW7D3E^"Q8]&?1E[BB;AF?0L&Z*[$)A3F'%P?:*V@HA<] M;>,E/ D@)> QK#HVHO#?J?0*?7%8NMTF+QB%%&KWS?*I0U@LH1 ME:3!-N)]FS$JQ.#,?101 C2GG7M,3LPAZOA16>0R.S^'Q*)A,VE;$%'89L3"88A:^<8IUU\2!!>^%/W#U? [U MN*[N@;+H%RG<.H/[!',"R0#B 7SO1ZW$IB$V''$@U.-1/"Y5XFQ R-W M8-&SC,U:LV^7/* F;+Y+KIHP8&.J?@1-0-J#O\%;0.QDFRZ97\ PH"T"BD7A M?AAB-M5JI#KTC,1P*/H$Y;%LA< ),)PO^K(!PL#D$J 9^DAP''X6.]L'Q#)P MI?*]/I]LU9JP(''N%JZS_5:D][6V&UJQ_[DHOAF#'99FX"ET*\&,X;W>S]2R,/LBJO M)#USHOG9G2SX\^<==U>HI?/\D)X?_ N48JW1['@!L(ETR!; J>618O97>1SX MRVIP9J^WE-<)*_Q$7KB_8)E7RA%W'U[3=?/."!G0!<3,[8AA?O"V^7+(]D5> MW?X*J&1O#IW>U9,3-T_OIM/HYN5_O21Z5\^PVSR]6TZGG9?&_)+H73U+;//T M[CKGW;SRN=7I7:4ZNHSF6U!UL]",*Q%VS& MW#UMZ6DR&V#V,C!@_YR-]\['FCE=K/%VGJ>W3)WRYOBG+Q]7T)]JS5>\Y"\4 MB9:- 6_2=<]$ [0:K1O:DZGUZEVG[;1;>76\!\%FY>WLO1.R?>ETF\M-[4,D M9/V@"-EI.?5Z/TG"C=+JYY2%U6CU_=$S[S^ M?YV=V1\]X0]^LV_=!_$6WO'OJ0CZXC>[V;+/SN3/Z1SI+5!3-B?2:.;,I(N? MK9+DFI?G56*YKS(+44MX:]\_3V A5Y';\_IO[2]P_'B97T)<6N/2?.IOZC%: M-7%GRG+YZ^]%POU^UA-PY&'@"='/G&TW9[9()W/%1N9KRBL+7V[.%Q>2[M"+ M.A3KUD=T2]='=%Y6-4\D)MAC,$CBFHUZV96QZ7F9-D=>*W3T4&0ON3:% M:I5HI67_Y;*"2J/%^NMUH%4#(G5KP=27S:K;S= MJI]VZXAVZW2VCFFW#NML[:>^;WW7V74^,A!>L!?0URCGV2*T=6')RW:.67%- MD>FI/8M%_\S[<3;R!@,!/^'_ATGTD[-&H[W6! D@5,^0G#*+-F#GI#GM^:(] M[YSV_*?;\^YISU_*GE=V+FRA79BAD6^50B:'=V[K 16[;SCU=NGN SO;@$V5 M3*UOY]R9X)&$3#R-^B,W%IDHTJE1=75VK]I(%^E^P_MR'][*73'B/(5LWW6Z MN?@ 2TEQZFN^9W:IVKYV379IU$MW:3NQRP&Q2]6FL6NRR_EY7E;JB5T.G5VJ MMFI=BUTNG$[YEL*'8GBMVX)U?=/L:RZ0]XG[=VF*:8A>W(!/!-+^GK*X;BF! MBS)QXG2CZ&=73VZ$V3HWPX]A-!1>,L534'1 FD[KXD .R(FC=M2P=-L<==DJ MW?1D8=CC_N-K]+RXG_=^Z M,W:"&/P;[L,27W/S_$ 8^L0BNW"Z56*1RY,6/486J>AH6YU%FLYY+M[8B44. MG44J.M>.6HKLW*&V^1R_?[I1Y%(M7QK]S*1G%R1][3#?4(ZV+'EP=[D#J\WD M$$T\M?.KN[3;SF6W= 1D0>;EKO;IQ*,'P:,5;,G#CUQ:&43NBJ'MIR+\@4.)PX]<6AE M^[DJAW:<1GEO]5Z-9P71618P\X6! 1; E&6A 7'OO62, '=7P>":OGL00=\3 M\7LO[OMA/,U#0VODPYVI;)/51GUU''3/0:+[O??N"YPBJ]&T9;FC;2R=VEGU MS<7/0NX?F\C[-B4\)65N?EHM^)W[]U?XL'UK<]NDH@(.,Q[ MN1RV%L1C9=8Z6B(BWBFL&H9[MKW8CJ>]?XE^@K%1'UG&GD1A7PC4T5)4^:XW MCAG)U(T\@A@E_%*P=[S C9[AL$XC^#@RPT2%VQ_QF!:.#F][] ;P.;:PG"C;@P%0GT:"WT0_Q\G"KWL*!+4G[(GK M#6B.D7#C,(!OGD$!)6#8P&]J]C]''OS4'3P*G!Y:/#$5P<+\^R)*7 ]Q5RUX M 7SK>XGWP'PQYC/CJ)7C"]S!V N\.(E<0DTU:=1/$59=?!;(#@M@7%4;AG-A MFNBHF_IN)&%A22N+5R"&X_LH1\^(87H&B<#(ND%HN^-PBJHU0F1> MQ'%A_HC$T!=47\,L2T7/ 5GC+GZ:SB!.X -6SY'PZ4O"V37655M![ARI:-B@ M!7DW[<4$!)Y\>$2RKFPL+AS@>"6OM@M;VBY,5PDB$I=YL@67V(++&4N9?658 M\&@);&KQ">>7H9A+2*%G6(J5U0"S]4$&1N'T861?31]@2KQ)'<=&"#B'Y"O* MQ512#D00B\%RF6F1'/:HCN $);XN_[9*\^^Q6*&OWMT$UM^G8"]T3693_(M6 M-G"6:S,,_QG0;#+M^:!C0C 8"%(?U'^AQZO1::[>PI6<7C?X"C&8\7/EM65M M-)QNH^.TZO.5G+J'-9O 9EZA V:L!R8OX_+#,I>LH[7U=72<]GG=J;=DNE&Z16JJT L?!]9S>RJX-AH%X,$]?I"6>.:->U?EI"B1HU.7D.QM)E$S;HG\:Y,9LF7BC @Z ?V= *+$3]$U)?7 MO>'4]Y4)/@6U$#U%'MZ1_K<$%LK@"J&#%S]$%4&#UNR_UV[A.AA&#R ][@1< M'_@N8OWUU[5C_],#PKMC])A[D?W_N>/)6R4:'/NOVE^UZQHQWG7X) +Y+_7M M7]=\!\!EPMZYL?VOT,.;31A^/XNF ;9OD#>>B*]%='.58J4& DL,1N[8FGTK MC$LO'P[BD1?X&625#A?*&-+ M=P>)89\5R>7> +/27SF,RF_ UB%J)-5GQ(OU-(";A[!KP)2#*<];[R5U+_'B M/O&$Q1[*\1@T.EV8\6]YU80SHX6R^#%! R%F4BP[#1D!?=992:[!VS[(E^DC MT,T>@5?OSB]J.8P_1NX*@Y-9DNO^*F.-'"V]E-'1O,BS.MP@"-&S,J!/01F( M\43UXD$EOH2=.RNSLPZ#^&XA] KMSF_UNCVIC6L.D?S_AM%W^]I+ M0 8!U1UTXO M IL&$'GM)Y@&NUT&0N!U!)0G>9;P"1**RV3$RDT N;Y&JDA) MT1)*LE[+,^)01TJJL#R=I10\;$E*D1?2, Y*F /G>S$'&K5.O< <<-)>5Z3( M8.<3EW2].P%5\H-D/IRAE1977KK_&6''(ZFR%HOV5J.68ZTJM@<#)?4<:_T' M+)PQ7BT/U@0,N@H+'LBY-H^TR8SIL;7UL9T19GAI+^6YG/==9D3XO !?T%NC MK(K87J![=PM8J0UD^X6W@6S67W(;R&,]#/0_+AE[[O^KUR^0:]UW1[*Z?!_Z MIT2,>=7-FI7&&'50#>.V4[JYT,7E"BZBSS%=@V"SE?/R6H6!=/PKZ[_\K]"GH+UC?PKZ-;" *51-5Q:7@L0PZK_@4HB/6Q3[ M9H^7.X5W<22D;$R$IL7&&,>3X9I%$1@1"3#3M#M8^+%XHF VQ:A!3OW/U(U M58/1_55,PBBQ8(W WF.@TMG_Z&'5E!:^._L^_&1M66DME)7:Y37TT,BUGX4; M<9L\^[WH"VJ?VVK0/;&N/.(C%[O6PHUUZ/GP.TWNU$%(<_KPHS]R@P?!.70T M5^LU+J!9?WOWX9K^U7C[!B^DG]T(QI4!K=ILTM-+."(O^N ;#(PW%-<+5.9& MSJFP,Z="9B<)3COQXB2,L#3.QHX5?%4:2@7ALX(P3\MK9#V9U#06+OJ,+>!N MX$.2+\W&!R5^#-;4;'F%&2U#NW'9:COH" :S&/G>L>6),'_XAB?J!8^A_PBB MP8N_,Y-G4GQJ]MT4^'AFQB9YQNXS2BUO@)?>H4>!# ==^A@JPR./-",Y1_*+ MD[-F*0#4''M!Z(;K4Y^CQ!8*JCRWY,4QG]I?H"YK] MC,7MW*="?)_]#.@ 1)Q[_<1W@_DY2)#91F422GH]NY$E1Q]\%-N58C2=NQ!EI*35QZZW>LZ&^2%I2]IAX>"[) M \ N4^!@I=EPRP<>.L/M&,XA['K?I10LZ>9[V0M9OJ:_1&.1AC) MW*\Q^BIL[B N<\#4BT%YR/>J/*[BEQ;QK=1ZCMV;IL?5]\8>)UPYT('$>;!_N%B ],5T7 M77 3S*$^\T&]^B#H'CQTMR>8V,".9I6A# (EF08"5EVOLYX)2"W Y\8X++ZM M/MQ?$A100?C("DR-#-(9@[TRAOL#\X_1*P<$R]Z,**@;\%\X;U@$]%[8XO4B=QMJ>_PK@2JA"+0 UQW.*'T8]")<$WP*?J=A,GS M1%K\!IG(8PX/^3 VB'%X(@!.T8N#FQ7. BTF#WV-'NL80;YO"ZC8K->[2,W/ M(O!#^]:-OCOV-3 G/!5X+MMK]D,DT\AA]=.!FBY=%XEE3ZWA)J?2= M'_*"\BGD6$]A1)H&GNEY#VBYP2B^]UWHEXXG4R;1EYN[__G+@7O3X\T$\[6] M?@2; F**M@V?AENGR_>U3P[]_[^G7O\[)[^#,>+%(\X%%/Z05RCW+T*SMC\* M,6!%%S;1'TD#$$=12Y,C+U,Z7L662P('>>W!#WNN;VPKS$9PZ@9N M]Z=[6[&59A"^A>,Q&L$@_V9#A^31G>=[<#+L?X#])Y[E.4T'Y/!"K Q/A#@$ M'B2["J;[6?R A^FA,4J""1SJ#],HG,!MRZ:DD\B;DTG220'?@^VEJDI0N*)% MRA(!" "&HI"G%WC5%S^8J_'V9YF")PZ'R1.:G .!]G-&$H'=B;<(21>\?$28 M2B.I8WB4:K/Y<'X< J7\"0A03&[R_B,%>$_ ;. V"5.WW 2%'&?!G.L.5&3$29*X/BX*0:Y4H$]H8)9>Z5K*20-GY'5@)O6&4M]SORPUVT^V6 M(_$M!:8=IZ0*D0'T)0_DJ(=S5,/0M^A&P#G3[2Q6I4*^'M[2?D,:BUZDN$=O M4QC4[#^>;=38D4O4SF53F G(3)'@=8."T#&J9\R/&\,!'9# 38=T8.\FH$G0 MUQ98P (X=Y/6Y.?3<]&[OE 9J;(HMS]"&IN71%!PX5,R.HGPHUC5/T%B8&8A M)1X 5_9\-_@.6EOTOTMU+#T(+.\H(V\:21O,G\^<1K?HL]TDYVOCH@:&LO23 MLB\V:RK+EZK*+@NXZWKDPE0?[/O46+CJ@\$1L_?].HPFVNZ6OU66L&/,$8^X M:SPWYYO_1&+7YQP/8[D,DN,:-/?1? MX("3$[K1(CI=M^6TTVZ?[!HI^,D*CP17HD:B[TY0[4MS@7[! M,1%@='IZ(-B?J$L9*>3#0Y*=TJ="QZAF&PE&5EJ%0.,(J@>EIKKD2H.14%*H MZ@3ZL6/+["]F2G=N3V]1)&1Q39$:7FQK?OW3W0!(4")E MR98E2D;JG%E9(@$TNM$W].74XY;L4XY;:O I:=BAV*E8*&(8J.*02KO/R 6AE>\!@@6?_=&J;=P])\-UT61"(.E(4 M^XQ_PPNN_+M/H54'; E^^Y<7 M=F]YWS:L9,89]&.R1(BREJ,,\V$?7"%M#"<1K "==-_H!BETX1'KBS="9D- M!/#O6;@=?-VVM7S5]034M7&QXM52Q??3'BWMEN&%-0X3R*]H@)],4EW=1VSK MF8=<(DYH9>3.C++$P6@$D]WAU4*1/$&^L]Y6UODT=1#S SS8XOQ6[.%. M21/CKPZR+7K_Y?ZW#[/_VY_\HY*2G2;WWSH@\7<:1/RO:'F@7*._)IM'2 M;(^M"]V[L 87@_OV<7]5L8\9=9L MFO\V>UVJTYU$U-V=@OEJQ/$W)X/7:=C M=0=#?>CTH7O8H=M5=_I'+HJ*,6#LRL1/=9O@]10SLBY&%[IGJ[,'-#32 ML.N/JL'QT.W51<=\'1'5:-A!0T=RQ[LP6+3Q^$>/(Q: M^U @CM1:P[3\F$U9F&"^I)9RFTBYOEUW&:&/]3ZEW/X54HT&+>4:BH=F2[E= MQ".^]X,,\^BH>64>)'R<=%%W@[Y3DFA3JQI],@]Y,BMR<,(WCG;Q-N%P[,'3 MK@_'D1R.IS78.)CX66;0[##. 6DNX>+!'T>-CD/^X]*;D04 MYCHQ)R\&/WS]?@IR;A_7'^V6K25<$TYT@ZY C@8U^SD@;>T-T0>D4A"^H3*9 M1U@0]-[ZGTKEVV]9P,[5ZK=R.G75W8I5TW>R>$$?:R0H+ZNX5,H6TV!5-8MW M!"0=ORI=,K M!VYU^G[8H*;H7)^\C]\\9(E5!:J)IAY*]Z5;_TW_\=L2RZSP&U%U^BI%6[27 M%#\4)95GS$FRF)JL;ED;]F?_%]$O(I_ODQA,-(O $ 5L6;&1!-B< M*>Q25NCBT0_1>P3D12%ZE&8[U4+6EI96"4!6]M^F,\"V\N?)*B]_]^]T86GE M7WUAZ?U1WL:.H)KXM_N*2F]$J@\%Y\G*3K\U#W'FBVK(%0MZ(!=X^&UU;37J MRJVI* SZ5&:HQE85MNH\?X?!UL%+6A]2=N^\S/ >Q4'CCEFG0<=LP]K$AV:0 MFN8US3\/FM=ENC>[(3B)BL'#@36LO>#4%8-W#MBI50P^#]:P4U<7 M4Q\Z?>B.(8J)NW[*[NEYI,Y#1:^LRW8?'@@T6PCX*"^@CL0E_VDN- MJ*-,&WGQRS]1S.GRW%M=(G5'NF;(X;&P%T&G*[_=AP:[;75J;_[T>=@C(H:M M?53@:Z2UIFMS;RBYK'YO'UQ3XV$]'GJZ-G<3T#"P+@;[*!^K\7"/Z.JT]E&B M\DA--%V<^P%B;A]5;/2YUF+N&-"@Q5PS\-!P,:>K#FCT=#EL?#GTX]F.Q<3#QLZ[.?:S$JFL0:V1H9&AD:&3L0HKJZMP-HQJ[ M9XWV$7NBC_ FR+C8AS='.S?73P0:?4]7)6T&+B[VT7SP*"_Q='GNG1/;R++[ M>PAET0=_HYPAG730 "Q8HPO=J:(9N.CN(Q:S@:&8ND#WK@MT:QG7A!/=H%N0 MHT'-G@ITZP.B#TBE(#S= MW' $15!>7.ZV: )+?W1/;UY_$OWQA6=C+>LQL6 M1/,9?$Z6*X6> J2G>2X^A@;6FDZG,6.E&K8F5HCE,'?;EHDE-BTSRF)96BO! M,ELO>Q>M"Q-F#K#N]2V+F9G-S6&KGW\7Q6;';@U?8<537L+:3^!K4>):G=;@ MTWYR8G=J=FTY)1;3AC%MN]NR7_%LX4T7W&Z97V#!&\&6@V7XH1MD^-#+4:N; MPP'+%T\ &&$:^^.,:GWG"W+"DI?]UE#%B0UX6X<3HS0OX41,O(R8E_:@U5:'OK!; M@VT118/=.@F],05E@"6IA,KX(W/BE,6FV!=:<;C BNSVQ=L$'D_2*%ZTS.\^ MK,*))1R! V.DMY$IWH=#L-W.WC+SUD]#EB3,,Z;,"=+IPAQGB8]?F6D,;R8M M\P?,;\+_PX@@>\!CP,<_@=0* MV%U@@M$,\ G'A@KEX)=^Z,'7\<*4?@?X-3%IMP&:-';"I*C/[X=PU!P$&=#H M7#-1F1 F=*Y8Z]0X?*/DUKI^+]@&Y2W,@43HPO([@Z(I"MDH_(V:1C!VIV(E M Z7#RT;EY]55RWJ5FS4Z40"1(+PU?RSF ,AE[(PQHN^S,V,V?NMI!Q6IQGUY4]_TH*:?5DZOKO:=M M38-/2<,.QIVRIT)+E 5J[P4-)4?&#M'LK4,2->_8.YTS *HJN%^8EY MOL,5@1\,A!XPZ#/10.7'IQ^B99X*U*+])9> MO]6#<;WH5JAT@X%0L/#)! Z^?-Q8,-!1G*N("V\@-QC6G\":A6RJF!9A06[$ M:^30A%X,+X;F> &B ^##M!O\$>XP9%,>I2#B)5:+-)YKJHMZ# =F9SI)-< MEX'G0B R1;+"_J *@*"J3[$[4+9(AY6/PE[Z.#PLA.,6UUE2:+5 /0JH_L,, M>=SQM$\B0+$9%5;/,J$"PH&V0 "1/J@J9N;824B/FY:I2FCL>=>DI*0#5IB" M-4HYTA@LQBL43VY$P;)1V8,3T+$[*H6"E4)/V,.A0N/UVFI9TS:X^@PGHGNQ MT>NX;%,Q02?X8 ) MGH$V_5KZ "QT IQU6_9KDG]YG!%6>T/):_JS>0SV+CH*YS M+\4H6X;D7B_[A3N*7K&[XI4M]^.EW>J4!NJO'Z<$@T'=6XCPN0*C. V$/& X M%J]>"W9/X*<+TEBD@Z307-3GX<& NK?-@<]$8<@" ]>:?WT;Q=?F%+A<(M0= MKG.HOK3UG+#$3_HT,9PO'__!VF27B6B"TL3?Y0&(G(26)\3!.>NDTRY MXP_,(:"8EODWYGA"_X%!X*PGR-TKE["UZ O6VCC@F8-+ D&^)#%T5S8K)>) M[W V*KS:!HX*^QC 6G%PL:9QC(WBI,,SS4UP&/GK;U;1"]02O4=3QP^XLS=- M2N.;4^#$SARX\YT_JQ#L\/-D&L6P.)? MBXIC@0I$Q7M0Z&9C,%SM'M>]RZ("=/LIBP/2&$EDT.WK5L+@J&WDC-)2601QU?N8YLSY+^C:R+O-:3;.F?GOU[$#[ZUR:;H2[+1- M]!>2]LKN0#?VD0/A%;'' O3(X&Q)-$EOL6VH8+'$Y]S QT@,.8V#38V9"5MP MA2RXZL),-?WI$O8<%VOEDF_&W;W\)M2%^2Q2T9F7<9=0R_R._;HC\G>8UVQ1 MYJMR9"%?:>%RO4@J(=TK7J%+&':=?)5@BA2;:J%01+CS,!..J??LYLL\:9&# MQ!3B7#W&+"#(DJD_%X*!]D5< MVB8IT,]Y-N>2C"48\^4G4^89.48X0GWL1@ZVXAAP!LM?$54R7(!$EI!64A B M.0 ZIPZ\YXB% 6%,HBB=@AA& +E&48A3/H*A$B@2A/3N24\>>7Y\(!'IX=7B M["B@ G'V[LN_/[X_MT?&-Z10U)7G'OROCKMJ)E049I6+L$[;!GO',4/@\&A/ MP(EV;OP8U%.)5O*7Q&P.1@27'>] ]14W;:A\4H@4EX)XR/\3Q< (_D9\V?P2 M7P'#^9,[Z3WF!@X)N!0FA+5[;.:[+8."5I A +^-,@R42,@1(Y\@ 52Z_4M M^W6\W *!6=$T899@Z\A*8,-XG5"0E8JV7K!6#)0!=N02[[_%1:-,,AA,%.&D M^,L-NHOPX=RFD7:,!=+T*J0+B# -2KQ C"U44V#X#UIF" MX2@\^&X0)5E,@E5R:J2L)*+= =2AK4H"$M>)2HU#UN93\//*?O3Z.IZ ^([J M -ZK+AU14)B T-%^!^) L9[?J.9!#X>1N[3]W YH)AS;04OBXS5BV7Z$56HL+A/+BZ9.8-9 M54])@5)O*.F8X2%SR/OKP,,SX =P4O#UE/NNX;F9'\()^Y/K0[&?7$L-E?-< M@1-%L2\%F?%#)52I619*71:#%P## "OO731V8Y@K4 MJQC#,[EKE$Q1D/>_O?]H\:_@$XP*FL"-C ZB%V+C##^+.3Y2['U@\KGD+&"= MS:BM5[7'I(+L1"/12P&"Q +8\2II 96,;L"DZ!LBYTC7^^_/[^\E_F M=UK()W()F+"5:'#(B=[_?Y_5C56^_D^^XZ5XWU,[]*?)RM#?25EJ(IH(#W)U MP6(MG8X$*N0)ALH3,"Z8&X3$6(I^L'22R0W'76YH38,5G?(? K^X7YHY"_*G MC<6M1TS7*&.6WI*##E:"6048_B!FDHRPBF$6W+"O9"@B0^0R!B./Q1J4:T5R MI+H99:^-&<@PS6&. BK@,/]@"^,KBXF7H$7U,?0PTCT2/BN>7/*KR*RXG$P8 M]V(KKVCNF.51W70O?;#-V8X\R[DCRMN/A (]UU$LEG(GGWC;? P!"O?->QTOS&^ 1&U9'Q=4ERFH2R$2\9?M)JD'%50B_,G6('7&V0@D5%2\9,M >&0H#RXA[X,V0,:_(YB-& M)/.Y,$ZJ5;T"^<@\CLA8$KI6%%Z=@R4[RR'P&)B07OE:UD#7/;Y1+ B86)R) MN'N^6WA)&< KH"9]_$&I G@-A>8QWDV1S9XZ/*> HJ9PH+KMRO,%:*^Q7:6/ MEU_P."QSNCK^J9'C:1XRL/@-Q0U$JGPRC6ZYS TS"J18\4 4M'!6A"5,LB X M3V$ZY5@B*5+JB!#6,I8;2#,1543P?LDER^(U G&2<%D0S#&?-+SZRXOV"_H[0;R)O^6M![_/<8&@G'D"$,I/;S$J,IWB M\MNO^!YL LJ+C8J=[J*GX=H*>C30+4.1@W,&'G!#OAG%W0U>6NVTQ%U>+A#V M$+_]RXO!BS4+JKH>V^!Z[:'KO4QH?7!$919NS=Y5;I0X!2H$A^E_\EQ(I],@ MTL$$I$81B\;6>FRU&X6MI^T&(<34Q>#5#AL#OOCE]Y!"#[^GI,L4Z5PU.RN% MY:NG(;3E678*ZMH#)J8<+4WYZ$KLM2U$#P>C1MZF'*9?)P[V!N,NR^KO6F14 M6 SOJ$110"M!7O+!P90JF9]2KKO/DV_R6Q4E/V<;KOZDI'R?]-H?A6^WDD<3 MOF6/ZMI:UPX#0E"1:O^!JAC4F#CF7M8E'-J'0S M3 *-&*#F?HV'B@?68%R&KQ-5C@VJ'U,6,T/$;E#5+^R*$L4KD1LR+YG?Q"LY MN.48 )&.*Q)W,3-:+3-),2'J3!@U['A8$(4%"X.7)]@@+N>*LI1YD4NQ:TG+ ME+%=&.:"B;X8"X-%E%EM],K,H5J9/L:X^-P%;^0Q/U0I,R[%0SN!R283W\4R M0(NE\!TS8>PZX1$W%&4#>#7!ZL1 H/$"%WOC>S)0*9IC@C'F,R_R1.(($[(Q MYB&\L@PW2_'#.57<@W?_2X% B!@L@<-!1X'*4WTQO6@2L#L_K]7)PAL_CG@* ML0B3YF%2/(LW+^*#(UW%SBRI#D8R@(9 %Z G4\R+Q]@BK/.0A2GF+CGRU)N4 MA!U&O'T,=OUQ1!Z[[YVG(@0<+Z9@M(1:P6!.G MLWGU*7EZS>AO6#:9@E5_Q^(XO#:0UI*.":K+Q)A%25JK1^2]%W))C=7G1*X! MEF6A)-F;R'=Y-5O'3&%"^AJK&\8^*EAC)_%A#36*BA3#6+O$O>9J4#Y;7J>; ME^C&+*NP2)M02Q>1[!93NU',2S*16@(?X667B:CE*AVP9?Z(2&="_<; ..,J M16P)!',&FX-JD\S[-#,Z!CPQ8WD*2VB5/+B96F LQ3-C<9DKTC906R.]AMHD MY-&G%CXEU30L544I8EQ+*4)4J?@/JJ(!PQB,?"OA71S-23"N>L:5*VK(P9-! M"E3SQFCX@Y$78,D315 1528KREF"LHE+3ZX!8R*[CH4^C[&&-^4R:D+#%6WL MBH58$(N#!P1A9 5SX?.)7%LJ'Y:-*6D/RU@6E79 *\5R,ZGH',B55)R>*^^N M$[A90*$IJ*&IX]/V4RD;!W#%1\?WX8R3CFN(E8< MQA$)@CC&V:+^5=YBQ+EQ_.41\CX_?""^?RLYCLK^B>R@I8.D DG!_%31B$8O M%'\JX D/HZ(-<[M,XMVG9%AEEKQX,<\PXG/E5"$B\WWJLN?Z"35E.4T&>II0 MU^N[$CT%P39U@0MV9 M,)T:0.IT!JN/*BS4X,_::HU)^Z*SW*R(2N;EE:!!\Y@[<;K:@;?L-!3JQG!@KB&0UT4FHFKQ<)2^F8#R_Y">=?[3CX=:E$VT7 M\<;==2\>07*5Q6WS81\*,^AH/ZB;V#87EVH#KB4ESFP@@)ALM15\E)A5UDV? M@+@:G&^UMU2=1T0^>LC:P^BLP]&?Z- MJ\)83EN-TL5'?C*Q'Q=&%.P0B"\3 Y_/-@$-2): 0:_?\*3H) MX%U8[,^D1^#U3_L0016Q&D])I+NDS(TG>@J -#(:@XRG54]J.,@N0;I*W[[L MM]JRC[BFM+43C?2);P0>ZO2"IASV@QWE3JM/]=)M^ZT)QYI6H8_V)A/U]-%N M!![JS+6F'.T&RW$;Y+@\_, (].'?/(NWKT]_(Q!15ZRB*:?__OH\CZHM,3PMM6H/TB8/FB\R?!S83:5YBS'?_;BM^\(DSD@_/+^]G?X1W^+2$ MTD"ZKT_)7M1=F(X+6\?9A4EG'.F,(YUQI#..&I2TTNG4!;'HC*/&(Z]W\&PQ MG7%T5#[_YY#DHI'1(&2<1*2RSCC2&4?'A0>=<:0SCG9,4CI2JAEXT!E'#S[\ M.N/HH1/IC*.&($)G')U*B//^!/>PM0>JT9D)]QQ!AV[7&@YUQM&S$>S :O<.Z_YN0.ONIL6V'T,_#IVQM7W&UA%D2CQPB:L++&56W)_P M50E+56Z7'VZ5GK7KT+NM,JY.+8\J\>]VF45UT5G)HC(V2:-J,%<\NC2J=:V] M1Z?>VKNO6WOK4_*44/'6G[\">< ,QKLLCJDS[(<[=^J$@+UOV+CVP]T\POZQ MNA?H#A+F\O67>S""N&&XS1, MLO%_1F),L=%-JB5T,ZE!K36KSN32(:-$),WWX_=L7R_QK#/(]F9IS M=)O [GYB=Z"7(01)1+T$C4]1X$4W\%7 LN7^HFZ$?0BQ'3+O59EK&*@MS)T% M->@4W5!Y&VJ$<0ZJ1S3S0X=Z;CM!(-LDRPZ'\(:R9%@5;!*;IP:.NJ2C4#]. M.70^0'D&& Z!I;?*\+;,CS!M&(7G-!^VI_8]WXE]EF]O-&>\TZ+ #3/PJ=2A M?JL!;\7-N[=CG\=$]O>&T1DJ3$!NQ2ZU@'AOL!=W;=='=07XGI=A\])B"=16 MEOIR&[ 7,YL\RO0* A;RT/AV>,OXVSU+QF;([D MX<<@GB/1*#YF+HCJ9!D%+=IWV:1:/A\SXQKP(C>XQ7&R^I0IG\(FXCF9 HAU M)+U\2*@ONT-DSL\PMMKV"^45.]!.G1OJM!GAMJ!]40( P]'YB5I>@^R>Z6(4 M.^T[+)3'N^.9QY;T0,DX+0L39$#I8HZF"^!^+%8V87&,OIRSQP'N!0J*_#'_ 089YP,P8RGU ;6_@C@C7'DC2P MBW"48 /Z)'.GAH.T&J9 ;G+JTA8B'V1NALWL*W!"2Q);2$\ /*6==%+>PE1E M7#@0FTP8;[4KFY$:8FN5N2W9/]AU8!O@=R=)1+OSP,_;\RIKM;#AO)C2P<-S M):HX!$N\TN#=PRWXG6NF,'SH?+$;^\&Q9U*?:QO7V,"'* M=U"'560N+K >"E)XPPY'3R,>^=X*(#0NDIYUWLQOI%,&8"*&\,;14\"DB!4 MG(*%YWS2=!DJ08J\;RSM-?92IB_I&V)*='"9?T-F/N>]W.*/L@ )!QA3F@:T M)H-8)JZB95X61\BJ/HJ$'@!,(H=OR9(\S,EQQAP\FG2F^$,2I=@R>:R*34,1 MFZMB-C2Z9>4] M0*!Y'^@4 G*T MP9K1AA>M3CX:%PAC$.@>\?KE5N4IY8.NDC)ON^ZQD/0AX!2&.%YPM;$H']P*GM-MK=P4V<5#:8WC^ @> [U]9\IOVFA$&2G:* MNJ_&5OLJMG$;\FHOZ\]>Q!+B((+W8V-XYH$-@E*^PE3@F@\ &8!FF5V1AI(P M=DU*!^#7G\%Q)1V@4)- 20G@>ZXDH/B2*@N]))/W0A ?24**0H0FA5#3@;Q8L8; I(8''-"&N>S/]=WRD-PXP%6!4(090!A++:\0'*D\!";[(P,Q M&N!7J)W HJ\ P9XZM<$WS4(M*?%!U,.S9/]PY2%FY%TEC6!)Q,*. 4;]"9I8 ML&^P>>M:P./0L02*KT:U( MXP!E(3*32&)OD@$@#.TJ!J8+F M&+,(+900[4*AP-,,]^-YO7^@M2I]M5;11*BXU^\[Z,/HF0$E5WOVC@DJ/*?& M\CD=(WL"*8D<5/'_)0+)(%@9V?]H7_F@&L'/BE>+VTEEJTB:"G]D8&0R=+-\ M1Y-5L/0)C!#%"3?8@)<$_&J"]*RE.857CVLD/KFBT"6"5RLH]*2L6W5QE-DT M%_1BJ;G]&%@HMTG'#%TO:"/5R#'^?N$=;"$7A>62NP8& M$'L%KU_%T2W(45@=;ASZC_!;N>]&0%WAJ*/I<]UEHBHU$X J1Q[-*J<2)&*XJ*EXL$:< MT1)Z!NXKO 0KSEPT^5%A1VHC'Q*HO62E@I1&3'P$R>1Y/G?-P,E8W(=%V+,4 M78^YJQ?4'P^]U0F*/NY.]$"RPN/HE :%$DR&D'#M9;%$>;X9L'ZQ(Y*R"BTR M]%G^K#/! M_?G5^"3<2EI^'@M4/R(CR>; Q,BBJ.0G M:#P1%R"O0*[RP]\.WM\DC-P%J#F;8P?,K!5KBV03TH?%K8A_<=8(C.,;0].* MKD?0!#)@-!4$ITTF/I25$*#(H27?FA[]^_/$>#(K\B\]@'7S,W_LH!IEQ9V#B1"CC'ERJ18#0K5:]BX_)I,7L/(O3/8'=>? M)*44C@?4O7!%PJKWQ,U>3GS++ATQ4B*0ZH-16H$^-(7ICI;<3\5VPVJ-*%ZY MR@!9ZUY7P&@1T9!79W7%'H/3,".'(7\3!N5SAM5X)\B"Q=+6:GG9E&"L;OO4 M@[$&.AA+GY*]V?7HKO/93"NDI@6 MQMCF;#\!TQQ=L&EDY&([)F6%BVX*-LK& <#JZ!@$]82ZYH6N4TL!CN M#*-K3.4V)]\!PR%G'7P?^+EAD.]YOJ'"X29C7&H1LJ2"@X668:!04K6ZA ?? MW/CLUJA=GW1! L<'I1^OOG&?Z46ZWB3NA9=5084I)NZ-39PB#P4K P;# _3_ M%:&;!E%?'72G=BY/D]N4-0N/3=!E3920"[&D3 Q5<@^/'!C+M\E/I[8_]V#] MF70EVU'SL"-I3<8O0?_O?T>#B]';E0O0ACI8D\?F((C] M(LC8F6%4RI]"3Z%++J[M%'&M0BO8:AG%'5^=+TMZL"PU2O='&F*/,*[0)8D/'5BPA#U(.I1XL-BQE&8)3+.$SW/_%[- M,@-V!8_33GFPL5&\X&O;:AD2*E 2JKVU++["'<=9BB1,(4W(>WH>.SX%RXC; M/5#D7ENTRWY,7MYMEH,WKU'DW?I!4+(75:J#K0B!4,L80)77#RG%HD2J/$_A M(>2Z-O0?3X>@6XIMPAM2/S9Y'!0GS\*-+"*2_02%B!.R*-L.1Q+NUY9(C,!0 M)#?E=YB$\D(S*R>P/KLV@%IX:^%],L*[N.-[N !?%I5"_&W+E.NO?0I&KS+O M-:+3*C.PK58B!JB7"E8>+P2*A8!5YE4E)J M(16=1Q>YI^@&G*O6@4?T*,5@04B23*%<]SI1&V% 8D\WI+<4MH$J'( MY]E/,\P?\GP8/Q7)O/R6RE"=O]82N:$SV .V"\,]-Z??,17%.K'VX4_; '2P MO&VUL28UK:Z;UT'[!^;Y;26*U%S Y]DB?+D(VUMSFYXR<7_W M[[9"_2=.VA^>'VD?I+3Q:MGB^RF/EE;N.<[%,PX@VX0^8EO/?.YYQW3/!/3H MI*XFXLI"=GK:U[5=?] F[93VL*3 0;9%[[_<_TU;#50N9C_B2F-*GY0&['_= M27GB_7_:^O["-NMW=MO7FPQZ:?S7[-LQMV:OJSO_1%W9SVRK-ZQK\_$T$-:I M*QIKFV.M8]F#N@8.U:*S<)9H;#8-FUVKWZMK6JFQUE2L#:R+05V#VWU@[0DZ M6*_:J3M=_Z6XG*?53$"-.,[6,'OKU[;Q1,^X3T\SD%$G0?X]^MBPS75K9W(MNS^8?HE:EPL3]0?UO61U@*S&1CJ6'9[#SV!-2XV MXER=;M,[O1Y &'Z5>51OSD0?AM=4Z!77H695:>JZYZ1?U')C?=+WBXNS86UK M[3T(QF7GG\;.\DEI=^H<>_JD[/FD=*W>J,XWW@#7:B/-Q^\UV4N:UM9.-+ & M%WL@-7WN-YBH:PUJK7AM.S8#1W;'ZO;J;J$U,O:+C*'5ZQ]&O6^P\5B5HU3D MZ=)B>%U=[,LC*U M5;[X.\PCO"C-C8K).RWE7(7JB#M:$'Z>/:MF<.>+9W> =VU&D/ZO!P9 M-H;=PZ@UQV6*?L&R3K2,,WZ/^7JIY!^7F-W]2\SMTJN?DBJW6\ECZ?9B=((, MY+DB$Q3C T8?[?.2];EBV+;LCCZQIX//[F$N$Y[6 -_AVI?J8ITJ1=8E"Q5' 7\*AC="C#H.YD'W<>$Z-A2@U@2DU=8 M8C U=/ ;_$97K*ZKB;]M#9[E33%6A_8KN,;Q;"G6TYCVP M&773Q(Z?-%JPV&YCW#A*$@(+RQ;'V$8P0ZA#P!=C,76HP5+'3HS34G^?&Q9$ M' 4P?,VHURK_[=^PH@6UDYBWP%_P M?WG3@/J./D77=6PA<\5[8#^H3XOL#T^M3"=4W]OW6!EWY68^9L+B&]]=:K&7 MB^![Y.]>2GUK;G[JW+SS5-S\H4S[/ULW]N(]D^%(.YPSQ,.F>0!K\'C+ MI(D?PV]_9$Z<\GK\6'*N9;[GOU+S$"RQ3&K5IJV<1JKUSCZK8MF@7X M,'93HYY2RYV<:#J&S0*P3:H[!5)GU+OD9;ME;[<(/PADICR\/)1?$$?&]LG M(X,%]AWSX4 !*O![P8FH7:RC[)P?FK=1? T"T-T.'T7K*P%+R_P/ME+P1%-F MV 1J7EK>A9R)>C7H$%N\'6>N1H?=6K%V[F&U6W+1PBBBLWZPDO&:_3:?_7:/ M1IDN[NDW/G]+FI'">8"_+3?3,WF+R-KN>XG:;6\[EE3T?[+J6O-16]RB WVA M2BZU(Y2P) 4PVW;5RGL5 L"NDTS-*=C?II.:8R>\;K NN"^WRX$U7,4E@LZ0 MM_#Z'QD0(RR_:Q>N$42F>*/&'61W*M8\4/P\M8[$%\MN-K%J7F5W4PZM ")! M>&O^6,P!D,O8&6-5N\_.C'$P/T<(6N>BY!&2KQ'41(\2WCKXQS%SKL]Y_]B? MS#GMG[K:0<5J<9]J&%9!*[63J^O=QGEU,J?DN%RN:YLC.5NW1E(Z?Q&KQ@9) MI=9>'T5IC-7>288LGZS[(>F&1*L!D#EW0K:\T_N59]'11;>[)@/=N:B!5'Y2?8WP3LEEL !03WCS4!/T%V?C=D=OS4,<]8;U%JD+8:O< MFHH5/147UMBJPE9=!JK&5A.QI<_6,6&K66=+-U]Z5%CD:;00TK"RTT,Y%W[H>/6+MNL/1$$QU;UHA&AD:&1H9& M1L/-U'NE(46M/0(B70G[01/I2MC-P<6Z2M@:%_O%A:YXW2!D'&?%ZR<6>;KB M]9ZI4%>\;@HF= G()F%#5[9N"B9.M;+U_B6IKFRMV?2)8:.^LK7&A#X7SQ<; MQUC!>O\"L;D5K(^1YDZR^O0Q(F)-Y>@CK1!]C%@XU>K.QXB+9U&9N29*>@\> M6H>G4OFSN>-2?;%09O(J%1R$,.U5"U.YD#T&>HO1GFVU\O:6\?_[V@9- GMK M,3$:;9E5L(?P4HW^O:'?MB[L"TT SY< >E:_4Z<:[9L GL9UL%X5>E1PEBQ7 M0HLI2I8\3ZIN1NGU@=4^H$1[SEI-,_#?Z]9=!VCLGS[V1Y;=KPO[U/@_??S; MUNBBSO%Y$/PWPO^S2T]/2>512KAQUT[_6;MVFG$&VBU;*T#/&?W:J_>LT6]K M!>@YH[_=*/0_?3_SW5<&^IS-QKS-!)5L2\PL$0GI?DC%9JM*V#Y/HF^0)W/0 MMD:CPWDRGS/K:Q 5]+M6>U@7^*:IX)E0 ?""BU%=Y(VF@F="!;VN-1PVTAM4 M[@AR3(7I']@!9+-VH[IIJV[:6KF?S[O/E&[:JINVZJ:M^;]#-6VET[;<-%UW M2==6S8Q.G1GUCH89?6.3 M +27[60_*A!P[N#8HF*8.G=*@B#^5IDD*%J*P@OBNI6H7I]2?4H/=4K[1W-* M2]&9F_Y3&_'ZH#LX@9MQE\UX 3;#C4_NFHK6O&_._@DJQ6M\#,^I)\;A+8>8 M=^Z@076UG>H@0B[0FY."*@ SM\Q?T2XJC)&2G?>>N8S"-;HV-_- R-\Z,?;> M W-O"DL $R@"AK(=XXJ*;2@W)E8WBU=ECL(2]+S-GQME86JBNPZY&!82H;=1 M!=MN._PT(Q=9R_PQ!>3,6#J-O"B(KA UDPF+$VXV4A/DV(]B]([&D>-.N:\4 M-H'0@=ASM_Q*:[.M'#-8V W;5JB YD;2 TZ!NA\ -M J$,^8I>A=B)D0)8YL2(UO81%M M,'U%.VK8/3\$H]_?TAO*C7;R?/JP&N>:H6L3R,9Q^5;A5 DP!G\";!>="F)Z M(A/<&R$)NA'I1;Q14"+\(X74W$5?9*8P@+L?1&N&:(%VI1"Y&;XN+ M8+RENLMO@:5_ 71AAZ*]HTEZB\I[Z7:]=*&NW%E; "==/EL&N2RY)U/HQ9Y_ MA?W2B@MG$U=MYJO.5=5\+3/'#]%-BZI;"AL@;NU!=()JFI#>3NJUA;:)8\XR M4/ #EL#[% (!BS/HW8E_!Y;7A'%5'^]]IG[ E*]=V,\8-,]$^'Q3NH(2FC+, M (JIG-8480MTO8ZV7!#DNPS"DML<\&3D*5X;RRB#BHY=E]PZ>10$V%3Y,*C^ M5BT.H 0U%3"3X*6=.47NT6/B=70NLW2NJTE1-/41OW4N(5XQ8>&-P"'\2\, M<3P59BX@1QJB A$\PL1/A/69S1'M+FCR@1DXH*0):/*+3IP[0!HVX&4V@1E2 M[FSWR"2,H^P*WN &BY?%2[82!PM,5&T*K@GI# ^J@=N; M+N;HCH+O/ ;CS."\>65[FJ)GY$TJ+CCVF;"CELX2V,!1&#(\;>BB1+ BN9G< M#N.'C%NG,1J.5U'J4U00DC%#8UDNUHS09P:_D8&*^PW8L22J7"3'F;, $Y/O M226T^&3Q@PBVH6,VHWL7O-$ 4R^5A\B0[_)@H?\"$(+2S2S$0\[G!E8*9EL, MS"6F$^7@Y6YX1>SV.0EDD4N&*T8( 8&(?= MN3@?X3\"6!-WRKPL0%#0M6#B%3::M'*>UJE)E].4F1]#@Q\.HN 5+A5Q1])- M%&0S=%$DY,-(3#H<>' 3EJ8\P*/X50UV0^86(T-Q)#LXETS.AZ,$#/O?-+91 MC(U>*91W+BM3=XS'$:\P69S":0&3:12@'/A0NSS.Q9,DH]"S M$"4U_H[\TB!?HC\3D6,DQIP%O9[[TN1Z6N9'>H(&@^,HEI4N3&"V69J?-ZY< M<.:)0+C,GQ/_R$=&QB*EO9#_("SS;4J $P(6D&7#\OV 5J'.!T\DV03.GB^% M-MC=-R"A3HU83_,("S"'*0XP;( M+\Z)]?"!N;;46EDSZ'*1C+1&;@0JO>L7.I@S0_7]3_Z%F,*4P;UX85*:R, 8 MDAO0.):B;4^!"$Z6M#\HAJ_Q30TK?U]8P9S@/VP2@;X:D"3-W/O.0G$4C&V/ M E%]812 ,>]<%<$$0-H8[[2\4#+_\68&UMFJ!LZH!4X].)N=FT0]. G:\LIQ MV6QOC<)6%8.2]I7;K:=&GB=[Z+YCD@81UR>9I,&/V/>*[(WU$7Y*0D82N63A MFK<^6.V@;\ZBM(AT#@+\7#("Q(6HD>NH,G>"Q-BFY_91,JR TT"1)#)Y@.(M M-HR2C; 3++()D W2'&CEH9^)43AS7#XBT::@; M!G8YL([72BRM>&0A,^3RM +S*HC&L(99-.8/P+Z@;PRV);$JLB0D_&"X2@^= MR$\[XZD%N.$AX_D+Q'MRRUZ8RLEK2\BR1PM*E3[J\"_EL@.OC\GMAI[MF?/? M*$9PE]V).=+KM LN=J7[.X\>D:YI\G!D";Z&3@,_U-QF0ZA$]-NN\]6!C7Q% M;PMF!)*[E\>NF3^<.Q(%R$9*SK!)% 31+?>Y@AQEW.4?^(XX(#SDB+@(C_7A M]TQYO'J* U.F:LPP@$YZ=?C/!OV<.\WH1L#+R0E#9)%AB1@&[HB%(Q?%3BP# MOO@/8Y;>,A8N$6'AN7:=.%[0H9T)=UCHR2D,?ILD7%\$8U("D@[7#XHH$SNW M B"LG@<$RV_QID-<-^ #N<)] [P3P_U_;WUOF1/F289MT%KI>0Q.HI__"WPF M\7Q7J.%_5_Z$EW!S N=6>+VYJD$71.2H])C\ R:&PPBDP/V!JWLVCJ)K6@)% M)*-_TD)+.RRFDT MH]D95%N%7'5//>1J=,HA5_J4'!ZJG\?8JQA#;-'5^B4/KM">\F.!BM]W@!)A M5*40*VG!ILP(ILCLF*OZ=:G'%>^U]0W*,4&%%,%5;$HQIUPI4D Q,F5*9MIL MAMING66&^C%*/U&"A9"2'X)6A>]97/W+=;-"-Q2/ M_G3_ME?6 VDP+NXEJ*WRUH1NX@(FG7D"V)6?BNI;6Z6TO=BH3&Q1)/;XJ_/! MAN&W?WDQ6-[4#>OC<37OQ:Y-[GS8!UO<8SCDP+H?7+QCB9F;#000!=!6\(&P M6I91>R>] ]-YYWB!T3OWY!7 5^M_W\\-:6D\W12'">17-,!/)H9@^^XCP#G+ M0O++8Z 6+HX\.%&6@/*06!0K.:=(3>0H8%,F=7G"%>L\#!D]:FMWRD-1X=^N M-.O*BI[J4&AL56%KRYXRSPU;VRAQ3XVM=V33- I?3]L'2U@<_Y\EKVT)A&SC99F>W3=[0MK<%'7B>%I(%S+(33J-N?S':L[ MJ"N9KE'7:-3UK6Y;HZX$V'YVWK:[K3I=]FDV_M7.>RSM2E5:BBD_O W](,_: MZ?3 Z%Q8PPO=">694X'=M4:Z*Y*F FLXNM!4\+RI8#1J]0Y& P]57';1'/L1 MR_Z-NG!@9PD_7=J[IR31?1'@3IG,R+JH93)/#9!&1GFBH=4=UCEB-"[V?#!L MJV?7F8D:&7M&1G=0:[(W0-P]J3"KS"ZUEM-+-0&M)R#KXJ+.H-*'>;^XZ%C] M"ZUQ- ,79\/:_O,[!&DU0][#885>SV&;@ MPK8&&A>-P46G71<8I7&Q7UQ<=%O=8S;I=A^W5E\>0WOA&W 7TSZ<'U[?Q32" M"BZL;E]?SC]S(AA8O5Z=S:R)X)D0P?"B57=1<]JWLKO7>GY$V'EAI;.L)O%# MJSQ#JV?7:>B:T3T7*K"M_H6F@F=.!0-KV-LRH4P3P:D107]4>P??7)WG22\F MOE*$V9NS@-KJ4F&X2"E]I-U_:UVQW6&=0T6[8O=]_VC9PSW<4>A[X/43]4#7 MTB%GS<#%F=WKUD9>G\JE_.ZM^2]4OMH7_>9E5>?7O!Y'R);CU+06MV\M[NR MZ65U]58T]O>67UB;=6E5/7[C/E]Q!%KPV4C_FZ-:G4\;DV+6&XNHY6Z0YMUUL50&W;/G C.A@<,U]"&W:'1W[4&[ MT @B..OU.JT#.G@;:=U_9JF)EKU6DN]1DJW>< \I.=IPO-> MP=[* .C\;!^ MHL$^#H,VWS>*3P%1I:WW+<'Y-8H9#&^Z68P-51?8G#U, @>CTV@U2MM4"^_F MJ<.L5N$,K<=W#Y1=I.^[0V*>^>9VM3"EMR9T>&6@F\'RQ7]&&,VS-6DUB M"E[+/M@':JU^E)W=5XAT&8C_.3\W?_59X/UD M?LL"=O[5N6+F^3D]):=35]VM6#5])ULH];&3E/*RJM+B:,.2&PATD6M&K)[4BAO.<0'9ATB#N:+@L" MP:'_\J+]@OZ&];KR[[(X<:,@<.8)0"@_%4>XW7[%]V 34%YLV3;Z^&7[@YK) MJJC,.\<^F&Z(/LSVCAO2_CS^Y;M_1W!N^N\3##]-S ^AQ[R?WXQ_48Z(V4#P M_IZ%;"OXNFUK":S]$]Z!J?R8N]KKG7MJ1]^JF^]!C;6YQ,4!?C+]%&9P'V/# M9*&3>7[*/)Y_[(=F.HVRQ D]>(C=N0S6,F+55 <0GQ]?3QL((>Z/_J.;3W]:V M,&Y">^M=>W.?J#_V<& -[3IV\4P[DQ\)ZOH]:]BIBQO0J&LRZKJV-1IJU.T- ML)T?O6%M.PLQ8V>W0.XNU6+WT1<)Q9+&:R7RD5S"/0D-[KEPIVT-+@YW!]\4 M=\PSIX+NP!IL:[-K*C@U*K#[5KNOVU<\=4*4KG M:ZT7-7W+[NK:-\U A@UGH[9UF4;&GI$QL$9=W8&R&<@8=6L+(39 W#VI,/L0 M7ODA@\_AE05V>L*UN.AVS[YL@F/6/=W)X"?4>3-G/B:8?-!35#W,-GA8 ^5 M9363W0@7G?8>B@1I7&R2Z#;0E8*:@0F[T]J#%OAT)MWN@]]^8R&+G8#DG./- M_-!/4NQ0=Z/O90_MA>\,++O6,Z?O8IX)%=A#H((Z:TE3P3.A@J'5UD3PW(F@ MUVL=C@9.J_CACR@%I4=TXPVO3-&)4)/XH:.0^E:_H\N"/',JZ RM7FV)H)M67*-2M"^Z[Z1KMHU6W MQL(]][YMJU,;8JX1L;_ )FO8T<$0S<#%V6A0&VM]*I?PNS??OZ13%DNC/:'N M!%I3.["F=F9;=N> )2$U 1R: +JZD.\SQKYMM4>ZP>3S)8"NU>[6ZS+/V5@? MLTD4LW4MD;56O,),^AW=:[ !> "3O;\'6U$C8OU$0^M"9TPV!!=GPW[M/;PV MV>O ^1I'-W[B1^&;LS$+V<1/7],B0#2NDXQ:C]O[C8O5[NA0HV=.!&==JS?2 M'>:>+P'TK7YMPJ3F L^$",[L_D7SNOP/M)+-1[6 MXV%@7>ALZ\/CH6MU= 6"AN#BK'?1VD-R[(E9\+]&,8/A33>+8Q:Z"S.-G3 ) M'(Q H]4X'C:?PLHP_$H>B[R"3:_5N$.GD.DDPF=. ?_WO\..W=D*#YH,3H\, M-"-XWA10TY>S2431[&H)[Z+9/&93%B;^#:OR CP3BFY& W%T,70/%W#R3)W4 M#<'].K>&QOU)X[X+9K#N5/"L-1GNPSEPAQ_9"QT08_N]LSS<_$XG4W^!OQ'+EE=B-VI M6,D O[OO^+Q0-D%=->\GN1&X+TJ 2!#>FC\6+@!08TH=BST!4V)P_^[(;9V*,%^:_A8$'=JC_B_D?9CI)@G[F*(M-%V:/ M9BQ.3#],(S,*&3J5\9<)_F?F^*$I#411IS4QH]AT3/2?S_'A&R?VHPP'\&"P MV(>EWDY9S,Q;F(F'90-])B O#!QRCN7.@;PM>,IWI_A4X(Q9 *LRT8W6:;^5 M"T[H;_MMR_PQ9;"@((ANL9@,"0$Q$"X'1A6]SA(3X,W7BS7W\A]@>$=I-FV@ M[YR*U%2^BE%S*4P*+_B11\#!]RGS?CHU8KGG"/"]=ED0"*'_EQ?M%_0WO.#* MO\L:B@N8LPS_YX!!^FVK>T4QQ5P#N/S6O5X5>PS/T#X M\T^F#_P#)?H3[O-9%CJ9YP/GL6AQP(_3*;!;X&WP$+MS&4Q2L+6DSG!N" UW M&D3"G?:V_?B>F$XUMM:EG]'R'M;65&/NP.=LRQ)#&EOZG#WR]NHA(3Y"1^WO MN%/T#^9.0UC#U<(R/S'/=\@P^<$"YD:SFNT]YO;?>^[<;@\LV]:=V_<&V*[Q MU^W6^IF?!LA7)XBX?9\YVQI=Z#-WM&>NWZWM3+6/,_>0()2'S_V-I8X?Z)#M M]2>Z8UW45I?2\?/[149GL/\V.AH+RQ/UK'9;]PIN!B[L^CS)!DBI;8S-1^2' M^*$3NLL&N::4E5-[L8>"G_K4;C#1^MOJU]4;T@=BS&.L?1W_$ M1T3P?_WMS2L-(((['9CVG=J].\?_=U:/5IS M@&=" O8!,]9V5TMO>:V]QW?BW7!7'C?3 ^D2)C6]*!L'['"IM'5K>+1>"O]VN[UQ>\U=HW]3C>24,-^(0]_I6-W!IH)('WI] MZ)]<"VE"VOR.\*KS$QN;Q="H_,3O_IW.3M39B<>;AZ.S$X\)6XW.FM*8T]F) M)X*M1I\SG9UX!.DV>\Z4 FVSWZGS .I,J<9G2G7K>Q'J[,2&GKE.QVKW]XLU M?>9V>6M2?Y&OLQ,?32?'&(?6L:W^A0Z3;0@R>OO/Q=)86+5;K;:.'&\(,KH' M2-C5Z8G'2"D75K^M3VTS<#'<1Y,Z+1"?2FF!H@QG9YX M (H86H-.75F-.OD MI&="!*/&)"=I[.\?^[V![@W\S$F@OKJ(SD[<9%=.*5NE$8E*PX$UM ^5J:(3 ME0Z._^8D*CT/S#?BT/=[UK!39S7K0Z\/_:&S$T\J/?'!0-!BS7;=9A,\N7G7ZK:P(4@1^%EA'%IFUW6_8KRTPC\V7OHG4A?^1Y6PS^ M/V9L-66.P]AM6R8F)9F3.)K!X)U6[R'OMUM&]6J[G58[7RWV&.T/6UVQV.&@ M-5R>+/'O-EQJOU?YMG'?0JGMZ((Y\;D9@8)\3I_S50/&@*ZF)HSIJ)!3_#P, M?\[_&CN)#X_>8D?4 %#+@H7IQ3[L $(-2S'\V3R&\6$7LL0/69*8;A1Z?@JK MI;:EN%PWF@&!+)A PY_@=<=-,2?BW9=_?WQ_;H_@:R>%1Y,L2.%) M/U1W&K:!4F:GS/'<* M36J_\VIA&69RTS$N/+\ )@H5%TSCN'YF?B%7!9.^= MNSN>*N"X?HI+3F-_G.&$@+%4[AQM'.W;51S=IM.--LV@36N9[Z+9&';$HQ4D M0%^W47D=ZJR.Z.<*:WLY*@B?1GYI]Q42\.CF3Z%8,?D: ML&@]EQ:P1PH5\,AW49)BHU_)''I\5,DK6N)-P#=' M)=XT&K5Z@C=U+HK?ZAFA4$C7[ER_99=VKF>C"#)PY_KVJ@C:G*MW!ZW!RMO.3/9LQB6M[IE5 MVC1CPTTSRYNV_5;)!T1+ZI2%R+^ %889?-LZM:-W&*6(G^PYG>QE*K0+986H MT ;JD61HCU;5@VTTH>%#%2'!BSALQMF5NOZE=N7* 7M=A@VYA_+M_VI[>(SNQ9;OY8!4;_U@F75V6VW!.KL*T7H&%4;WM;V;Z-N5FWV^J\JN%B7&E&752N !^\4H#84A4%(%3"( VLM0/_#_YLSC)%3R: B>< <#)U)^DL!6W3NQQ ML3*-0/GU6 !SQ<@S77IQ1+ M;Z<^<&=5+W9@BJO0G_BN XHPT !R>P$_#IX#;(XQ'1:UQC "7BHWA(\%7X,D M$;*@A!><@U3WV >A(A7C#0&TM8;Y)%"M3/\_Y^?FKSX+O)_,KW"8W\()_<1?P/^(Y>L+L3N5*QD@-]MD!*?;T)52OT&X+XH 2)!>&O^ M6,P!D,O8&6,QF,_ 6SB8GR,$K6NK;[V1KQ'4N%$YO'7PC^'D7Y^/&1P3&'A. M^Z>N=E"Q6MPG%6)%NA>T4CNYNEX$I,"0/B4/\24]U/4%!M:'$(9G#,UIR_@& M)KH3NUSJO =.'$3S&=!O"\TL4WT4^6;QJ%<\6BC*'E.5B+:BH9'*ML::O\>M M U:\8W9M%+=R#NG1JK G&+IBS#\R)T;I)H6Q^;Z8<^+'8/],G6 B?H8)F+HM M6\+:)?V!M"-E/<*1I:A+"MB;*#VD/^0 HZR@3^2#O[G^9JAB\&-4_#"3/Q@Y(2UIWH5Z3(KW M1;?5Y935>:#!PSVBN1:*5#1S_)"3$-I2JH*:T$K+Q!/"MO#O_1 4/P<]:>3C MO&5!@/^K#G"+%