XML 58 R27.htm IDEA: XBRL DOCUMENT
v3.19.3

Revenue (Tables) | 9 Months Ended
--- | ---
Sep. 30, 2019
Revenue from Contract with Customer [Abstract] |
Disaggregation of revenue |
| For the Three Months Ended September 30, |  | For the Nine Months Ended September 30,
| 2019 |  | 2018 |  | 2019 |  | 2018
Sales to do-it-yourself customers | $ | 1,473,514 |  |  | $ | 1,408,140 |  |  | $ | 4,244,689 |  |  | $ | 4,053,137 |
Sales to professional service provider customers | 1,151,721 |  |  | 1,040,728 |  |  | 3,303,987 |  |  | 3,058,127 |
Other sales and sales adjustments | 41,293 |  |  | 33,849 |  |  | 118,334 |  |  | 110,207 |
Total sales | $ | 2,666,528 |  |  | $ | 2,482,717 |  |  | $ | 7,667,010 |  |  | $ | 7,221,471 |

X
- Definition Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor. + References Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 5 -URI http://asc.fasb.org/extlink&oid=118956577&loc=SL49130545-203045 + Details
Name: | us-gaap_DisaggregationOfRevenueTableTextBlock
Namespace Prefix: | us-gaap_
Data Type: | nonnum:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- References No definition available. + Details
Name: | us-gaap_RevenueFromContractWithCustomerAbstract
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration