From d4a7a47b538c219c2e94e606a0326fae67a0565e Mon Sep 17 00:00:00 2001
From: svatal <swata@centrum.cz>
Date: Fri, 3 Nov 2017 18:31:51 +0100
Subject: [PATCH] new protocol (chrome 62)

+ deprecated json field support (-> obsolete)
+ event with dictionary support
+ updated sample not to use deprecated command (SetVisibleSizeCommand ->
SetDeviceMetricsOverrideCommand)
---
 .../Chrome/Accessibility/AXGlobalStates.cs    |   1 +
 .../Accessibility/AXLiveRegionAttributes.cs   |   1 -
 .../Chrome/Accessibility/AXProperty.cs        |   3 -
 .../Chrome/Accessibility/AXRelatedNode.cs     |   3 -
 .../Accessibility/GetPartialAXTreeCommand.cs  |   1 +
 .../GetPartialAXTreeCommandResponse.cs        |   1 +
 .../Animation/AnimationCanceledEvent.cs       |   4 +-
 .../Chrome/Animation/AnimationCreatedEvent.cs |   4 +-
 .../Chrome/Animation/AnimationStartedEvent.cs |   4 +-
 .../Chrome/Animation/DisableCommand.cs        |   1 +
 .../Animation/DisableCommandResponse.cs       |   1 +
 .../Chrome/Animation/EnableCommand.cs         |   1 +
 .../Chrome/Animation/EnableCommandResponse.cs |   1 +
 .../Chrome/Animation/GetCurrentTimeCommand.cs |   1 +
 .../GetCurrentTimeCommandResponse.cs          |   1 +
 .../Animation/GetPlaybackRateCommand.cs       |   1 +
 .../GetPlaybackRateCommandResponse.cs         |   1 +
 .../Animation/ReleaseAnimationsCommand.cs     |   1 +
 .../ReleaseAnimationsCommandResponse.cs       |   1 +
 .../Animation/ResolveAnimationCommand.cs      |   1 +
 .../ResolveAnimationCommandResponse.cs        |   1 +
 .../Chrome/Animation/SeekAnimationsCommand.cs |   1 +
 .../SeekAnimationsCommandResponse.cs          |   1 +
 .../Chrome/Animation/SetPausedCommand.cs      |   1 +
 .../Animation/SetPausedCommandResponse.cs     |   1 +
 .../Animation/SetPlaybackRateCommand.cs       |   1 +
 .../SetPlaybackRateCommandResponse.cs         |   1 +
 .../Chrome/Animation/SetTimingCommand.cs      |   1 +
 .../Animation/SetTimingCommandResponse.cs     |   1 +
 .../ApplicationCacheStatusUpdatedEvent.cs     |   4 +-
 .../Chrome/ApplicationCache/EnableCommand.cs  |   1 +
 .../ApplicationCache/EnableCommandResponse.cs |   1 +
 .../GetApplicationCacheForFrameCommand.cs     |   1 +
 ...ApplicationCacheForFrameCommandResponse.cs |   1 +
 .../GetFramesWithManifestsCommand.cs          |   1 +
 .../GetFramesWithManifestsCommandResponse.cs  |   1 +
 .../GetManifestForFrameCommand.cs             |   1 +
 .../GetManifestForFrameCommandResponse.cs     |   1 +
 .../NetworkStateUpdatedEvent.cs               |   4 +-
 .../Audits/GetEncodedResponseCommand.cs       |  34 +
 .../GetEncodedResponseCommandResponse.cs      |  29 +
 .../Chrome/Browser/GetVersionCommand.cs       |  16 +
 .../Browser/GetVersionCommandResponse.cs      |  36 +
 .../Chrome/Browser/GetWindowBoundsCommand.cs  |   1 +
 .../Browser/GetWindowBoundsCommandResponse.cs |   1 +
 .../Browser/GetWindowForTargetCommand.cs      |   1 +
 .../GetWindowForTargetCommandResponse.cs      |   1 +
 .../Chrome/Browser/SetWindowBoundsCommand.cs  |   1 +
 .../Browser/SetWindowBoundsCommandResponse.cs |   1 +
 .../Protocol/Chrome/CSS/AddRuleCommand.cs     |   1 +
 .../Chrome/CSS/AddRuleCommandResponse.cs      |   1 +
 .../Chrome/CSS/CSSComputedStyleProperty.cs    |   3 -
 .../Chrome/CSS/CollectClassNamesCommand.cs    |   1 +
 .../CSS/CollectClassNamesCommandResponse.cs   |   1 +
 .../Chrome/CSS/CreateStyleSheetCommand.cs     |   1 +
 .../CSS/CreateStyleSheetCommandResponse.cs    |   1 +
 .../Protocol/Chrome/CSS/DisableCommand.cs     |   1 +
 .../Chrome/CSS/DisableCommandResponse.cs      |   1 +
 .../Protocol/Chrome/CSS/EnableCommand.cs      |   1 +
 .../Chrome/CSS/EnableCommandResponse.cs       |   1 +
 .../Protocol/Chrome/CSS/FontsUpdatedEvent.cs  |   4 +-
 .../Chrome/CSS/ForcePseudoStateCommand.cs     |   1 +
 .../CSS/ForcePseudoStateCommandResponse.cs    |   1 +
 .../Chrome/CSS/GetBackgroundColorsCommand.cs  |   1 +
 .../CSS/GetBackgroundColorsCommandResponse.cs |  16 +
 .../CSS/GetComputedStyleForNodeCommand.cs     |   1 +
 .../GetComputedStyleForNodeCommandResponse.cs |   1 +
 .../CSS/GetInlineStylesForNodeCommand.cs      |   1 +
 .../GetInlineStylesForNodeCommandResponse.cs  |   1 +
 .../CSS/GetLayoutTreeAndStylesCommand.cs      |  19 -
 .../GetLayoutTreeAndStylesCommandResponse.cs  |  23 -
 .../CSS/GetMatchedStylesForNodeCommand.cs     |   1 +
 .../GetMatchedStylesForNodeCommandResponse.cs |   1 +
 .../Chrome/CSS/GetMediaQueriesCommand.cs      |   1 +
 .../CSS/GetMediaQueriesCommandResponse.cs     |   1 +
 .../CSS/GetPlatformFontsForNodeCommand.cs     |   1 +
 .../GetPlatformFontsForNodeCommandResponse.cs |   1 +
 .../Chrome/CSS/GetStyleSheetTextCommand.cs    |   1 +
 .../CSS/GetStyleSheetTextCommandResponse.cs   |   1 +
 .../CSS/MediaQueryResultChangedEvent.cs       |   4 +-
 ...SetEffectivePropertyValueForNodeCommand.cs |   1 +
 ...tivePropertyValueForNodeCommandResponse.cs |   1 +
 .../Chrome/CSS/SetKeyframeKeyCommand.cs       |   1 +
 .../CSS/SetKeyframeKeyCommandResponse.cs      |   1 +
 .../Chrome/CSS/SetMediaTextCommand.cs         |   1 +
 .../Chrome/CSS/SetMediaTextCommandResponse.cs |   1 +
 .../Chrome/CSS/SetRuleSelectorCommand.cs      |   1 +
 .../CSS/SetRuleSelectorCommandResponse.cs     |   1 +
 .../Chrome/CSS/SetStyleSheetTextCommand.cs    |   1 +
 .../CSS/SetStyleSheetTextCommandResponse.cs   |   1 +
 .../Chrome/CSS/SetStyleTextsCommand.cs        |   1 +
 .../CSS/SetStyleTextsCommandResponse.cs       |   1 +
 .../Protocol/Chrome/CSS/ShorthandEntry.cs     |   3 -
 .../CSS/StartRuleUsageTrackingCommand.cs      |   1 +
 .../StartRuleUsageTrackingCommandResponse.cs  |   1 +
 .../CSS/StopRuleUsageTrackingCommand.cs       |   1 +
 .../StopRuleUsageTrackingCommandResponse.cs   |   1 +
 .../Chrome/CSS/StyleSheetAddedEvent.cs        |   4 +-
 .../Chrome/CSS/StyleSheetChangedEvent.cs      |   4 +-
 .../Chrome/CSS/StyleSheetRemovedEvent.cs      |   4 +-
 .../Chrome/CSS/TakeCoverageDeltaCommand.cs    |   1 +
 .../CSS/TakeCoverageDeltaCommandResponse.cs   |   1 +
 .../Chrome/CacheStorage/CachedResponse.cs     |  18 +
 .../Protocol/Chrome/CacheStorage/DataEntry.cs |  28 +-
 .../Chrome/CacheStorage/DeleteCacheCommand.cs |   1 +
 .../DeleteCacheCommandResponse.cs             |   1 +
 .../Chrome/CacheStorage/DeleteEntryCommand.cs |   1 +
 .../DeleteEntryCommandResponse.cs             |   1 +
 .../Protocol/Chrome/CacheStorage/Header.cs    |  19 +
 .../CacheStorage/RequestCacheNamesCommand.cs  |   1 +
 .../RequestCacheNamesCommandResponse.cs       |   1 +
 .../RequestCachedResponseCommand.cs           |  24 +
 .../RequestCachedResponseCommandResponse.cs   |  20 +
 .../CacheStorage/RequestEntriesCommand.cs     |   1 +
 .../RequestEntriesCommandResponse.cs          |   1 +
 .../Chrome/Console/ClearMessagesCommand.cs    |   1 +
 .../Console/ClearMessagesCommandResponse.cs   |   1 +
 .../Protocol/Chrome/Console/DisableCommand.cs |   1 +
 .../Chrome/Console/DisableCommandResponse.cs  |   1 +
 .../Protocol/Chrome/Console/EnableCommand.cs  |   1 +
 .../Chrome/Console/EnableCommandResponse.cs   |   1 +
 .../Chrome/Console/MessageAddedEvent.cs       |   4 +-
 .../Chrome/DOM/AttributeModifiedEvent.cs      |   4 +-
 .../Chrome/DOM/AttributeRemovedEvent.cs       |   4 +-
 .../Chrome/DOM/CharacterDataModifiedEvent.cs  |   4 +-
 .../Chrome/DOM/ChildNodeCountUpdatedEvent.cs  |   4 +-
 .../Chrome/DOM/ChildNodeInsertedEvent.cs      |   4 +-
 .../Chrome/DOM/ChildNodeRemovedEvent.cs       |   4 +-
 .../CollectClassNamesFromSubtreeCommand.cs    |   1 +
 ...ectClassNamesFromSubtreeCommandResponse.cs |   1 +
 .../Protocol/Chrome/DOM/CopyToCommand.cs      |   1 +
 .../Chrome/DOM/CopyToCommandResponse.cs       |   1 +
 .../Chrome/DOM/DescribeNodeCommand.cs         |  41 +
 .../Chrome/DOM/DescribeNodeCommandResponse.cs |  20 +
 .../Protocol/Chrome/DOM/DisableCommand.cs     |   1 +
 .../Chrome/DOM/DisableCommandResponse.cs      |   1 +
 .../Chrome/DOM/DiscardSearchResultsCommand.cs |   1 +
 .../DiscardSearchResultsCommandResponse.cs    |   1 +
 .../DOM/DistributedNodesUpdatedEvent.cs       |   4 +-
 .../Chrome/DOM/DocumentUpdatedEvent.cs        |   4 +-
 .../Protocol/Chrome/DOM/EnableCommand.cs      |   1 +
 .../Chrome/DOM/EnableCommandResponse.cs       |   1 +
 .../Protocol/Chrome/DOM/FocusCommand.cs       |  16 +-
 .../Chrome/DOM/FocusCommandResponse.cs        |   1 +
 .../Chrome/DOM/GetAttributesCommand.cs        |   1 +
 .../DOM/GetAttributesCommandResponse.cs       |   1 +
 .../Protocol/Chrome/DOM/GetBoxModelCommand.cs |  16 +-
 .../Chrome/DOM/GetBoxModelCommandResponse.cs  |   1 +
 .../Protocol/Chrome/DOM/GetDocumentCommand.cs |   1 +
 .../Chrome/DOM/GetDocumentCommandResponse.cs  |   1 +
 .../Chrome/DOM/GetFlattenedDocumentCommand.cs |   1 +
 .../GetFlattenedDocumentCommandResponse.cs    |   1 +
 .../Chrome/DOM/GetNodeForLocationCommand.cs   |   1 +
 .../DOM/GetNodeForLocationCommandResponse.cs  |   1 +
 .../Chrome/DOM/GetOuterHTMLCommand.cs         |  16 +-
 .../Chrome/DOM/GetOuterHTMLCommandResponse.cs |   1 +
 .../Chrome/DOM/GetRelayoutBoundaryCommand.cs  |   1 +
 .../DOM/GetRelayoutBoundaryCommandResponse.cs |   1 +
 .../Chrome/DOM/GetSearchResultsCommand.cs     |   1 +
 .../DOM/GetSearchResultsCommandResponse.cs    |   1 +
 .../Chrome/DOM/HideHighlightCommand.cs        |   1 +
 .../DOM/HideHighlightCommandResponse.cs       |   1 +
 .../Chrome/DOM/HighlightNodeCommand.cs        |   1 +
 .../DOM/HighlightNodeCommandResponse.cs       |   1 +
 .../Chrome/DOM/HighlightRectCommand.cs        |   1 +
 .../DOM/HighlightRectCommandResponse.cs       |   1 +
 .../Chrome/DOM/InlineStyleInvalidatedEvent.cs |   4 +-
 .../Chrome/DOM/MarkUndoableStateCommand.cs    |   1 +
 .../DOM/MarkUndoableStateCommandResponse.cs   |   1 +
 .../Protocol/Chrome/DOM/MoveToCommand.cs      |   1 +
 .../Chrome/DOM/MoveToCommandResponse.cs       |   1 +
 .../Chrome/DOM/PerformSearchCommand.cs        |   1 +
 .../DOM/PerformSearchCommandResponse.cs       |   1 +
 .../Chrome/DOM/PseudoElementAddedEvent.cs     |   4 +-
 .../Chrome/DOM/PseudoElementRemovedEvent.cs   |   4 +-
 .../DOM/PushNodeByPathToFrontendCommand.cs    |   1 +
 ...PushNodeByPathToFrontendCommandResponse.cs |   1 +
 .../PushNodesByBackendIdsToFrontendCommand.cs |   1 +
 ...esByBackendIdsToFrontendCommandResponse.cs |   1 +
 .../Chrome/DOM/QuerySelectorAllCommand.cs     |   1 +
 .../DOM/QuerySelectorAllCommandResponse.cs    |   1 +
 .../Chrome/DOM/QuerySelectorCommand.cs        |   1 +
 .../DOM/QuerySelectorCommandResponse.cs       |   1 +
 .../Protocol/Chrome/DOM/RedoCommand.cs        |   1 +
 .../Chrome/DOM/RedoCommandResponse.cs         |   1 +
 .../Chrome/DOM/RemoveAttributeCommand.cs      |   1 +
 .../DOM/RemoveAttributeCommandResponse.cs     |   1 +
 .../Protocol/Chrome/DOM/RemoveNodeCommand.cs  |   1 +
 .../Chrome/DOM/RemoveNodeCommandResponse.cs   |   1 +
 .../Chrome/DOM/RequestChildNodesCommand.cs    |   1 +
 .../DOM/RequestChildNodesCommandResponse.cs   |   1 +
 .../Protocol/Chrome/DOM/RequestNodeCommand.cs |   1 +
 .../Chrome/DOM/RequestNodeCommandResponse.cs  |   1 +
 .../Protocol/Chrome/DOM/ResolveNodeCommand.cs |  11 +-
 .../Chrome/DOM/ResolveNodeCommandResponse.cs  |   3 +-
 .../Chrome/DOM/SetAttributeValueCommand.cs    |   1 +
 .../DOM/SetAttributeValueCommandResponse.cs   |   1 +
 .../Chrome/DOM/SetAttributesAsTextCommand.cs  |   1 +
 .../DOM/SetAttributesAsTextCommandResponse.cs |   1 +
 .../Protocol/Chrome/DOM/SetChildNodesEvent.cs |   4 +-
 .../Chrome/DOM/SetFileInputFilesCommand.cs    |  20 +-
 .../DOM/SetFileInputFilesCommandResponse.cs   |   1 +
 .../Chrome/DOM/SetInspectedNodeCommand.cs     |   1 +
 .../DOM/SetInspectedNodeCommandResponse.cs    |   1 +
 .../Protocol/Chrome/DOM/SetNodeNameCommand.cs |   1 +
 .../Chrome/DOM/SetNodeNameCommandResponse.cs  |   1 +
 .../Chrome/DOM/SetNodeValueCommand.cs         |   1 +
 .../Chrome/DOM/SetNodeValueCommandResponse.cs |   1 +
 .../Chrome/DOM/SetOuterHTMLCommand.cs         |   1 +
 .../Chrome/DOM/SetOuterHTMLCommandResponse.cs |   1 +
 .../Chrome/DOM/ShadowRootPoppedEvent.cs       |   4 +-
 .../Chrome/DOM/ShadowRootPushedEvent.cs       |   4 +-
 .../Protocol/Chrome/DOM/UndoCommand.cs        |   1 +
 .../Chrome/DOM/UndoCommandResponse.cs         |   1 +
 .../DOMDebugger/GetEventListenersCommand.cs   |   1 +
 .../GetEventListenersCommandResponse.cs       |   1 +
 .../DOMDebugger/RemoveDOMBreakpointCommand.cs |   1 +
 .../RemoveDOMBreakpointCommandResponse.cs     |   1 +
 .../RemoveEventListenerBreakpointCommand.cs   |   1 +
 ...eEventListenerBreakpointCommandResponse.cs |   1 +
 .../RemoveInstrumentationBreakpointCommand.cs |   1 +
 ...nstrumentationBreakpointCommandResponse.cs |   1 +
 .../DOMDebugger/RemoveXHRBreakpointCommand.cs |   1 +
 .../RemoveXHRBreakpointCommandResponse.cs     |   1 +
 .../DOMDebugger/SetDOMBreakpointCommand.cs    |   1 +
 .../SetDOMBreakpointCommandResponse.cs        |   1 +
 .../SetEventListenerBreakpointCommand.cs      |   1 +
 ...tEventListenerBreakpointCommandResponse.cs |   1 +
 .../SetInstrumentationBreakpointCommand.cs    |   1 +
 ...nstrumentationBreakpointCommandResponse.cs |   1 +
 .../DOMDebugger/SetXHRBreakpointCommand.cs    |   1 +
 .../SetXHRBreakpointCommandResponse.cs        |   1 +
 .../{CSS => DOMSnapshot}/ComputedStyle.cs     |   6 +-
 .../Protocol/Chrome/DOMSnapshot/DOMNode.cs    | 130 +++
 .../Chrome/DOMSnapshot/GetSnapshotCommand.cs  |  20 +
 .../DOMSnapshot/GetSnapshotCommandResponse.cs |  28 +
 .../{CSS => DOMSnapshot}/LayoutTreeNode.cs    |  14 +-
 .../Protocol/Chrome/DOMSnapshot/NameValue.cs  |  22 +
 .../Chrome/DOMStorage/ClearCommand.cs         |   1 +
 .../Chrome/DOMStorage/ClearCommandResponse.cs |   1 +
 .../Chrome/DOMStorage/DisableCommand.cs       |   1 +
 .../DOMStorage/DisableCommandResponse.cs      |   1 +
 .../DOMStorage/DomStorageItemAddedEvent.cs    |   4 +-
 .../DOMStorage/DomStorageItemRemovedEvent.cs  |   4 +-
 .../DOMStorage/DomStorageItemUpdatedEvent.cs  |   4 +-
 .../DOMStorage/DomStorageItemsClearedEvent.cs |   4 +-
 .../Chrome/DOMStorage/EnableCommand.cs        |   1 +
 .../DOMStorage/EnableCommandResponse.cs       |   1 +
 .../DOMStorage/GetDOMStorageItemsCommand.cs   |   1 +
 .../GetDOMStorageItemsCommandResponse.cs      |   1 +
 .../DOMStorage/RemoveDOMStorageItemCommand.cs |   1 +
 .../RemoveDOMStorageItemCommandResponse.cs    |   1 +
 .../DOMStorage/SetDOMStorageItemCommand.cs    |   1 +
 .../SetDOMStorageItemCommandResponse.cs       |   1 +
 .../Chrome/Database/AddDatabaseEvent.cs       |   4 +-
 .../Chrome/Database/DisableCommand.cs         |   1 +
 .../Chrome/Database/DisableCommandResponse.cs |   1 +
 .../Protocol/Chrome/Database/EnableCommand.cs |   1 +
 .../Chrome/Database/EnableCommandResponse.cs  |   1 +
 .../Chrome/Database/ExecuteSQLCommand.cs      |   1 +
 .../Database/ExecuteSQLCommandResponse.cs     |   1 +
 .../Database/GetDatabaseTableNamesCommand.cs  |   1 +
 .../GetDatabaseTableNamesCommandResponse.cs   |   1 +
 .../Protocol/Chrome/Debugger/BreakLocation.cs |   3 -
 .../Debugger/BreakpointResolvedEvent.cs       |   4 +-
 .../Debugger/ContinueToLocationCommand.cs     |   1 +
 .../ContinueToLocationCommandResponse.cs      |   1 +
 .../Chrome/Debugger/DisableCommand.cs         |   1 +
 .../Chrome/Debugger/DisableCommandResponse.cs |   1 +
 .../Protocol/Chrome/Debugger/EnableCommand.cs |   1 +
 .../Chrome/Debugger/EnableCommandResponse.cs  |   1 +
 .../Debugger/EvaluateOnCallFrameCommand.cs    |   1 +
 .../EvaluateOnCallFrameCommandResponse.cs     |   1 +
 .../Debugger/GetPossibleBreakpointsCommand.cs |   1 +
 .../GetPossibleBreakpointsCommandResponse.cs  |   1 +
 .../Chrome/Debugger/GetScriptSourceCommand.cs |   1 +
 .../GetScriptSourceCommandResponse.cs         |   1 +
 .../Protocol/Chrome/Debugger/PauseCommand.cs  |   1 +
 .../Chrome/Debugger/PauseCommandResponse.cs   |   1 +
 .../Protocol/Chrome/Debugger/PausedEvent.cs   |   4 +-
 .../Debugger/RemoveBreakpointCommand.cs       |   1 +
 .../RemoveBreakpointCommandResponse.cs        |   1 +
 .../Chrome/Debugger/RestartFrameCommand.cs    |   1 +
 .../Debugger/RestartFrameCommandResponse.cs   |   1 +
 .../Protocol/Chrome/Debugger/ResumeCommand.cs |   1 +
 .../Chrome/Debugger/ResumeCommandResponse.cs  |   1 +
 .../Protocol/Chrome/Debugger/ResumedEvent.cs  |   4 +-
 .../Debugger/ScheduleStepIntoAsyncCommand.cs  |   1 +
 .../ScheduleStepIntoAsyncCommandResponse.cs   |   1 +
 .../Debugger/ScriptFailedToParseEvent.cs      |   4 +-
 .../Chrome/Debugger/ScriptParsedEvent.cs      |   4 +-
 .../Chrome/Debugger/SearchInContentCommand.cs |   1 +
 .../SearchInContentCommandResponse.cs         |   1 +
 .../Debugger/SetAsyncCallStackDepthCommand.cs |   1 +
 .../SetAsyncCallStackDepthCommandResponse.cs  |   1 +
 .../Debugger/SetBlackboxPatternsCommand.cs    |   1 +
 .../SetBlackboxPatternsCommandResponse.cs     |   1 +
 .../Debugger/SetBlackboxedRangesCommand.cs    |   1 +
 .../SetBlackboxedRangesCommandResponse.cs     |   1 +
 .../Debugger/SetBreakpointByUrlCommand.cs     |   1 +
 .../SetBreakpointByUrlCommandResponse.cs      |   1 +
 .../Chrome/Debugger/SetBreakpointCommand.cs   |   1 +
 .../Debugger/SetBreakpointCommandResponse.cs  |   1 +
 .../Debugger/SetBreakpointsActiveCommand.cs   |   1 +
 .../SetBreakpointsActiveCommandResponse.cs    |   1 +
 .../Debugger/SetPauseOnExceptionsCommand.cs   |   1 +
 .../SetPauseOnExceptionsCommandResponse.cs    |   1 +
 .../Chrome/Debugger/SetScriptSourceCommand.cs |   1 +
 .../SetScriptSourceCommandResponse.cs         |   1 +
 .../Debugger/SetSkipAllPausesCommand.cs       |   1 +
 .../SetSkipAllPausesCommandResponse.cs        |   1 +
 .../Debugger/SetVariableValueCommand.cs       |   1 +
 .../SetVariableValueCommandResponse.cs        |   1 +
 .../Chrome/Debugger/StepIntoCommand.cs        |   1 +
 .../Debugger/StepIntoCommandResponse.cs       |   1 +
 .../Chrome/Debugger/StepOutCommand.cs         |   1 +
 .../Chrome/Debugger/StepOutCommandResponse.cs |   1 +
 .../Chrome/Debugger/StepOverCommand.cs        |   1 +
 .../Debugger/StepOverCommandResponse.cs       |   1 +
 .../ClearDeviceOrientationOverrideCommand.cs  |   1 +
 ...eviceOrientationOverrideCommandResponse.cs |   1 +
 .../SetDeviceOrientationOverrideCommand.cs    |   1 +
 ...eviceOrientationOverrideCommandResponse.cs |   1 +
 .../Chrome/Emulation/CanEmulateCommand.cs     |   1 +
 .../Emulation/CanEmulateCommandResponse.cs    |   1 +
 .../ClearDeviceMetricsOverrideCommand.cs      |   1 +
 ...earDeviceMetricsOverrideCommandResponse.cs |   1 +
 .../ClearGeolocationOverrideCommand.cs        |   1 +
 ...ClearGeolocationOverrideCommandResponse.cs |   1 +
 .../Chrome/Emulation/ForceViewportCommand.cs  |  27 -
 .../Emulation/ForceViewportCommandResponse.cs |  15 -
 .../Emulation/ResetPageScaleFactorCommand.cs  |   1 +
 .../ResetPageScaleFactorCommandResponse.cs    |   1 +
 .../Chrome/Emulation/ResetViewportCommand.cs  |  15 -
 .../Emulation/ResetViewportCommandResponse.cs |  15 -
 .../Emulation/SetCPUThrottlingRateCommand.cs  |   1 +
 .../SetCPUThrottlingRateCommandResponse.cs    |   1 +
 ...etDefaultBackgroundColorOverrideCommand.cs |   1 +
 ...tBackgroundColorOverrideCommandResponse.cs |   1 +
 .../SetDeviceMetricsOverrideCommand.cs        |  20 +-
 ...SetDeviceMetricsOverrideCommandResponse.cs |   1 +
 .../SetEmitTouchEventsForMouseCommand.cs      |  22 +
 ...tEmitTouchEventsForMouseCommandResponse.cs |  13 +
 .../Emulation/SetEmulatedMediaCommand.cs      |   1 +
 .../SetEmulatedMediaCommandResponse.cs        |   1 +
 .../SetGeolocationOverrideCommand.cs          |   1 +
 .../SetGeolocationOverrideCommandResponse.cs  |   1 +
 .../Emulation/SetPageScaleFactorCommand.cs    |   1 +
 .../SetPageScaleFactorCommandResponse.cs      |   1 +
 .../SetScriptExecutionDisabledCommand.cs      |   1 +
 ...tScriptExecutionDisabledCommandResponse.cs |   1 +
 .../SetTouchEmulationEnabledCommand.cs        |   7 +-
 ...SetTouchEmulationEnabledCommandResponse.cs |   3 +-
 .../Emulation/SetVirtualTimePolicyCommand.cs  |   1 +
 .../SetVirtualTimePolicyCommandResponse.cs    |   1 +
 .../Chrome/Emulation/SetVisibleSizeCommand.cs |   2 +
 .../SetVisibleSizeCommandResponse.cs          |   2 +
 .../VirtualTimeBudgetExpiredEvent.cs          |   6 +-
 .../Emulation/VirtualTimePausedEvent.cs       |  19 +
 .../HeapProfiler/AddHeapSnapshotChunkEvent.cs |   4 +-
 .../AddInspectedHeapObjectCommand.cs          |   1 +
 .../AddInspectedHeapObjectCommandResponse.cs  |   1 +
 .../HeapProfiler/CollectGarbageCommand.cs     |   1 +
 .../CollectGarbageCommandResponse.cs          |   1 +
 .../Chrome/HeapProfiler/DisableCommand.cs     |   1 +
 .../HeapProfiler/DisableCommandResponse.cs    |   1 +
 .../Chrome/HeapProfiler/EnableCommand.cs      |   1 +
 .../HeapProfiler/EnableCommandResponse.cs     |   1 +
 .../HeapProfiler/GetHeapObjectIdCommand.cs    |   1 +
 .../GetHeapObjectIdCommandResponse.cs         |   1 +
 .../GetObjectByHeapObjectIdCommand.cs         |   1 +
 .../GetObjectByHeapObjectIdCommandResponse.cs |   1 +
 .../HeapProfiler/HeapStatsUpdateEvent.cs      |   4 +-
 .../HeapProfiler/LastSeenObjectIdEvent.cs     |   4 +-
 .../ReportHeapSnapshotProgressEvent.cs        |   4 +-
 .../Chrome/HeapProfiler/ResetProfilesEvent.cs |   4 +-
 .../HeapProfiler/StartSamplingCommand.cs      |   1 +
 .../StartSamplingCommandResponse.cs           |   1 +
 .../StartTrackingHeapObjectsCommand.cs        |   1 +
 ...StartTrackingHeapObjectsCommandResponse.cs |   1 +
 .../HeapProfiler/StopSamplingCommand.cs       |   1 +
 .../StopSamplingCommandResponse.cs            |   1 +
 .../StopTrackingHeapObjectsCommand.cs         |   1 +
 .../StopTrackingHeapObjectsCommandResponse.cs |   1 +
 .../HeapProfiler/TakeHeapSnapshotCommand.cs   |   1 +
 .../TakeHeapSnapshotCommandResponse.cs        |   1 +
 .../Protocol/Chrome/IO/CloseCommand.cs        |   1 +
 .../Chrome/IO/CloseCommandResponse.cs         |   1 +
 .../Protocol/Chrome/IO/ReadCommand.cs         |   1 +
 .../Protocol/Chrome/IO/ReadCommandResponse.cs |   6 +
 .../Protocol/Chrome/IO/ResolveBlobCommand.cs  |  20 +
 .../Chrome/IO/ResolveBlobCommandResponse.cs   |  20 +
 .../IndexedDB/ClearObjectStoreCommand.cs      |   1 +
 .../ClearObjectStoreCommandResponse.cs        |   1 +
 .../Chrome/IndexedDB/DeleteDatabaseCommand.cs |   1 +
 .../DeleteDatabaseCommandResponse.cs          |   1 +
 .../Chrome/IndexedDB/DisableCommand.cs        |   1 +
 .../IndexedDB/DisableCommandResponse.cs       |   1 +
 .../Chrome/IndexedDB/EnableCommand.cs         |   1 +
 .../Chrome/IndexedDB/EnableCommandResponse.cs |   1 +
 .../Chrome/IndexedDB/RequestDataCommand.cs    |   1 +
 .../IndexedDB/RequestDataCommandResponse.cs   |   1 +
 .../IndexedDB/RequestDatabaseCommand.cs       |   1 +
 .../RequestDatabaseCommandResponse.cs         |   1 +
 .../IndexedDB/RequestDatabaseNamesCommand.cs  |   1 +
 .../RequestDatabaseNamesCommandResponse.cs    |   1 +
 .../Chrome/Input/DispatchKeyEventCommand.cs   |   3 +-
 .../Input/DispatchKeyEventCommandResponse.cs  |   1 +
 .../Chrome/Input/DispatchMouseEventCommand.cs |  21 +-
 .../DispatchMouseEventCommandResponse.cs      |   1 +
 .../Chrome/Input/DispatchTouchEventCommand.cs |   7 +-
 .../DispatchTouchEventCommandResponse.cs      |   1 +
 .../EmulateTouchFromMouseEventCommand.cs      |   3 +-
 ...ulateTouchFromMouseEventCommandResponse.cs |   1 +
 .../Input/SetIgnoreInputEventsCommand.cs      |   1 +
 .../SetIgnoreInputEventsCommandResponse.cs    |   1 +
 .../Input/SynthesizePinchGestureCommand.cs    |   5 +-
 .../SynthesizePinchGestureCommandResponse.cs  |   1 +
 .../Input/SynthesizeScrollGestureCommand.cs   |  13 +-
 .../SynthesizeScrollGestureCommandResponse.cs |   1 +
 .../Input/SynthesizeTapGestureCommand.cs      |   5 +-
 .../SynthesizeTapGestureCommandResponse.cs    |   1 +
 .../Protocol/Chrome/Input/TouchPoint.cs       |  11 +-
 .../Chrome/Inspector/DetachedEvent.cs         |   4 +-
 .../Chrome/Inspector/DisableCommand.cs        |   1 +
 .../Inspector/DisableCommandResponse.cs       |   1 +
 .../Chrome/Inspector/EnableCommand.cs         |   1 +
 .../Chrome/Inspector/EnableCommandResponse.cs |   1 +
 .../Chrome/Inspector/TargetCrashedEvent.cs    |   4 +-
 .../LayerTree/CompositingReasonsCommand.cs    |   1 +
 .../CompositingReasonsCommandResponse.cs      |   1 +
 .../Chrome/LayerTree/DisableCommand.cs        |   1 +
 .../LayerTree/DisableCommandResponse.cs       |   1 +
 .../Chrome/LayerTree/EnableCommand.cs         |   1 +
 .../Chrome/LayerTree/EnableCommandResponse.cs |   1 +
 .../Protocol/Chrome/LayerTree/Layer.cs        |   5 +
 .../Chrome/LayerTree/LayerPaintedEvent.cs     |   4 +-
 .../LayerTree/LayerTreeDidChangeEvent.cs      |   4 +-
 .../Chrome/LayerTree/LoadSnapshotCommand.cs   |   1 +
 .../LayerTree/LoadSnapshotCommandResponse.cs  |   1 +
 .../Chrome/LayerTree/MakeSnapshotCommand.cs   |   1 +
 .../LayerTree/MakeSnapshotCommandResponse.cs  |   1 +
 .../LayerTree/ProfileSnapshotCommand.cs       |   1 +
 .../ProfileSnapshotCommandResponse.cs         |   1 +
 .../LayerTree/ReleaseSnapshotCommand.cs       |   1 +
 .../ReleaseSnapshotCommandResponse.cs         |   1 +
 .../Chrome/LayerTree/ReplaySnapshotCommand.cs |   1 +
 .../ReplaySnapshotCommandResponse.cs          |   1 +
 .../LayerTree/SnapshotCommandLogCommand.cs    |   1 +
 .../SnapshotCommandLogCommandResponse.cs      |   1 +
 .../LayerTree/StickyPositionConstraint.cs     |  32 +
 .../Protocol/Chrome/Log/ClearCommand.cs       |   1 +
 .../Chrome/Log/ClearCommandResponse.cs        |   1 +
 .../Protocol/Chrome/Log/DisableCommand.cs     |   1 +
 .../Chrome/Log/DisableCommandResponse.cs      |   1 +
 .../Protocol/Chrome/Log/EnableCommand.cs      |   1 +
 .../Chrome/Log/EnableCommandResponse.cs       |   1 +
 .../Protocol/Chrome/Log/EntryAddedEvent.cs    |   4 +-
 .../Log/StartViolationsReportCommand.cs       |   1 +
 .../StartViolationsReportCommandResponse.cs   |   1 +
 .../Chrome/Log/StopViolationsReportCommand.cs |   1 +
 .../StopViolationsReportCommandResponse.cs    |   1 +
 .../Chrome/Memory/GetDOMCountersCommand.cs    |   1 +
 .../Memory/GetDOMCountersCommandResponse.cs   |   1 +
 .../Memory/PrepareForLeakDetectionCommand.cs  |  13 +
 .../PrepareForLeakDetectionCommandResponse.cs |  13 +
 ...tPressureNotificationsSuppressedCommand.cs |   1 +
 ...eNotificationsSuppressedCommandResponse.cs |   1 +
 .../SimulatePressureNotificationCommand.cs    |   1 +
 ...latePressureNotificationCommandResponse.cs |   1 +
 .../Protocol/Chrome/Network/AuthChallenge.cs  |  31 +
 .../Chrome/Network/AuthChallengeResponse.cs   |  28 +
 .../Network/CanClearBrowserCacheCommand.cs    |   1 +
 .../CanClearBrowserCacheCommandResponse.cs    |   1 +
 .../Network/CanClearBrowserCookiesCommand.cs  |   1 +
 .../CanClearBrowserCookiesCommandResponse.cs  |   1 +
 .../CanEmulateNetworkConditionsCommand.cs     |   1 +
 ...EmulateNetworkConditionsCommandResponse.cs |   1 +
 .../Network/ClearBrowserCacheCommand.cs       |   1 +
 .../ClearBrowserCacheCommandResponse.cs       |   1 +
 .../Network/ClearBrowserCookiesCommand.cs     |   1 +
 .../ClearBrowserCookiesCommandResponse.cs     |   1 +
 .../ContinueInterceptedRequestCommand.cs      |  55 ++
 ...ntinueInterceptedRequestCommandResponse.cs |  16 +
 .../Protocol/Chrome/Network/CookieParam.cs    |  57 ++
 .../Chrome/Network/DataReceivedEvent.cs       |   4 +-
 .../Chrome/Network/DeleteCookieCommand.cs     |  23 -
 .../Chrome/Network/DeleteCookiesCommand.cs    |  35 +
 .../Network/DeleteCookiesCommandResponse.cs   |  16 +
 .../Protocol/Chrome/Network/DisableCommand.cs |   1 +
 .../Chrome/Network/DisableCommandResponse.cs  |   1 +
 .../EmulateNetworkConditionsCommand.cs        |   1 +
 ...EmulateNetworkConditionsCommandResponse.cs |   1 +
 .../Protocol/Chrome/Network/EnableCommand.cs  |   1 +
 .../Chrome/Network/EnableCommandResponse.cs   |   1 +
 .../Protocol/Chrome/Network/ErrorReason.cs    |  27 +
 .../EventSourceMessageReceivedEvent.cs        |   4 +-
 .../Chrome/Network/GetAllCookiesCommand.cs    |   1 +
 .../Network/GetAllCookiesCommandResponse.cs   |   1 +
 .../Chrome/Network/GetCertificateCommand.cs   |   1 +
 .../Network/GetCertificateCommandResponse.cs  |   1 +
 .../Chrome/Network/GetCookiesCommand.cs       |   1 +
 .../Network/GetCookiesCommandResponse.cs      |   1 +
 .../Chrome/Network/GetResponseBodyCommand.cs  |   1 +
 .../Network/GetResponseBodyCommandResponse.cs |   1 +
 .../Protocol/Chrome/Network/Initiator.cs      |   4 +-
 .../Chrome/Network/LoadingFailedEvent.cs      |   4 +-
 .../Chrome/Network/LoadingFinishedEvent.cs    |   4 +-
 .../Chrome/Network/ReplayXHRCommand.cs        |   1 +
 .../Network/ReplayXHRCommandResponse.cs       |   1 +
 .../Protocol/Chrome/Network/Request.cs        |   4 +-
 .../Chrome/Network/RequestInterceptedEvent.cs |  51 ++
 .../Network/RequestServedFromCacheEvent.cs    |   4 +-
 .../Chrome/Network/RequestWillBeSentEvent.cs  |  17 +-
 .../Network/ResourceChangedPriorityEvent.cs   |   4 +-
 .../Chrome/Network/ResponseReceivedEvent.cs   |  15 +-
 .../Chrome/Network/SetBlockedURLsCommand.cs   |   1 +
 .../Network/SetBlockedURLsCommandResponse.cs  |   1 +
 .../Network/SetBypassServiceWorkerCommand.cs  |   1 +
 .../SetBypassServiceWorkerCommandResponse.cs  |   1 +
 .../Chrome/Network/SetCacheDisabledCommand.cs |   1 +
 .../SetCacheDisabledCommandResponse.cs        |   1 +
 .../Chrome/Network/SetCookieCommand.cs        |  28 +-
 .../Network/SetCookieCommandResponse.cs       |   1 +
 .../Chrome/Network/SetCookiesCommand.cs       |  20 +
 ...sponse.cs => SetCookiesCommandResponse.cs} |   7 +-
 .../SetDataSizeLimitsForTestCommand.cs        |   1 +
 ...SetDataSizeLimitsForTestCommandResponse.cs |   1 +
 .../Network/SetExtraHTTPHeadersCommand.cs     |   1 +
 .../SetExtraHTTPHeadersCommandResponse.cs     |   1 +
 .../SetRequestInterceptionEnabledCommand.cs   |  25 +
 ...questInterceptionEnabledCommandResponse.cs |  16 +
 .../Network/SetUserAgentOverrideCommand.cs    |   1 +
 .../SetUserAgentOverrideCommandResponse.cs    |   1 +
 .../Chrome/Network/WebSocketClosedEvent.cs    |   4 +-
 .../Chrome/Network/WebSocketCreatedEvent.cs   |   4 +-
 .../Network/WebSocketFrameErrorEvent.cs       |   4 +-
 .../Network/WebSocketFrameReceivedEvent.cs    |   4 +-
 .../Chrome/Network/WebSocketFrameSentEvent.cs |   4 +-
 ...WebSocketHandshakeResponseReceivedEvent.cs |   4 +-
 .../WebSocketWillSendHandshakeRequestEvent.cs |   4 +-
 .../Protocol/Chrome/Overlay/DisableCommand.cs |   1 +
 .../Chrome/Overlay/DisableCommandResponse.cs  |   1 +
 .../Protocol/Chrome/Overlay/EnableCommand.cs  |   1 +
 .../Chrome/Overlay/EnableCommandResponse.cs   |   1 +
 .../GetHighlightObjectForTestCommand.cs       |   1 +
 ...etHighlightObjectForTestCommandResponse.cs |   1 +
 .../Chrome/Overlay/HideHighlightCommand.cs    |   1 +
 .../Overlay/HideHighlightCommandResponse.cs   |   1 +
 .../Chrome/Overlay/HighlightConfig.cs         |   5 +
 .../Chrome/Overlay/HighlightFrameCommand.cs   |   1 +
 .../Overlay/HighlightFrameCommandResponse.cs  |   1 +
 .../Chrome/Overlay/HighlightNodeCommand.cs    |   1 +
 .../Overlay/HighlightNodeCommandResponse.cs   |   1 +
 .../Chrome/Overlay/HighlightQuadCommand.cs    |   1 +
 .../Overlay/HighlightQuadCommandResponse.cs   |   1 +
 .../Chrome/Overlay/HighlightRectCommand.cs    |   1 +
 .../Overlay/HighlightRectCommandResponse.cs   |   1 +
 .../Overlay/InspectNodeRequestedEvent.cs      |   4 +-
 .../Overlay/NodeHighlightRequestedEvent.cs    |   4 +-
 .../Overlay/ScreenshotRequestedEvent.cs       |  19 +
 .../Chrome/Overlay/SetInspectModeCommand.cs   |   1 +
 .../Overlay/SetInspectModeCommandResponse.cs  |   1 +
 .../SetPausedInDebuggerMessageCommand.cs      |   1 +
 ...tPausedInDebuggerMessageCommandResponse.cs |   1 +
 .../Overlay/SetShowDebugBordersCommand.cs     |   1 +
 .../SetShowDebugBordersCommandResponse.cs     |   1 +
 .../Overlay/SetShowFPSCounterCommand.cs       |   1 +
 .../SetShowFPSCounterCommandResponse.cs       |   1 +
 .../Overlay/SetShowPaintRectsCommand.cs       |   1 +
 .../SetShowPaintRectsCommandResponse.cs       |   1 +
 .../SetShowScrollBottleneckRectsCommand.cs    |   1 +
 ...howScrollBottleneckRectsCommandResponse.cs |   1 +
 .../SetShowViewportSizeOnResizeCommand.cs     |   1 +
 ...ShowViewportSizeOnResizeCommandResponse.cs |   1 +
 .../Chrome/Overlay/SetSuspendedCommand.cs     |   1 +
 .../Overlay/SetSuspendedCommandResponse.cs    |   1 +
 .../Page/AddScriptToEvaluateOnLoadCommand.cs  |   5 +
 ...ddScriptToEvaluateOnLoadCommandResponse.cs |   5 +
 ...AddScriptToEvaluateOnNewDocumentCommand.cs |  20 +
 ...tToEvaluateOnNewDocumentCommandResponse.cs |  20 +
 .../Chrome/Page/BringToFrontCommand.cs        |  16 +
 .../Page/BringToFrontCommandResponse.cs       |  16 +
 .../Chrome/Page/CaptureScreenshotCommand.cs   |   6 +
 .../Page/CaptureScreenshotCommandResponse.cs  |   1 +
 .../Page/ClearDeviceMetricsOverrideCommand.cs |   1 +
 ...earDeviceMetricsOverrideCommandResponse.cs |   1 +
 .../ClearDeviceOrientationOverrideCommand.cs  |   1 +
 ...eviceOrientationOverrideCommandResponse.cs |   1 +
 .../Page/ClearGeolocationOverrideCommand.cs   |   1 +
 ...ClearGeolocationOverrideCommandResponse.cs |   1 +
 .../Chrome/Page/CreateIsolatedWorldCommand.cs |   1 +
 .../CreateIsolatedWorldCommandResponse.cs     |   5 +
 .../Chrome/Page/DeleteCookieCommand.cs        |   1 +
 .../Page/DeleteCookieCommandResponse.cs       |   1 +
 .../Protocol/Chrome/Page/DisableCommand.cs    |   1 +
 .../Chrome/Page/DisableCommandResponse.cs     |   1 +
 .../Chrome/Page/DomContentEventFiredEvent.cs  |   4 +-
 .../Protocol/Chrome/Page/EnableCommand.cs     |   1 +
 .../Chrome/Page/EnableCommandResponse.cs      |   1 +
 .../Protocol/Chrome/Page/Frame.cs             |   5 +
 .../Chrome/Page/FrameAttachedEvent.cs         |   4 +-
 .../FrameClearedScheduledNavigationEvent.cs   |   4 +-
 .../Chrome/Page/FrameDetachedEvent.cs         |   4 +-
 .../Chrome/Page/FrameNavigatedEvent.cs        |   4 +-
 .../Protocol/Chrome/Page/FrameResizedEvent.cs |   4 +-
 .../Page/FrameScheduledNavigationEvent.cs     |  12 +-
 .../Chrome/Page/FrameStartedLoadingEvent.cs   |   4 +-
 .../Chrome/Page/FrameStoppedLoadingEvent.cs   |   4 +-
 .../Chrome/Page/GetAppManifestCommand.cs      |   1 +
 .../Page/GetAppManifestCommandResponse.cs     |   1 +
 .../Protocol/Chrome/Page/GetCookiesCommand.cs |   1 +
 .../Chrome/Page/GetCookiesCommandResponse.cs  |   1 +
 .../Chrome/Page/GetLayoutMetricsCommand.cs    |   1 +
 .../Page/GetLayoutMetricsCommandResponse.cs   |   1 +
 .../Page/GetNavigationHistoryCommand.cs       |   1 +
 .../GetNavigationHistoryCommandResponse.cs    |   1 +
 .../Chrome/Page/GetResourceContentCommand.cs  |   1 +
 .../Page/GetResourceContentCommandResponse.cs |   1 +
 .../Chrome/Page/GetResourceTreeCommand.cs     |   1 +
 .../Page/GetResourceTreeCommandResponse.cs    |   1 +
 .../Page/HandleJavaScriptDialogCommand.cs     |   1 +
 .../HandleJavaScriptDialogCommandResponse.cs  |   1 +
 .../Chrome/Page/InterstitialHiddenEvent.cs    |   4 +-
 .../Chrome/Page/InterstitialShownEvent.cs     |   4 +-
 .../Page/JavascriptDialogClosedEvent.cs       |   8 +-
 .../Page/JavascriptDialogOpeningEvent.cs      |  13 +-
 .../Chrome/Page/LifecycleEventEvent.cs        |  23 +
 .../Chrome/Page/LoadEventFiredEvent.cs        |   4 +-
 .../Protocol/Chrome/Page/NavigateCommand.cs   |   1 +
 .../Chrome/Page/NavigateCommandResponse.cs    |   1 +
 .../Page/NavigateToHistoryEntryCommand.cs     |   1 +
 .../NavigateToHistoryEntryCommandResponse.cs  |   1 +
 .../Chrome/Page/NavigationRequestedEvent.cs   |  29 -
 .../Protocol/Chrome/Page/PrintToPDFCommand.cs |   6 +
 .../Chrome/Page/PrintToPDFCommandResponse.cs  |   1 +
 .../Chrome/Page/ProcessNavigationCommand.cs   |  23 -
 .../Page/ProcessNavigationCommandResponse.cs  |  15 -
 .../Protocol/Chrome/Page/ReloadCommand.cs     |   1 +
 .../Chrome/Page/ReloadCommandResponse.cs      |   1 +
 .../RemoveScriptToEvaluateOnLoadCommand.cs    |   5 +
 ...veScriptToEvaluateOnLoadCommandResponse.cs |   5 +
 ...oveScriptToEvaluateOnNewDocumentCommand.cs |  20 +
 ...tToEvaluateOnNewDocumentCommandResponse.cs |  16 +
 .../Chrome/Page/RequestAppBannerCommand.cs    |   1 +
 .../Page/RequestAppBannerCommandResponse.cs   |   1 +
 .../Chrome/Page/ScreencastFrameAckCommand.cs  |   1 +
 .../Page/ScreencastFrameAckCommandResponse.cs |   1 +
 .../Chrome/Page/ScreencastFrameEvent.cs       |   4 +-
 .../Page/ScreencastVisibilityChangedEvent.cs  |   4 +-
 .../Chrome/Page/SearchInResourceCommand.cs    |   1 +
 .../Page/SearchInResourceCommandResponse.cs   |   1 +
 ...mand.cs => SetAdBlockingEnabledCommand.cs} |   9 +-
 .../SetAdBlockingEnabledCommandResponse.cs    |  16 +
 .../SetAutoAttachToCreatedPagesCommand.cs     |   1 +
 ...AutoAttachToCreatedPagesCommandResponse.cs |   1 +
 .../SetControlNavigationsCommandResponse.cs   |  15 -
 .../Page/SetDeviceMetricsOverrideCommand.cs   |  20 +-
 ...SetDeviceMetricsOverrideCommandResponse.cs |   1 +
 .../SetDeviceOrientationOverrideCommand.cs    |   1 +
 ...eviceOrientationOverrideCommandResponse.cs |   1 +
 .../Chrome/Page/SetDocumentContentCommand.cs  |   1 +
 .../Page/SetDocumentContentCommandResponse.cs |   1 +
 .../Chrome/Page/SetDownloadBehaviorCommand.cs |  25 +
 .../SetDownloadBehaviorCommandResponse.cs     |  16 +
 .../Page/SetGeolocationOverrideCommand.cs     |   1 +
 .../SetGeolocationOverrideCommandResponse.cs  |   1 +
 .../Page/SetTouchEmulationEnabledCommand.cs   |   1 +
 ...SetTouchEmulationEnabledCommandResponse.cs |   1 +
 .../Chrome/Page/StartScreencastCommand.cs     |   1 +
 .../Page/StartScreencastCommandResponse.cs    |   1 +
 .../Chrome/Page/StopLoadingCommand.cs         |   1 +
 .../Chrome/Page/StopLoadingCommandResponse.cs |   1 +
 .../Chrome/Page/StopScreencastCommand.cs      |   1 +
 .../Page/StopScreencastCommandResponse.cs     |   1 +
 .../Protocol/Chrome/Page/Viewport.cs          |  34 +
 .../Chrome/Performance/DisableCommand.cs      |  16 +
 .../Performance/DisableCommandResponse.cs     |  16 +
 .../Chrome/Performance/EnableCommand.cs       |  16 +
 .../Performance/EnableCommandResponse.cs      |  16 +
 .../Chrome/Performance/GetMetricsCommand.cs   |  16 +
 .../Performance/GetMetricsCommandResponse.cs  |  20 +
 .../Protocol/Chrome/Performance/Metric.cs     |  22 +
 .../Chrome/Performance/MetricsEvent.cs        |  23 +
 .../Profiler/ConsoleProfileFinishedEvent.cs   |   4 +-
 .../Profiler/ConsoleProfileStartedEvent.cs    |   4 +-
 .../Chrome/Profiler/DisableCommand.cs         |   1 +
 .../Chrome/Profiler/DisableCommandResponse.cs |   1 +
 .../Protocol/Chrome/Profiler/EnableCommand.cs |   1 +
 .../Chrome/Profiler/EnableCommandResponse.cs  |   1 +
 .../Chrome/Profiler/FunctionCoverage.cs       |   4 +
 .../Profiler/GetBestEffortCoverageCommand.cs  |   1 +
 .../GetBestEffortCoverageCommandResponse.cs   |   1 +
 .../Profiler/SetSamplingIntervalCommand.cs    |   1 +
 .../SetSamplingIntervalCommandResponse.cs     |   1 +
 .../Protocol/Chrome/Profiler/StartCommand.cs  |   1 +
 .../Chrome/Profiler/StartCommandResponse.cs   |   1 +
 .../Profiler/StartPreciseCoverageCommand.cs   |   6 +
 .../StartPreciseCoverageCommandResponse.cs    |   1 +
 .../Protocol/Chrome/Profiler/StopCommand.cs   |   1 +
 .../Chrome/Profiler/StopCommandResponse.cs    |   1 +
 .../Profiler/StopPreciseCoverageCommand.cs    |   1 +
 .../StopPreciseCoverageCommandResponse.cs     |   1 +
 .../Profiler/TakePreciseCoverageCommand.cs    |   1 +
 .../TakePreciseCoverageCommandResponse.cs     |   1 +
 .../Protocol/Chrome/ProtocolName.cs           |  52 +-
 .../Chrome/Runtime/AwaitPromiseCommand.cs     |   1 +
 .../Runtime/AwaitPromiseCommandResponse.cs    |   1 +
 .../Protocol/Chrome/Runtime/CallArgument.cs   |   2 +-
 .../Chrome/Runtime/CallFunctionOnCommand.cs   |   3 +-
 .../Runtime/CallFunctionOnCommandResponse.cs  |   1 +
 .../Chrome/Runtime/CompileScriptCommand.cs    |   1 +
 .../Runtime/CompileScriptCommandResponse.cs   |   1 +
 .../Chrome/Runtime/ConsoleAPICalledEvent.cs   |   9 +-
 .../Protocol/Chrome/Runtime/CustomPreview.cs  |   3 -
 .../Protocol/Chrome/Runtime/DisableCommand.cs |   1 +
 .../Chrome/Runtime/DisableCommandResponse.cs  |   1 +
 .../Runtime/DiscardConsoleEntriesCommand.cs   |   1 +
 .../DiscardConsoleEntriesCommandResponse.cs   |   1 +
 .../Protocol/Chrome/Runtime/EnableCommand.cs  |   1 +
 .../Chrome/Runtime/EnableCommandResponse.cs   |   1 +
 .../Protocol/Chrome/Runtime/EntryPreview.cs   |   3 -
 .../Chrome/Runtime/EvaluateCommand.cs         |   3 +-
 .../Chrome/Runtime/EvaluateCommandResponse.cs |   1 +
 .../Chrome/Runtime/ExceptionRevokedEvent.cs   |   4 +-
 .../Chrome/Runtime/ExceptionThrownEvent.cs    |   4 +-
 .../Runtime/ExecutionContextCreatedEvent.cs   |   4 +-
 .../Runtime/ExecutionContextDestroyedEvent.cs |   4 +-
 .../Runtime/ExecutionContextsClearedEvent.cs  |   4 +-
 .../Chrome/Runtime/GetPropertiesCommand.cs    |   1 +
 .../Runtime/GetPropertiesCommandResponse.cs   |   1 +
 .../Chrome/Runtime/InspectRequestedEvent.cs   |   4 +-
 .../Chrome/Runtime/PropertyPreview.cs         |   3 -
 .../Chrome/Runtime/QueryObjectsCommand.cs     |  17 +
 .../Runtime/QueryObjectsCommandResponse.cs    |  17 +
 .../Chrome/Runtime/ReleaseObjectCommand.cs    |   1 +
 .../Runtime/ReleaseObjectCommandResponse.cs   |   1 +
 .../Runtime/ReleaseObjectGroupCommand.cs      |   1 +
 .../ReleaseObjectGroupCommandResponse.cs      |   1 +
 .../Runtime/RunIfWaitingForDebuggerCommand.cs |   1 +
 .../RunIfWaitingForDebuggerCommandResponse.cs |   1 +
 .../Chrome/Runtime/RunScriptCommand.cs        |   3 +-
 .../Runtime/RunScriptCommandResponse.cs       |   1 +
 .../SetCustomObjectFormatterEnabledCommand.cs |   1 +
 ...omObjectFormatterEnabledCommandResponse.cs |   1 +
 .../Chrome/Schema/GetDomainsCommand.cs        |   1 +
 .../Schema/GetDomainsCommandResponse.cs       |   1 +
 .../Chrome/Security/CertificateErrorEvent.cs  |   4 +-
 .../Chrome/Security/DisableCommand.cs         |   1 +
 .../Chrome/Security/DisableCommandResponse.cs |   1 +
 .../Protocol/Chrome/Security/EnableCommand.cs |   1 +
 .../Chrome/Security/EnableCommandResponse.cs  |   1 +
 .../Security/HandleCertificateErrorCommand.cs |   1 +
 .../HandleCertificateErrorCommandResponse.cs  |   1 +
 .../Chrome/Security/MixedContentType.cs       |  19 +
 .../Protocol/Chrome/Security/SecurityState.cs |   1 -
 .../Security/SecurityStateChangedEvent.cs     |   4 +-
 .../Security/SecurityStateExplanation.cs      |   8 +-
 .../SetOverrideCertificateErrorsCommand.cs    |   1 +
 ...verrideCertificateErrorsCommandResponse.cs |   1 +
 .../Security/ShowCertificateViewerCommand.cs  |  15 -
 .../ShowCertificateViewerCommandResponse.cs   |  15 -
 .../DeliverPushMessageCommand.cs              |   1 +
 .../DeliverPushMessageCommandResponse.cs      |   1 +
 .../Chrome/ServiceWorker/DisableCommand.cs    |   1 +
 .../ServiceWorker/DisableCommandResponse.cs   |   1 +
 .../ServiceWorker/DispatchSyncEventCommand.cs |   1 +
 .../DispatchSyncEventCommandResponse.cs       |   1 +
 .../Chrome/ServiceWorker/EnableCommand.cs     |   1 +
 .../ServiceWorker/EnableCommandResponse.cs    |   1 +
 .../ServiceWorker/InspectWorkerCommand.cs     |   1 +
 .../InspectWorkerCommandResponse.cs           |   1 +
 .../SetForceUpdateOnPageLoadCommand.cs        |   1 +
 ...SetForceUpdateOnPageLoadCommandResponse.cs |   1 +
 .../ServiceWorker/SkipWaitingCommand.cs       |   1 +
 .../SkipWaitingCommandResponse.cs             |   1 +
 .../ServiceWorker/StartWorkerCommand.cs       |   1 +
 .../StartWorkerCommandResponse.cs             |   1 +
 .../Chrome/ServiceWorker/StopWorkerCommand.cs |   1 +
 .../StopWorkerCommandResponse.cs              |   1 +
 .../Chrome/ServiceWorker/UnregisterCommand.cs |   1 +
 .../UnregisterCommandResponse.cs              |   1 +
 .../UpdateRegistrationCommand.cs              |   1 +
 .../UpdateRegistrationCommandResponse.cs      |   1 +
 .../ServiceWorker/WorkerErrorReportedEvent.cs |   4 +-
 .../WorkerRegistrationUpdatedEvent.cs         |   4 +-
 .../WorkerVersionUpdatedEvent.cs              |   4 +-
 .../CacheStorageContentUpdatedEvent.cs        |  23 +
 .../Storage/CacheStorageListUpdatedEvent.cs   |  19 +
 .../Storage/ClearDataForOriginCommand.cs      |   1 +
 .../ClearDataForOriginCommandResponse.cs      |   1 +
 .../Chrome/Storage/GetUsageAndQuotaCommand.cs |  20 +
 .../GetUsageAndQuotaCommandResponse.cs        |  28 +
 .../Protocol/Chrome/Storage/StorageType.cs    |   1 +
 .../TrackCacheStorageForOriginCommand.cs      |  20 +
 ...ackCacheStorageForOriginCommandResponse.cs |  16 +
 .../UntrackCacheStorageForOriginCommand.cs    |  20 +
 ...ackCacheStorageForOriginCommandResponse.cs |  16 +
 .../Protocol/Chrome/Storage/UsageForType.cs   |  22 +
 .../Chrome/SystemInfo/GetInfoCommand.cs       |   1 +
 .../SystemInfo/GetInfoCommandResponse.cs      |   1 +
 .../Chrome/Target/ActivateTargetCommand.cs    |   1 +
 .../Target/ActivateTargetCommandResponse.cs   |   1 +
 .../Chrome/Target/AttachToTargetCommand.cs    |   1 +
 .../Target/AttachToTargetCommandResponse.cs   |   5 +-
 .../Chrome/Target/AttachedToTargetEvent.cs    |   8 +-
 .../Chrome/Target/CloseTargetCommand.cs       |   1 +
 .../Target/CloseTargetCommandResponse.cs      |   1 +
 .../Target/CreateBrowserContextCommand.cs     |   1 +
 .../CreateBrowserContextCommandResponse.cs    |   1 +
 .../Chrome/Target/CreateTargetCommand.cs      |   1 +
 .../Target/CreateTargetCommandResponse.cs     |   1 +
 .../Chrome/Target/DetachFromTargetCommand.cs  |  11 +-
 .../Target/DetachFromTargetCommandResponse.cs |   3 +-
 .../Chrome/Target/DetachedFromTargetEvent.cs  |  13 +-
 .../Target/DisposeBrowserContextCommand.cs    |   1 +
 .../DisposeBrowserContextCommandResponse.cs   |   1 +
 .../Chrome/Target/GetTargetInfoCommand.cs     |   1 +
 .../Target/GetTargetInfoCommandResponse.cs    |   1 +
 .../Chrome/Target/GetTargetsCommand.cs        |   1 +
 .../Target/GetTargetsCommandResponse.cs       |   1 +
 .../Target/ReceivedMessageFromTargetEvent.cs  |  15 +-
 .../Protocol/Chrome/Target/RemoteLocation.cs  |   3 -
 .../Target/SendMessageToTargetCommand.cs      |  17 +-
 .../SendMessageToTargetCommandResponse.cs     |   3 +-
 .../Chrome/Target/SetAttachToFramesCommand.cs |   1 +
 .../SetAttachToFramesCommandResponse.cs       |   1 +
 .../Chrome/Target/SetAutoAttachCommand.cs     |   1 +
 .../Target/SetAutoAttachCommandResponse.cs    |   1 +
 .../Target/SetDiscoverTargetsCommand.cs       |   3 +-
 .../SetDiscoverTargetsCommandResponse.cs      |   3 +-
 .../Target/SetRemoteLocationsCommand.cs       |   1 +
 .../SetRemoteLocationsCommandResponse.cs      |   1 +
 .../Chrome/Target/TargetCreatedEvent.cs       |   4 +-
 .../Chrome/Target/TargetDestroyedEvent.cs     |   4 +-
 .../Protocol/Chrome/Target/TargetInfo.cs      |   7 +-
 .../Chrome/Target/TargetInfoChangedEvent.cs   |  19 +
 .../Chrome/Tethering/AcceptedEvent.cs         |   4 +-
 .../Protocol/Chrome/Tethering/BindCommand.cs  |   1 +
 .../Chrome/Tethering/BindCommandResponse.cs   |   1 +
 .../Chrome/Tethering/UnbindCommand.cs         |   1 +
 .../Chrome/Tethering/UnbindCommandResponse.cs |   1 +
 .../Chrome/Tracing/BufferUsageEvent.cs        |   4 +-
 .../Chrome/Tracing/DataCollectedEvent.cs      |   4 +-
 .../Protocol/Chrome/Tracing/EndCommand.cs     |   1 +
 .../Chrome/Tracing/EndCommandResponse.cs      |   1 +
 .../Chrome/Tracing/GetCategoriesCommand.cs    |   1 +
 .../Tracing/GetCategoriesCommandResponse.cs   |   1 +
 .../Tracing/RecordClockSyncMarkerCommand.cs   |   1 +
 .../RecordClockSyncMarkerCommandResponse.cs   |   1 +
 .../Tracing/RequestMemoryDumpCommand.cs       |   1 +
 .../RequestMemoryDumpCommandResponse.cs       |   1 +
 .../Protocol/Chrome/Tracing/StartCommand.cs   |   1 +
 .../Chrome/Tracing/StartCommandResponse.cs    |   1 +
 .../Protocol/Chrome/Tracing/TraceConfig.cs    |   3 -
 .../Chrome/Tracing/TracingCompleteEvent.cs    |   4 +-
 .../ApplicationCacheStatusUpdatedEvent.cs     |   4 +-
 .../iOS/ApplicationCache/EnableCommand.cs     |   1 +
 .../ApplicationCache/EnableCommandResponse.cs |   1 +
 .../GetApplicationCacheForFrameCommand.cs     |   1 +
 ...ApplicationCacheForFrameCommandResponse.cs |   1 +
 .../GetFramesWithManifestsCommand.cs          |   1 +
 .../GetFramesWithManifestsCommandResponse.cs  |   1 +
 .../GetManifestForFrameCommand.cs             |   1 +
 .../GetManifestForFrameCommandResponse.cs     |   1 +
 .../NetworkStateUpdatedEvent.cs               |   4 +-
 .../Protocol/iOS/CSS/AddRuleCommand.cs        |   1 +
 .../iOS/CSS/AddRuleCommandResponse.cs         |   1 +
 .../iOS/CSS/CSSComputedStyleProperty.cs       |   3 -
 .../Protocol/iOS/CSS/CSSPropertyInfo.cs       |   3 -
 .../iOS/CSS/CreateStyleSheetCommand.cs        |   1 +
 .../CSS/CreateStyleSheetCommandResponse.cs    |   1 +
 .../Protocol/iOS/CSS/DisableCommand.cs        |   1 +
 .../iOS/CSS/DisableCommandResponse.cs         |   1 +
 .../Protocol/iOS/CSS/EnableCommand.cs         |   1 +
 .../Protocol/iOS/CSS/EnableCommandResponse.cs |   1 +
 .../iOS/CSS/ForcePseudoStateCommand.cs        |   1 +
 .../CSS/ForcePseudoStateCommandResponse.cs    |   1 +
 .../iOS/CSS/GetAllStyleSheetsCommand.cs       |   1 +
 .../CSS/GetAllStyleSheetsCommandResponse.cs   |   1 +
 .../iOS/CSS/GetComputedStyleForNodeCommand.cs |   1 +
 .../GetComputedStyleForNodeCommandResponse.cs |   1 +
 .../iOS/CSS/GetInlineStylesForNodeCommand.cs  |   1 +
 .../GetInlineStylesForNodeCommandResponse.cs  |   1 +
 .../iOS/CSS/GetMatchedStylesForNodeCommand.cs |   1 +
 .../GetMatchedStylesForNodeCommandResponse.cs |   1 +
 .../iOS/CSS/GetNamedFlowCollectionCommand.cs  |   1 +
 .../GetNamedFlowCollectionCommandResponse.cs  |   1 +
 .../Protocol/iOS/CSS/GetStyleSheetCommand.cs  |   1 +
 .../iOS/CSS/GetStyleSheetCommandResponse.cs   |   1 +
 .../iOS/CSS/GetStyleSheetTextCommand.cs       |   1 +
 .../CSS/GetStyleSheetTextCommandResponse.cs   |   1 +
 .../CSS/GetSupportedCSSPropertiesCommand.cs   |   1 +
 ...etSupportedCSSPropertiesCommandResponse.cs |   1 +
 ...etSupportedSystemFontFamilyNamesCommand.cs |   1 +
 ...tedSystemFontFamilyNamesCommandResponse.cs |   1 +
 .../iOS/CSS/MediaQueryResultChangedEvent.cs   |   4 +-
 .../Protocol/iOS/CSS/NamedFlowCreatedEvent.cs |   4 +-
 .../Protocol/iOS/CSS/NamedFlowRemovedEvent.cs |   4 +-
 .../iOS/CSS/RegionOversetChangedEvent.cs      |   4 +-
 .../RegisteredNamedFlowContentElementEvent.cs |   4 +-
 .../iOS/CSS/SetRuleSelectorCommand.cs         |   1 +
 .../iOS/CSS/SetRuleSelectorCommandResponse.cs |   1 +
 .../iOS/CSS/SetStyleSheetTextCommand.cs       |   1 +
 .../CSS/SetStyleSheetTextCommandResponse.cs   |   1 +
 .../Protocol/iOS/CSS/SetStyleTextCommand.cs   |   1 +
 .../iOS/CSS/SetStyleTextCommandResponse.cs    |   1 +
 .../Protocol/iOS/CSS/ShorthandEntry.cs        |   3 -
 .../Protocol/iOS/CSS/StyleSheetAddedEvent.cs  |   4 +-
 .../iOS/CSS/StyleSheetChangedEvent.cs         |   4 +-
 .../iOS/CSS/StyleSheetRemovedEvent.cs         |   4 +-
 ...nregisteredNamedFlowContentElementEvent.cs |   4 +-
 .../iOS/Console/AddInspectedNodeCommand.cs    |   1 +
 .../AddInspectedNodeCommandResponse.cs        |   1 +
 .../iOS/Console/ClearMessagesCommand.cs       |   1 +
 .../Console/ClearMessagesCommandResponse.cs   |   1 +
 .../Protocol/iOS/Console/DisableCommand.cs    |   1 +
 .../iOS/Console/DisableCommandResponse.cs     |   1 +
 .../Protocol/iOS/Console/EnableCommand.cs     |   1 +
 .../iOS/Console/EnableCommandResponse.cs      |   1 +
 .../Protocol/iOS/Console/MessageAddedEvent.cs |   4 +-
 .../Console/MessageRepeatCountUpdatedEvent.cs |   4 +-
 .../iOS/Console/MessagesClearedEvent.cs       |   4 +-
 .../Console/SetMonitoringXHREnabledCommand.cs |   1 +
 .../SetMonitoringXHREnabledCommandResponse.cs |   1 +
 .../iOS/DOM/AttributeModifiedEvent.cs         |   4 +-
 .../Protocol/iOS/DOM/AttributeRemovedEvent.cs |   4 +-
 .../iOS/DOM/CharacterDataModifiedEvent.cs     |   4 +-
 .../iOS/DOM/ChildNodeCountUpdatedEvent.cs     |   4 +-
 .../iOS/DOM/ChildNodeInsertedEvent.cs         |   4 +-
 .../Protocol/iOS/DOM/ChildNodeRemovedEvent.cs |   4 +-
 .../iOS/DOM/DiscardSearchResultsCommand.cs    |   1 +
 .../DiscardSearchResultsCommandResponse.cs    |   1 +
 .../Protocol/iOS/DOM/DocumentUpdatedEvent.cs  |   4 +-
 .../Protocol/iOS/DOM/FocusCommand.cs          |   1 +
 .../Protocol/iOS/DOM/FocusCommandResponse.cs  |   1 +
 ...etAccessibilityPropertiesForNodeCommand.cs |   1 +
 ...ibilityPropertiesForNodeCommandResponse.cs |   1 +
 .../Protocol/iOS/DOM/GetAttributesCommand.cs  |   1 +
 .../iOS/DOM/GetAttributesCommandResponse.cs   |   1 +
 .../Protocol/iOS/DOM/GetDocumentCommand.cs    |   1 +
 .../iOS/DOM/GetDocumentCommandResponse.cs     |   1 +
 .../DOM/GetEventListenersForNodeCommand.cs    |   1 +
 ...GetEventListenersForNodeCommandResponse.cs |   1 +
 .../Protocol/iOS/DOM/GetOuterHTMLCommand.cs   |   1 +
 .../iOS/DOM/GetOuterHTMLCommandResponse.cs    |   1 +
 .../iOS/DOM/GetSearchResultsCommand.cs        |   1 +
 .../DOM/GetSearchResultsCommandResponse.cs    |   1 +
 .../Protocol/iOS/DOM/HideHighlightCommand.cs  |   1 +
 .../iOS/DOM/HideHighlightCommandResponse.cs   |   1 +
 .../Protocol/iOS/DOM/HighlightFrameCommand.cs |   1 +
 .../iOS/DOM/HighlightFrameCommandResponse.cs  |   1 +
 .../Protocol/iOS/DOM/HighlightNodeCommand.cs  |   1 +
 .../iOS/DOM/HighlightNodeCommandResponse.cs   |   1 +
 .../Protocol/iOS/DOM/HighlightQuadCommand.cs  |   1 +
 .../iOS/DOM/HighlightQuadCommandResponse.cs   |   1 +
 .../Protocol/iOS/DOM/HighlightRectCommand.cs  |   1 +
 .../iOS/DOM/HighlightRectCommandResponse.cs   |   1 +
 .../iOS/DOM/HighlightSelectorCommand.cs       |   1 +
 .../DOM/HighlightSelectorCommandResponse.cs   |   1 +
 .../iOS/DOM/InlineStyleInvalidatedEvent.cs    |   4 +-
 .../iOS/DOM/MarkUndoableStateCommand.cs       |   1 +
 .../DOM/MarkUndoableStateCommandResponse.cs   |   1 +
 .../Protocol/iOS/DOM/MoveToCommand.cs         |   1 +
 .../Protocol/iOS/DOM/MoveToCommandResponse.cs |   1 +
 .../Protocol/iOS/DOM/PerformSearchCommand.cs  |   1 +
 .../iOS/DOM/PerformSearchCommandResponse.cs   |   1 +
 .../iOS/DOM/PseudoElementAddedEvent.cs        |   4 +-
 .../iOS/DOM/PseudoElementRemovedEvent.cs      |   4 +-
 .../PushNodeByBackendIdToFrontendCommand.cs   |   1 +
 ...odeByBackendIdToFrontendCommandResponse.cs |   1 +
 .../DOM/PushNodeByPathToFrontendCommand.cs    |   1 +
 ...PushNodeByPathToFrontendCommandResponse.cs |   1 +
 .../iOS/DOM/QuerySelectorAllCommand.cs        |   1 +
 .../DOM/QuerySelectorAllCommandResponse.cs    |   1 +
 .../Protocol/iOS/DOM/QuerySelectorCommand.cs  |   1 +
 .../iOS/DOM/QuerySelectorCommandResponse.cs   |   1 +
 .../Protocol/iOS/DOM/RedoCommand.cs           |   1 +
 .../Protocol/iOS/DOM/RedoCommandResponse.cs   |   1 +
 .../iOS/DOM/ReleaseBackendNodeIdsCommand.cs   |   1 +
 .../ReleaseBackendNodeIdsCommandResponse.cs   |   1 +
 .../iOS/DOM/RemoveAttributeCommand.cs         |   1 +
 .../iOS/DOM/RemoveAttributeCommandResponse.cs |   1 +
 .../Protocol/iOS/DOM/RemoveNodeCommand.cs     |   1 +
 .../iOS/DOM/RemoveNodeCommandResponse.cs      |   1 +
 .../iOS/DOM/RequestChildNodesCommand.cs       |   1 +
 .../DOM/RequestChildNodesCommandResponse.cs   |   1 +
 .../Protocol/iOS/DOM/RequestNodeCommand.cs    |   1 +
 .../iOS/DOM/RequestNodeCommandResponse.cs     |   1 +
 .../Protocol/iOS/DOM/ResolveNodeCommand.cs    |   1 +
 .../iOS/DOM/ResolveNodeCommandResponse.cs     |   1 +
 .../iOS/DOM/SetAttributeValueCommand.cs       |   1 +
 .../DOM/SetAttributeValueCommandResponse.cs   |   1 +
 .../iOS/DOM/SetAttributesAsTextCommand.cs     |   1 +
 .../DOM/SetAttributesAsTextCommandResponse.cs |   1 +
 .../Protocol/iOS/DOM/SetChildNodesEvent.cs    |   4 +-
 .../iOS/DOM/SetInspectModeEnabledCommand.cs   |   1 +
 .../SetInspectModeEnabledCommandResponse.cs   |   1 +
 .../Protocol/iOS/DOM/SetNodeNameCommand.cs    |   1 +
 .../iOS/DOM/SetNodeNameCommandResponse.cs     |   1 +
 .../Protocol/iOS/DOM/SetNodeValueCommand.cs   |   1 +
 .../iOS/DOM/SetNodeValueCommandResponse.cs    |   1 +
 .../Protocol/iOS/DOM/SetOuterHTMLCommand.cs   |   1 +
 .../iOS/DOM/SetOuterHTMLCommandResponse.cs    |   1 +
 .../Protocol/iOS/DOM/ShadowRootPoppedEvent.cs |   4 +-
 .../Protocol/iOS/DOM/ShadowRootPushedEvent.cs |   4 +-
 .../Protocol/iOS/DOM/UndoCommand.cs           |   1 +
 .../Protocol/iOS/DOM/UndoCommandResponse.cs   |   1 +
 .../DOMDebugger/RemoveDOMBreakpointCommand.cs |   1 +
 .../RemoveDOMBreakpointCommandResponse.cs     |   1 +
 .../RemoveEventListenerBreakpointCommand.cs   |   1 +
 ...eEventListenerBreakpointCommandResponse.cs |   1 +
 .../RemoveInstrumentationBreakpointCommand.cs |   1 +
 ...nstrumentationBreakpointCommandResponse.cs |   1 +
 .../DOMDebugger/RemoveXHRBreakpointCommand.cs |   1 +
 .../RemoveXHRBreakpointCommandResponse.cs     |   1 +
 .../DOMDebugger/SetDOMBreakpointCommand.cs    |   1 +
 .../SetDOMBreakpointCommandResponse.cs        |   1 +
 .../SetEventListenerBreakpointCommand.cs      |   1 +
 ...tEventListenerBreakpointCommandResponse.cs |   1 +
 .../SetInstrumentationBreakpointCommand.cs    |   1 +
 ...nstrumentationBreakpointCommandResponse.cs |   1 +
 .../DOMDebugger/SetXHRBreakpointCommand.cs    |   1 +
 .../SetXHRBreakpointCommandResponse.cs        |   1 +
 .../Protocol/iOS/DOMStorage/DisableCommand.cs |   1 +
 .../iOS/DOMStorage/DisableCommandResponse.cs  |   1 +
 .../DOMStorage/DomStorageItemAddedEvent.cs    |   4 +-
 .../DOMStorage/DomStorageItemRemovedEvent.cs  |   4 +-
 .../DOMStorage/DomStorageItemUpdatedEvent.cs  |   4 +-
 .../DOMStorage/DomStorageItemsClearedEvent.cs |   4 +-
 .../Protocol/iOS/DOMStorage/EnableCommand.cs  |   1 +
 .../iOS/DOMStorage/EnableCommandResponse.cs   |   1 +
 .../DOMStorage/GetDOMStorageItemsCommand.cs   |   1 +
 .../GetDOMStorageItemsCommandResponse.cs      |   1 +
 .../DOMStorage/RemoveDOMStorageItemCommand.cs |   1 +
 .../RemoveDOMStorageItemCommandResponse.cs    |   1 +
 .../DOMStorage/SetDOMStorageItemCommand.cs    |   1 +
 .../SetDOMStorageItemCommandResponse.cs       |   1 +
 .../Protocol/iOS/Database/AddDatabaseEvent.cs |   4 +-
 .../Protocol/iOS/Database/DisableCommand.cs   |   1 +
 .../iOS/Database/DisableCommandResponse.cs    |   1 +
 .../Protocol/iOS/Database/EnableCommand.cs    |   1 +
 .../iOS/Database/EnableCommandResponse.cs     |   1 +
 .../iOS/Database/ExecuteSQLCommand.cs         |   1 +
 .../iOS/Database/ExecuteSQLCommandResponse.cs |   1 +
 .../Database/GetDatabaseTableNamesCommand.cs  |   1 +
 .../GetDatabaseTableNamesCommandResponse.cs   |   1 +
 .../iOS/Debugger/BreakpointResolvedEvent.cs   |   4 +-
 .../iOS/Debugger/ContinueToLocationCommand.cs |   1 +
 .../ContinueToLocationCommandResponse.cs      |   1 +
 .../iOS/Debugger/DidSampleProbeEvent.cs       |   4 +-
 .../Protocol/iOS/Debugger/DisableCommand.cs   |   1 +
 .../iOS/Debugger/DisableCommandResponse.cs    |   1 +
 .../Protocol/iOS/Debugger/EnableCommand.cs    |   1 +
 .../iOS/Debugger/EnableCommandResponse.cs     |   1 +
 .../Debugger/EvaluateOnCallFrameCommand.cs    |   1 +
 .../EvaluateOnCallFrameCommandResponse.cs     |   1 +
 .../iOS/Debugger/GetFunctionDetailsCommand.cs |   1 +
 .../GetFunctionDetailsCommandResponse.cs      |   1 +
 .../iOS/Debugger/GetScriptSourceCommand.cs    |   1 +
 .../GetScriptSourceCommandResponse.cs         |   1 +
 .../iOS/Debugger/GlobalObjectClearedEvent.cs  |   4 +-
 .../Protocol/iOS/Debugger/PauseCommand.cs     |   1 +
 .../iOS/Debugger/PauseCommandResponse.cs      |   1 +
 .../Protocol/iOS/Debugger/PausedEvent.cs      |   4 +-
 .../PlayBreakpointActionSoundEvent.cs         |   4 +-
 .../iOS/Debugger/RemoveBreakpointCommand.cs   |   1 +
 .../RemoveBreakpointCommandResponse.cs        |   1 +
 .../Protocol/iOS/Debugger/ResumeCommand.cs    |   1 +
 .../iOS/Debugger/ResumeCommandResponse.cs     |   1 +
 .../Protocol/iOS/Debugger/ResumedEvent.cs     |   4 +-
 .../iOS/Debugger/ScriptFailedToParseEvent.cs  |   4 +-
 .../iOS/Debugger/ScriptParsedEvent.cs         |   4 +-
 .../iOS/Debugger/SearchInContentCommand.cs    |   1 +
 .../SearchInContentCommandResponse.cs         |   1 +
 .../iOS/Debugger/SetBreakpointByUrlCommand.cs |   1 +
 .../SetBreakpointByUrlCommandResponse.cs      |   1 +
 .../iOS/Debugger/SetBreakpointCommand.cs      |   1 +
 .../Debugger/SetBreakpointCommandResponse.cs  |   1 +
 .../Debugger/SetBreakpointsActiveCommand.cs   |   1 +
 .../SetBreakpointsActiveCommandResponse.cs    |   1 +
 .../iOS/Debugger/SetOverlayMessageCommand.cs  |   1 +
 .../SetOverlayMessageCommandResponse.cs       |   1 +
 .../Debugger/SetPauseOnExceptionsCommand.cs   |   1 +
 .../SetPauseOnExceptionsCommandResponse.cs    |   1 +
 .../Protocol/iOS/Debugger/StepIntoCommand.cs  |   1 +
 .../iOS/Debugger/StepIntoCommandResponse.cs   |   1 +
 .../Protocol/iOS/Debugger/StepOutCommand.cs   |   1 +
 .../iOS/Debugger/StepOutCommandResponse.cs    |   1 +
 .../Protocol/iOS/Debugger/StepOverCommand.cs  |   1 +
 .../iOS/Debugger/StepOverCommandResponse.cs   |   1 +
 .../iOS/IndexedDB/ClearObjectStoreCommand.cs  |   1 +
 .../ClearObjectStoreCommandResponse.cs        |   1 +
 .../Protocol/iOS/IndexedDB/DisableCommand.cs  |   1 +
 .../iOS/IndexedDB/DisableCommandResponse.cs   |   1 +
 .../Protocol/iOS/IndexedDB/EnableCommand.cs   |   1 +
 .../iOS/IndexedDB/EnableCommandResponse.cs    |   1 +
 .../iOS/IndexedDB/RequestDataCommand.cs       |   1 +
 .../IndexedDB/RequestDataCommandResponse.cs   |   1 +
 .../iOS/IndexedDB/RequestDatabaseCommand.cs   |   1 +
 .../RequestDatabaseCommandResponse.cs         |   1 +
 .../IndexedDB/RequestDatabaseNamesCommand.cs  |   1 +
 .../RequestDatabaseNamesCommandResponse.cs    |   1 +
 .../Inspector/ActivateExtraDomainsEvent.cs    |   4 +-
 .../Protocol/iOS/Inspector/DetachedEvent.cs   |   4 +-
 .../Protocol/iOS/Inspector/DisableCommand.cs  |   1 +
 .../iOS/Inspector/DisableCommandResponse.cs   |   1 +
 .../Protocol/iOS/Inspector/EnableCommand.cs   |   1 +
 .../iOS/Inspector/EnableCommandResponse.cs    |   1 +
 .../EvaluateForTestInFrontendEvent.cs         |   4 +-
 .../iOS/Inspector/InitializedCommand.cs       |   1 +
 .../Inspector/InitializedCommandResponse.cs   |   1 +
 .../Protocol/iOS/Inspector/InspectEvent.cs    |   4 +-
 .../iOS/Inspector/TargetCrashedEvent.cs       |   4 +-
 .../Protocol/iOS/LayerTree/DisableCommand.cs  |   1 +
 .../iOS/LayerTree/DisableCommandResponse.cs   |   1 +
 .../Protocol/iOS/LayerTree/EnableCommand.cs   |   1 +
 .../iOS/LayerTree/EnableCommandResponse.cs    |   1 +
 .../iOS/LayerTree/LayerTreeDidChangeEvent.cs  |   4 +-
 .../iOS/LayerTree/LayersForNodeCommand.cs     |   1 +
 .../LayerTree/LayersForNodeCommandResponse.cs |   1 +
 .../ReasonsForCompositingLayerCommand.cs      |   1 +
 ...asonsForCompositingLayerCommandResponse.cs |   1 +
 .../Network/CanClearBrowserCacheCommand.cs    |   1 +
 .../CanClearBrowserCacheCommandResponse.cs    |   1 +
 .../Network/CanClearBrowserCookiesCommand.cs  |   1 +
 .../CanClearBrowserCookiesCommandResponse.cs  |   1 +
 .../iOS/Network/ClearBrowserCacheCommand.cs   |   1 +
 .../ClearBrowserCacheCommandResponse.cs       |   1 +
 .../iOS/Network/ClearBrowserCookiesCommand.cs |   1 +
 .../ClearBrowserCookiesCommandResponse.cs     |   1 +
 .../Protocol/iOS/Network/DataReceivedEvent.cs |   4 +-
 .../Protocol/iOS/Network/DisableCommand.cs    |   1 +
 .../iOS/Network/DisableCommandResponse.cs     |   1 +
 .../Protocol/iOS/Network/EnableCommand.cs     |   1 +
 .../iOS/Network/EnableCommandResponse.cs      |   1 +
 .../iOS/Network/GetResponseBodyCommand.cs     |   1 +
 .../Network/GetResponseBodyCommandResponse.cs |   1 +
 .../iOS/Network/LoadResourceCommand.cs        |   1 +
 .../Network/LoadResourceCommandResponse.cs    |   1 +
 .../iOS/Network/LoadingFailedEvent.cs         |   4 +-
 .../iOS/Network/LoadingFinishedEvent.cs       |   4 +-
 .../Network/RequestServedFromCacheEvent.cs    |   4 +-
 .../RequestServedFromMemoryCacheEvent.cs      |   4 +-
 .../iOS/Network/RequestWillBeSentEvent.cs     |   4 +-
 .../iOS/Network/ResponseReceivedEvent.cs      |   4 +-
 .../iOS/Network/SetCacheDisabledCommand.cs    |   1 +
 .../SetCacheDisabledCommandResponse.cs        |   1 +
 .../iOS/Network/SetExtraHTTPHeadersCommand.cs |   1 +
 .../SetExtraHTTPHeadersCommandResponse.cs     |   1 +
 .../iOS/Network/WebSocketClosedEvent.cs       |   4 +-
 .../iOS/Network/WebSocketCreatedEvent.cs      |   4 +-
 .../iOS/Network/WebSocketFrameErrorEvent.cs   |   4 +-
 .../Network/WebSocketFrameReceivedEvent.cs    |   4 +-
 .../iOS/Network/WebSocketFrameSentEvent.cs    |   4 +-
 ...WebSocketHandshakeResponseReceivedEvent.cs |   4 +-
 .../WebSocketWillSendHandshakeRequestEvent.cs |   4 +-
 .../iOS/OverlayTypes/ContentFlowData.cs       |   3 -
 .../Protocol/iOS/OverlayTypes/Point.cs        |   3 -
 .../iOS/OverlayTypes/RegionFlowData.cs        |   3 -
 .../iOS/OverlayTypes/ShapeOutsideData.cs      |   3 -
 .../Protocol/iOS/OverlayTypes/Size.cs         |   3 -
 .../Page/AddScriptToEvaluateOnLoadCommand.cs  |   1 +
 ...ddScriptToEvaluateOnLoadCommandResponse.cs |   1 +
 .../Protocol/iOS/Page/ArchiveCommand.cs       |   1 +
 .../iOS/Page/ArchiveCommandResponse.cs        |   1 +
 .../Protocol/iOS/Page/DeleteCookieCommand.cs  |   1 +
 .../iOS/Page/DeleteCookieCommandResponse.cs   |   1 +
 .../Protocol/iOS/Page/DisableCommand.cs       |   1 +
 .../iOS/Page/DisableCommandResponse.cs        |   1 +
 .../iOS/Page/DomContentEventFiredEvent.cs     |   4 +-
 .../Protocol/iOS/Page/EnableCommand.cs        |   1 +
 .../iOS/Page/EnableCommandResponse.cs         |   1 +
 .../FrameClearedScheduledNavigationEvent.cs   |   4 +-
 .../Protocol/iOS/Page/FrameDetachedEvent.cs   |   4 +-
 .../Protocol/iOS/Page/FrameNavigatedEvent.cs  |   4 +-
 .../Protocol/iOS/Page/FrameResource.cs        |   3 -
 .../iOS/Page/FrameScheduledNavigationEvent.cs |   4 +-
 .../iOS/Page/FrameStartedLoadingEvent.cs      |   4 +-
 .../iOS/Page/FrameStoppedLoadingEvent.cs      |   4 +-
 .../GetCompositingBordersVisibleCommand.cs    |   1 +
 ...ompositingBordersVisibleCommandResponse.cs |   1 +
 .../Protocol/iOS/Page/GetCookiesCommand.cs    |   1 +
 .../iOS/Page/GetCookiesCommandResponse.cs     |   1 +
 .../iOS/Page/GetResourceContentCommand.cs     |   1 +
 .../Page/GetResourceContentCommandResponse.cs |   1 +
 .../iOS/Page/GetResourceTreeCommand.cs        |   1 +
 .../Page/GetResourceTreeCommandResponse.cs    |   1 +
 .../Page/GetScriptExecutionStatusCommand.cs   |   1 +
 ...GetScriptExecutionStatusCommandResponse.cs |   1 +
 .../iOS/Page/HandleJavaScriptDialogCommand.cs |   1 +
 .../HandleJavaScriptDialogCommandResponse.cs  |   1 +
 .../iOS/Page/JavascriptDialogClosedEvent.cs   |   4 +-
 .../iOS/Page/JavascriptDialogOpeningEvent.cs  |   4 +-
 .../Protocol/iOS/Page/LoadEventFiredEvent.cs  |   4 +-
 .../Protocol/iOS/Page/NavigateCommand.cs      |   1 +
 .../iOS/Page/NavigateCommandResponse.cs       |   1 +
 .../Protocol/iOS/Page/ReloadCommand.cs        |   1 +
 .../iOS/Page/ReloadCommandResponse.cs         |   1 +
 .../RemoveScriptToEvaluateOnLoadCommand.cs    |   1 +
 ...veScriptToEvaluateOnLoadCommandResponse.cs |   1 +
 .../Protocol/iOS/Page/ScriptsEnabledEvent.cs  |   4 +-
 .../iOS/Page/SearchInResourceCommand.cs       |   1 +
 .../Page/SearchInResourceCommandResponse.cs   |   1 +
 .../iOS/Page/SearchInResourcesCommand.cs      |   1 +
 .../Page/SearchInResourcesCommandResponse.cs  |   1 +
 .../SetCompositingBordersVisibleCommand.cs    |   1 +
 ...ompositingBordersVisibleCommandResponse.cs |   1 +
 .../iOS/Page/SetDocumentContentCommand.cs     |   1 +
 .../Page/SetDocumentContentCommandResponse.cs |   1 +
 .../iOS/Page/SetEmulatedMediaCommand.cs       |   1 +
 .../Page/SetEmulatedMediaCommandResponse.cs   |   1 +
 .../Page/SetScriptExecutionDisabledCommand.cs |   1 +
 ...tScriptExecutionDisabledCommandResponse.cs |   1 +
 .../iOS/Page/SetShowPaintRectsCommand.cs      |   1 +
 .../Page/SetShowPaintRectsCommandResponse.cs  |   1 +
 .../Page/SetTouchEmulationEnabledCommand.cs   |   1 +
 ...SetTouchEmulationEnabledCommandResponse.cs |   1 +
 .../Protocol/iOS/Page/SnapshotNodeCommand.cs  |   1 +
 .../iOS/Page/SnapshotNodeCommandResponse.cs   |   1 +
 .../Protocol/iOS/Page/SnapshotRectCommand.cs  |   1 +
 .../iOS/Page/SnapshotRectCommandResponse.cs   |   1 +
 .../iOS/Runtime/CallFunctionOnCommand.cs      |   1 +
 .../Runtime/CallFunctionOnCommandResponse.cs  |   1 +
 .../Protocol/iOS/Runtime/CollectionEntry.cs   |   3 -
 .../Protocol/iOS/Runtime/DisableCommand.cs    |   1 +
 .../iOS/Runtime/DisableCommandResponse.cs     |   1 +
 .../iOS/Runtime/DisableTypeProfilerCommand.cs |   1 +
 .../DisableTypeProfilerCommandResponse.cs     |   1 +
 .../Protocol/iOS/Runtime/EnableCommand.cs     |   1 +
 .../iOS/Runtime/EnableCommandResponse.cs      |   1 +
 .../iOS/Runtime/EnableTypeProfilerCommand.cs  |   1 +
 .../EnableTypeProfilerCommandResponse.cs      |   1 +
 .../Protocol/iOS/Runtime/EntryPreview.cs      |   3 -
 .../Protocol/iOS/Runtime/EvaluateCommand.cs   |   1 +
 .../iOS/Runtime/EvaluateCommandResponse.cs    |   1 +
 .../Runtime/ExecutionContextCreatedEvent.cs   |   4 +-
 .../iOS/Runtime/GetBasicBlocksCommand.cs      |   1 +
 .../Runtime/GetBasicBlocksCommandResponse.cs  |   1 +
 .../Runtime/GetCollectionEntriesCommand.cs    |   1 +
 .../GetCollectionEntriesCommandResponse.cs    |   1 +
 .../GetDisplayablePropertiesCommand.cs        |   1 +
 ...GetDisplayablePropertiesCommandResponse.cs |   1 +
 .../iOS/Runtime/GetPropertiesCommand.cs       |   1 +
 .../Runtime/GetPropertiesCommandResponse.cs   |   1 +
 ...untimeTypesForVariablesAtOffsetsCommand.cs |   1 +
 ...pesForVariablesAtOffsetsCommandResponse.cs |   1 +
 .../Protocol/iOS/Runtime/ParseCommand.cs      |   1 +
 .../iOS/Runtime/ParseCommandResponse.cs       |   1 +
 .../Protocol/iOS/Runtime/PropertyPreview.cs   |   3 -
 .../iOS/Runtime/ReleaseObjectCommand.cs       |   1 +
 .../Runtime/ReleaseObjectCommandResponse.cs   |   1 +
 .../iOS/Runtime/ReleaseObjectGroupCommand.cs  |   1 +
 .../ReleaseObjectGroupCommandResponse.cs      |   1 +
 .../Protocol/iOS/Runtime/RunCommand.cs        |   1 +
 .../iOS/Runtime/RunCommandResponse.cs         |   1 +
 .../Protocol/iOS/Runtime/SaveResultCommand.cs |   1 +
 .../iOS/Runtime/SaveResultCommandResponse.cs  |   1 +
 .../iOS/Runtime/StructureDescription.cs       |   3 -
 .../Protocol/iOS/Runtime/TypeSet.cs           |   3 -
 .../iOS/Timeline/EventRecordedEvent.cs        |   4 +-
 .../iOS/Timeline/RecordingStartedEvent.cs     |   4 +-
 .../iOS/Timeline/RecordingStoppedEvent.cs     |   4 +-
 .../Protocol/iOS/Timeline/StartCommand.cs     |   1 +
 .../iOS/Timeline/StartCommandResponse.cs      |   1 +
 .../Protocol/iOS/Timeline/StopCommand.cs      |   1 +
 .../iOS/Timeline/StopCommandResponse.cs       |   1 +
 .../iOS/Worker/CanInspectWorkersCommand.cs    |   1 +
 .../CanInspectWorkersCommandResponse.cs       |   1 +
 .../iOS/Worker/ConnectToWorkerCommand.cs      |   1 +
 .../Worker/ConnectToWorkerCommandResponse.cs  |   1 +
 .../Protocol/iOS/Worker/DisableCommand.cs     |   1 +
 .../iOS/Worker/DisableCommandResponse.cs      |   1 +
 .../iOS/Worker/DisconnectFromWorkerCommand.cs |   1 +
 .../DisconnectFromWorkerCommandResponse.cs    |   1 +
 .../iOS/Worker/DisconnectedFromWorkerEvent.cs |   4 +-
 .../Worker/DispatchMessageFromWorkerEvent.cs  |   4 +-
 .../Protocol/iOS/Worker/EnableCommand.cs      |   1 +
 .../iOS/Worker/EnableCommandResponse.cs       |   1 +
 .../iOS/Worker/SendMessageToWorkerCommand.cs  |   1 +
 .../SendMessageToWorkerCommandResponse.cs     |   1 +
 .../Worker/SetAutoconnectToWorkersCommand.cs  |   1 +
 .../SetAutoconnectToWorkersCommandResponse.cs |   1 +
 .../Protocol/iOS/Worker/WorkerCreatedEvent.cs |   4 +-
 .../iOS/Worker/WorkerTerminatedEvent.cs       |   4 +-
 source/ProtocolGenerator/Command.cs           |   7 +
 source/ProtocolGenerator/Program.cs           |  74 +-
 source/ProtocolGenerator/ProtocolItem.cs      |   1 -
 .../ProtocolGenerator/browser_protocol.json   | 864 +++++++++++++-----
 source/ProtocolGenerator/js_protocol.json     |  47 +-
 source/Sample/Program.cs                      |  13 +-
 1291 files changed, 4289 insertions(+), 921 deletions(-)
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Audits/GetEncodedResponseCommand.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Audits/GetEncodedResponseCommandResponse.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Browser/GetVersionCommand.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Browser/GetVersionCommandResponse.cs
 delete mode 100644 source/ChromeDevTools/Protocol/Chrome/CSS/GetLayoutTreeAndStylesCommand.cs
 delete mode 100644 source/ChromeDevTools/Protocol/Chrome/CSS/GetLayoutTreeAndStylesCommandResponse.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/CacheStorage/CachedResponse.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/CacheStorage/Header.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/CacheStorage/RequestCachedResponseCommand.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/CacheStorage/RequestCachedResponseCommandResponse.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/DOM/DescribeNodeCommand.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/DOM/DescribeNodeCommandResponse.cs
 rename source/ChromeDevTools/Protocol/Chrome/{CSS => DOMSnapshot}/ComputedStyle.cs (62%)
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/DOMSnapshot/DOMNode.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/DOMSnapshot/GetSnapshotCommand.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/DOMSnapshot/GetSnapshotCommandResponse.cs
 rename source/ChromeDevTools/Protocol/Chrome/{CSS => DOMSnapshot}/LayoutTreeNode.cs (60%)
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/DOMSnapshot/NameValue.cs
 delete mode 100644 source/ChromeDevTools/Protocol/Chrome/Emulation/ForceViewportCommand.cs
 delete mode 100644 source/ChromeDevTools/Protocol/Chrome/Emulation/ForceViewportCommandResponse.cs
 delete mode 100644 source/ChromeDevTools/Protocol/Chrome/Emulation/ResetViewportCommand.cs
 delete mode 100644 source/ChromeDevTools/Protocol/Chrome/Emulation/ResetViewportCommandResponse.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Emulation/SetEmitTouchEventsForMouseCommand.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Emulation/SetEmitTouchEventsForMouseCommandResponse.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Emulation/VirtualTimePausedEvent.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/IO/ResolveBlobCommand.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/IO/ResolveBlobCommandResponse.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/LayerTree/StickyPositionConstraint.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Memory/PrepareForLeakDetectionCommand.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Memory/PrepareForLeakDetectionCommandResponse.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Network/AuthChallenge.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Network/AuthChallengeResponse.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Network/ContinueInterceptedRequestCommand.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Network/ContinueInterceptedRequestCommandResponse.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Network/CookieParam.cs
 delete mode 100644 source/ChromeDevTools/Protocol/Chrome/Network/DeleteCookieCommand.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Network/DeleteCookiesCommand.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Network/DeleteCookiesCommandResponse.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Network/ErrorReason.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Network/RequestInterceptedEvent.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Network/SetCookiesCommand.cs
 rename source/ChromeDevTools/Protocol/Chrome/Network/{DeleteCookieCommandResponse.cs => SetCookiesCommandResponse.cs} (57%)
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Network/SetRequestInterceptionEnabledCommand.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Network/SetRequestInterceptionEnabledCommandResponse.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Overlay/ScreenshotRequestedEvent.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Page/AddScriptToEvaluateOnNewDocumentCommand.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Page/AddScriptToEvaluateOnNewDocumentCommandResponse.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Page/BringToFrontCommand.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Page/BringToFrontCommandResponse.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Page/LifecycleEventEvent.cs
 delete mode 100644 source/ChromeDevTools/Protocol/Chrome/Page/NavigationRequestedEvent.cs
 delete mode 100644 source/ChromeDevTools/Protocol/Chrome/Page/ProcessNavigationCommand.cs
 delete mode 100644 source/ChromeDevTools/Protocol/Chrome/Page/ProcessNavigationCommandResponse.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Page/RemoveScriptToEvaluateOnNewDocumentCommand.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Page/RemoveScriptToEvaluateOnNewDocumentCommandResponse.cs
 rename source/ChromeDevTools/Protocol/Chrome/Page/{SetControlNavigationsCommand.cs => SetAdBlockingEnabledCommand.cs} (50%)
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Page/SetAdBlockingEnabledCommandResponse.cs
 delete mode 100644 source/ChromeDevTools/Protocol/Chrome/Page/SetControlNavigationsCommandResponse.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Page/SetDownloadBehaviorCommand.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Page/SetDownloadBehaviorCommandResponse.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Page/Viewport.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Performance/DisableCommand.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Performance/DisableCommandResponse.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Performance/EnableCommand.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Performance/EnableCommandResponse.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Performance/GetMetricsCommand.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Performance/GetMetricsCommandResponse.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Performance/Metric.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Performance/MetricsEvent.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Runtime/QueryObjectsCommand.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Runtime/QueryObjectsCommandResponse.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Security/MixedContentType.cs
 delete mode 100644 source/ChromeDevTools/Protocol/Chrome/Security/ShowCertificateViewerCommand.cs
 delete mode 100644 source/ChromeDevTools/Protocol/Chrome/Security/ShowCertificateViewerCommandResponse.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Storage/CacheStorageContentUpdatedEvent.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Storage/CacheStorageListUpdatedEvent.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Storage/GetUsageAndQuotaCommand.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Storage/GetUsageAndQuotaCommandResponse.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Storage/TrackCacheStorageForOriginCommand.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Storage/TrackCacheStorageForOriginCommandResponse.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Storage/UntrackCacheStorageForOriginCommand.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Storage/UntrackCacheStorageForOriginCommandResponse.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Storage/UsageForType.cs
 create mode 100644 source/ChromeDevTools/Protocol/Chrome/Target/TargetInfoChangedEvent.cs

diff --git a/source/ChromeDevTools/Protocol/Chrome/Accessibility/AXGlobalStates.cs b/source/ChromeDevTools/Protocol/Chrome/Accessibility/AXGlobalStates.cs
index bd022a4..81af264 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Accessibility/AXGlobalStates.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Accessibility/AXGlobalStates.cs
@@ -11,6 +11,7 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Accessibility{
 	[JsonConverter(typeof(StringEnumConverter))]
 	public enum AXGlobalStates
 	{
+			Busy,
 			Disabled,
 			Hidden,
 			HiddenRoot,
diff --git a/source/ChromeDevTools/Protocol/Chrome/Accessibility/AXLiveRegionAttributes.cs b/source/ChromeDevTools/Protocol/Chrome/Accessibility/AXLiveRegionAttributes.cs
index b14d9e6..b891a4f 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Accessibility/AXLiveRegionAttributes.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Accessibility/AXLiveRegionAttributes.cs
@@ -14,7 +14,6 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Accessibility{
 			Live,
 			Atomic,
 			Relevant,
-			Busy,
 			Root,
 	}
 }
diff --git a/source/ChromeDevTools/Protocol/Chrome/Accessibility/AXProperty.cs b/source/ChromeDevTools/Protocol/Chrome/Accessibility/AXProperty.cs
index 0969ac0..a7147e5 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Accessibility/AXProperty.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Accessibility/AXProperty.cs
@@ -4,9 +4,6 @@ using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Accessibility
 {
-	/// <summary>
-	/// 
-	/// </summary>
 	[SupportedBy("Chrome")]
 	public class AXProperty
 	{
diff --git a/source/ChromeDevTools/Protocol/Chrome/Accessibility/AXRelatedNode.cs b/source/ChromeDevTools/Protocol/Chrome/Accessibility/AXRelatedNode.cs
index 986ccbd..de4dc8f 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Accessibility/AXRelatedNode.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Accessibility/AXRelatedNode.cs
@@ -4,9 +4,6 @@ using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Accessibility
 {
-	/// <summary>
-	/// 
-	/// </summary>
 	[SupportedBy("Chrome")]
 	public class AXRelatedNode
 	{
diff --git a/source/ChromeDevTools/Protocol/Chrome/Accessibility/GetPartialAXTreeCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Accessibility/GetPartialAXTreeCommand.cs
index 9e97966..f189a8a 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Accessibility/GetPartialAXTreeCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Accessibility/GetPartialAXTreeCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Accessibility
diff --git a/source/ChromeDevTools/Protocol/Chrome/Accessibility/GetPartialAXTreeCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Accessibility/GetPartialAXTreeCommandResponse.cs
index 8c3c2dd..a3783ad 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Accessibility/GetPartialAXTreeCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Accessibility/GetPartialAXTreeCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Accessibility
diff --git a/source/ChromeDevTools/Protocol/Chrome/Animation/AnimationCanceledEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Animation/AnimationCanceledEvent.cs
index b87737b..a8307a2 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Animation/AnimationCanceledEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Animation/AnimationCanceledEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Animation
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Animation/AnimationCreatedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Animation/AnimationCreatedEvent.cs
index dda0e61..d48b45b 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Animation/AnimationCreatedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Animation/AnimationCreatedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Animation
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Animation/AnimationStartedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Animation/AnimationStartedEvent.cs
index 293a9bf..bb4d52d 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Animation/AnimationStartedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Animation/AnimationStartedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Animation
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Animation/DisableCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Animation/DisableCommand.cs
index 1a6fbdb..200f635 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Animation/DisableCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Animation/DisableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Animation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Animation/DisableCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Animation/DisableCommandResponse.cs
index d219dae..d0461ef 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Animation/DisableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Animation/DisableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Animation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Animation/EnableCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Animation/EnableCommand.cs
index a1b2b4e..8d5eefc 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Animation/EnableCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Animation/EnableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Animation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Animation/EnableCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Animation/EnableCommandResponse.cs
index c332fb6..12bbaed 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Animation/EnableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Animation/EnableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Animation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Animation/GetCurrentTimeCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Animation/GetCurrentTimeCommand.cs
index 06c868f..1fe4eac 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Animation/GetCurrentTimeCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Animation/GetCurrentTimeCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Animation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Animation/GetCurrentTimeCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Animation/GetCurrentTimeCommandResponse.cs
index 9b89553..d8f8280 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Animation/GetCurrentTimeCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Animation/GetCurrentTimeCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Animation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Animation/GetPlaybackRateCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Animation/GetPlaybackRateCommand.cs
index 39db814..bf6af32 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Animation/GetPlaybackRateCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Animation/GetPlaybackRateCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Animation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Animation/GetPlaybackRateCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Animation/GetPlaybackRateCommandResponse.cs
index f106c24..787f4a3 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Animation/GetPlaybackRateCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Animation/GetPlaybackRateCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Animation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Animation/ReleaseAnimationsCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Animation/ReleaseAnimationsCommand.cs
index 0e0bd6d..8791cd9 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Animation/ReleaseAnimationsCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Animation/ReleaseAnimationsCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Animation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Animation/ReleaseAnimationsCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Animation/ReleaseAnimationsCommandResponse.cs
index 8b52f71..5e9f2cf 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Animation/ReleaseAnimationsCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Animation/ReleaseAnimationsCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Animation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Animation/ResolveAnimationCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Animation/ResolveAnimationCommand.cs
index 25a0cee..e041532 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Animation/ResolveAnimationCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Animation/ResolveAnimationCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Animation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Animation/ResolveAnimationCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Animation/ResolveAnimationCommandResponse.cs
index 418c601..c92bc49 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Animation/ResolveAnimationCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Animation/ResolveAnimationCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Animation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Animation/SeekAnimationsCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Animation/SeekAnimationsCommand.cs
index adff95b..6e14fa0 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Animation/SeekAnimationsCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Animation/SeekAnimationsCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Animation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Animation/SeekAnimationsCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Animation/SeekAnimationsCommandResponse.cs
index 3e8b726..09f85e5 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Animation/SeekAnimationsCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Animation/SeekAnimationsCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Animation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Animation/SetPausedCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Animation/SetPausedCommand.cs
index 53c44d9..d5ce465 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Animation/SetPausedCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Animation/SetPausedCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Animation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Animation/SetPausedCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Animation/SetPausedCommandResponse.cs
index 7c2f673..16b432d 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Animation/SetPausedCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Animation/SetPausedCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Animation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Animation/SetPlaybackRateCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Animation/SetPlaybackRateCommand.cs
index 4aa7c4a..875b562 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Animation/SetPlaybackRateCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Animation/SetPlaybackRateCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Animation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Animation/SetPlaybackRateCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Animation/SetPlaybackRateCommandResponse.cs
index 83f366a..f4d5bb8 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Animation/SetPlaybackRateCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Animation/SetPlaybackRateCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Animation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Animation/SetTimingCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Animation/SetTimingCommand.cs
index 7ee3e5a..744fb6f 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Animation/SetTimingCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Animation/SetTimingCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Animation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Animation/SetTimingCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Animation/SetTimingCommandResponse.cs
index 0adbe3a..11b1a89 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Animation/SetTimingCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Animation/SetTimingCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Animation
diff --git a/source/ChromeDevTools/Protocol/Chrome/ApplicationCache/ApplicationCacheStatusUpdatedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/ApplicationCache/ApplicationCacheStatusUpdatedEvent.cs
index 391babb..26ee67d 100644
--- a/source/ChromeDevTools/Protocol/Chrome/ApplicationCache/ApplicationCacheStatusUpdatedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/ApplicationCache/ApplicationCacheStatusUpdatedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.ApplicationCache
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/ApplicationCache/EnableCommand.cs b/source/ChromeDevTools/Protocol/Chrome/ApplicationCache/EnableCommand.cs
index fe564db..d742cde 100644
--- a/source/ChromeDevTools/Protocol/Chrome/ApplicationCache/EnableCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/ApplicationCache/EnableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.ApplicationCache
diff --git a/source/ChromeDevTools/Protocol/Chrome/ApplicationCache/EnableCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/ApplicationCache/EnableCommandResponse.cs
index d83eecc..758be06 100644
--- a/source/ChromeDevTools/Protocol/Chrome/ApplicationCache/EnableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/ApplicationCache/EnableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.ApplicationCache
diff --git a/source/ChromeDevTools/Protocol/Chrome/ApplicationCache/GetApplicationCacheForFrameCommand.cs b/source/ChromeDevTools/Protocol/Chrome/ApplicationCache/GetApplicationCacheForFrameCommand.cs
index 4dfb871..6f76a98 100644
--- a/source/ChromeDevTools/Protocol/Chrome/ApplicationCache/GetApplicationCacheForFrameCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/ApplicationCache/GetApplicationCacheForFrameCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.ApplicationCache
diff --git a/source/ChromeDevTools/Protocol/Chrome/ApplicationCache/GetApplicationCacheForFrameCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/ApplicationCache/GetApplicationCacheForFrameCommandResponse.cs
index ae1f553..12d8a17 100644
--- a/source/ChromeDevTools/Protocol/Chrome/ApplicationCache/GetApplicationCacheForFrameCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/ApplicationCache/GetApplicationCacheForFrameCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.ApplicationCache
diff --git a/source/ChromeDevTools/Protocol/Chrome/ApplicationCache/GetFramesWithManifestsCommand.cs b/source/ChromeDevTools/Protocol/Chrome/ApplicationCache/GetFramesWithManifestsCommand.cs
index 2d766a5..21ef4d7 100644
--- a/source/ChromeDevTools/Protocol/Chrome/ApplicationCache/GetFramesWithManifestsCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/ApplicationCache/GetFramesWithManifestsCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.ApplicationCache
diff --git a/source/ChromeDevTools/Protocol/Chrome/ApplicationCache/GetFramesWithManifestsCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/ApplicationCache/GetFramesWithManifestsCommandResponse.cs
index f189984..8509599 100644
--- a/source/ChromeDevTools/Protocol/Chrome/ApplicationCache/GetFramesWithManifestsCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/ApplicationCache/GetFramesWithManifestsCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.ApplicationCache
diff --git a/source/ChromeDevTools/Protocol/Chrome/ApplicationCache/GetManifestForFrameCommand.cs b/source/ChromeDevTools/Protocol/Chrome/ApplicationCache/GetManifestForFrameCommand.cs
index 9c83755..9a36d15 100644
--- a/source/ChromeDevTools/Protocol/Chrome/ApplicationCache/GetManifestForFrameCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/ApplicationCache/GetManifestForFrameCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.ApplicationCache
diff --git a/source/ChromeDevTools/Protocol/Chrome/ApplicationCache/GetManifestForFrameCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/ApplicationCache/GetManifestForFrameCommandResponse.cs
index 8e2fed3..b2ffd5e 100644
--- a/source/ChromeDevTools/Protocol/Chrome/ApplicationCache/GetManifestForFrameCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/ApplicationCache/GetManifestForFrameCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.ApplicationCache
diff --git a/source/ChromeDevTools/Protocol/Chrome/ApplicationCache/NetworkStateUpdatedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/ApplicationCache/NetworkStateUpdatedEvent.cs
index 1d21a4b..4f22552 100644
--- a/source/ChromeDevTools/Protocol/Chrome/ApplicationCache/NetworkStateUpdatedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/ApplicationCache/NetworkStateUpdatedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.ApplicationCache
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Audits/GetEncodedResponseCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Audits/GetEncodedResponseCommand.cs
new file mode 100644
index 0000000..511b452
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Audits/GetEncodedResponseCommand.cs
@@ -0,0 +1,34 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Audits
+{
+	/// <summary>
+	/// Returns the response body and size if it were re-encoded with the specified settings. Only applies to images.
+	/// </summary>
+	[Command(ProtocolName.Audits.GetEncodedResponse)]
+	[SupportedBy("Chrome")]
+	public class GetEncodedResponseCommand: ICommand<GetEncodedResponseCommandResponse>
+	{
+		/// <summary>
+		/// Gets or sets Identifier of the network request to get content for.
+		/// </summary>
+		public string RequestId { get; set; }
+		/// <summary>
+		/// Gets or sets The encoding to use.
+		/// </summary>
+		public string Encoding { get; set; }
+		/// <summary>
+		/// Gets or sets The quality of the encoding (0-1). (defaults to 1)
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public double Quality { get; set; }
+		/// <summary>
+		/// Gets or sets Whether to only return the size information (defaults to false).
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public bool? SizeOnly { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Audits/GetEncodedResponseCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Audits/GetEncodedResponseCommandResponse.cs
new file mode 100644
index 0000000..e4a6383
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Audits/GetEncodedResponseCommandResponse.cs
@@ -0,0 +1,29 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Audits
+{
+	/// <summary>
+	/// Returns the response body and size if it were re-encoded with the specified settings. Only applies to images.
+	/// </summary>
+	[CommandResponse(ProtocolName.Audits.GetEncodedResponse)]
+	[SupportedBy("Chrome")]
+	public class GetEncodedResponseCommandResponse
+	{
+		/// <summary>
+		/// Gets or sets The encoded body as a base64 string. Omitted if sizeOnly is true.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string Body { get; set; }
+		/// <summary>
+		/// Gets or sets Size before re-encoding.
+		/// </summary>
+		public long OriginalSize { get; set; }
+		/// <summary>
+		/// Gets or sets Size after re-encoding.
+		/// </summary>
+		public long EncodedSize { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Browser/GetVersionCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Browser/GetVersionCommand.cs
new file mode 100644
index 0000000..d8b604a
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Browser/GetVersionCommand.cs
@@ -0,0 +1,16 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Browser
+{
+	/// <summary>
+	/// Returns version information.
+	/// </summary>
+	[Command(ProtocolName.Browser.GetVersion)]
+	[SupportedBy("Chrome")]
+	public class GetVersionCommand: ICommand<GetVersionCommandResponse>
+	{
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Browser/GetVersionCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Browser/GetVersionCommandResponse.cs
new file mode 100644
index 0000000..4008724
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Browser/GetVersionCommandResponse.cs
@@ -0,0 +1,36 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Browser
+{
+	/// <summary>
+	/// Returns version information.
+	/// </summary>
+	[CommandResponse(ProtocolName.Browser.GetVersion)]
+	[SupportedBy("Chrome")]
+	public class GetVersionCommandResponse
+	{
+		/// <summary>
+		/// Gets or sets Protocol version.
+		/// </summary>
+		public string ProtocolVersion { get; set; }
+		/// <summary>
+		/// Gets or sets Product name.
+		/// </summary>
+		public string Product { get; set; }
+		/// <summary>
+		/// Gets or sets Product revision.
+		/// </summary>
+		public string Revision { get; set; }
+		/// <summary>
+		/// Gets or sets User-Agent.
+		/// </summary>
+		public string UserAgent { get; set; }
+		/// <summary>
+		/// Gets or sets V8 version.
+		/// </summary>
+		public string JsVersion { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Browser/GetWindowBoundsCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Browser/GetWindowBoundsCommand.cs
index baefafe..eee6b43 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Browser/GetWindowBoundsCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Browser/GetWindowBoundsCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Browser
diff --git a/source/ChromeDevTools/Protocol/Chrome/Browser/GetWindowBoundsCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Browser/GetWindowBoundsCommandResponse.cs
index c7c028b..41f6ae6 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Browser/GetWindowBoundsCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Browser/GetWindowBoundsCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Browser
diff --git a/source/ChromeDevTools/Protocol/Chrome/Browser/GetWindowForTargetCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Browser/GetWindowForTargetCommand.cs
index cf8bd76..6792d66 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Browser/GetWindowForTargetCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Browser/GetWindowForTargetCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Browser
diff --git a/source/ChromeDevTools/Protocol/Chrome/Browser/GetWindowForTargetCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Browser/GetWindowForTargetCommandResponse.cs
index 3c50de8..44bd1bd 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Browser/GetWindowForTargetCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Browser/GetWindowForTargetCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Browser
diff --git a/source/ChromeDevTools/Protocol/Chrome/Browser/SetWindowBoundsCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Browser/SetWindowBoundsCommand.cs
index f1b8829..fc2b5e3 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Browser/SetWindowBoundsCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Browser/SetWindowBoundsCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Browser
diff --git a/source/ChromeDevTools/Protocol/Chrome/Browser/SetWindowBoundsCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Browser/SetWindowBoundsCommandResponse.cs
index 20e1c12..b843505 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Browser/SetWindowBoundsCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Browser/SetWindowBoundsCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Browser
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/AddRuleCommand.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/AddRuleCommand.cs
index b4cc84b..1c02cad 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/AddRuleCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/AddRuleCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/AddRuleCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/AddRuleCommandResponse.cs
index 9a08e66..b8b02a8 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/AddRuleCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/AddRuleCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/CSSComputedStyleProperty.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/CSSComputedStyleProperty.cs
index f911d72..03e42d3 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/CSSComputedStyleProperty.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/CSSComputedStyleProperty.cs
@@ -4,9 +4,6 @@ using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
 {
-	/// <summary>
-	/// 
-	/// </summary>
 	[SupportedBy("Chrome")]
 	public class CSSComputedStyleProperty
 	{
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/CollectClassNamesCommand.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/CollectClassNamesCommand.cs
index da408ec..6390aec 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/CollectClassNamesCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/CollectClassNamesCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/CollectClassNamesCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/CollectClassNamesCommandResponse.cs
index 4130459..3a64716 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/CollectClassNamesCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/CollectClassNamesCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/CreateStyleSheetCommand.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/CreateStyleSheetCommand.cs
index 30e8b01..da30e01 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/CreateStyleSheetCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/CreateStyleSheetCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/CreateStyleSheetCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/CreateStyleSheetCommandResponse.cs
index 91b03d3..17a3fdf 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/CreateStyleSheetCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/CreateStyleSheetCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/DisableCommand.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/DisableCommand.cs
index 6e8fb95..860ae4c 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/DisableCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/DisableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/DisableCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/DisableCommandResponse.cs
index fd03457..2808e13 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/DisableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/DisableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/EnableCommand.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/EnableCommand.cs
index 73c7a75..8772780 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/EnableCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/EnableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/EnableCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/EnableCommandResponse.cs
index 21be53b..a910017 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/EnableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/EnableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/FontsUpdatedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/FontsUpdatedEvent.cs
index cf9505a..c3c9570 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/FontsUpdatedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/FontsUpdatedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/ForcePseudoStateCommand.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/ForcePseudoStateCommand.cs
index cd3f05f..8bb17b9 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/ForcePseudoStateCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/ForcePseudoStateCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/ForcePseudoStateCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/ForcePseudoStateCommandResponse.cs
index 9b6d5e0..d312830 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/ForcePseudoStateCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/ForcePseudoStateCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/GetBackgroundColorsCommand.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/GetBackgroundColorsCommand.cs
index d04e602..7cc2601 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/GetBackgroundColorsCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/GetBackgroundColorsCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/GetBackgroundColorsCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/GetBackgroundColorsCommandResponse.cs
index acae413..78788a3 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/GetBackgroundColorsCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/GetBackgroundColorsCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
@@ -13,5 +14,20 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
 		/// </summary>
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
 		public string[] BackgroundColors { get; set; }
+		/// <summary>
+		/// Gets or sets The computed font size for this node, as a CSS computed value string (e.g. '12px').
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string ComputedFontSize { get; set; }
+		/// <summary>
+		/// Gets or sets The computed font weight for this node, as a CSS computed value string (e.g. 'normal' or '100').
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string ComputedFontWeight { get; set; }
+		/// <summary>
+		/// Gets or sets The computed font size for the document body, as a computed CSS value string (e.g. '16px').
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string ComputedBodyFontSize { get; set; }
 	}
 }
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/GetComputedStyleForNodeCommand.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/GetComputedStyleForNodeCommand.cs
index e303d90..d6ca3fd 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/GetComputedStyleForNodeCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/GetComputedStyleForNodeCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/GetComputedStyleForNodeCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/GetComputedStyleForNodeCommandResponse.cs
index e9dbb3d..b7c8df9 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/GetComputedStyleForNodeCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/GetComputedStyleForNodeCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/GetInlineStylesForNodeCommand.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/GetInlineStylesForNodeCommand.cs
index c31633e..811d6f6 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/GetInlineStylesForNodeCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/GetInlineStylesForNodeCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/GetInlineStylesForNodeCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/GetInlineStylesForNodeCommandResponse.cs
index 99b0f59..3671b7b 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/GetInlineStylesForNodeCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/GetInlineStylesForNodeCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/GetLayoutTreeAndStylesCommand.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/GetLayoutTreeAndStylesCommand.cs
deleted file mode 100644
index f7d11dd..0000000
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/GetLayoutTreeAndStylesCommand.cs
+++ /dev/null
@@ -1,19 +0,0 @@
-using MasterDevs.ChromeDevTools;
-using Newtonsoft.Json;
-using System.Collections.Generic;
-
-namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
-{
-	/// <summary>
-	/// For the main document and any content documents, return the LayoutTreeNodes and a whitelisted subset of the computed style. It only returns pushed nodes, on way to pull all nodes is to call DOM.getDocument with a depth of -1.
-	/// </summary>
-	[Command(ProtocolName.CSS.GetLayoutTreeAndStyles)]
-	[SupportedBy("Chrome")]
-	public class GetLayoutTreeAndStylesCommand: ICommand<GetLayoutTreeAndStylesCommandResponse>
-	{
-		/// <summary>
-		/// Gets or sets Whitelist of computed styles to return.
-		/// </summary>
-		public string[] ComputedStyleWhitelist { get; set; }
-	}
-}
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/GetLayoutTreeAndStylesCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/GetLayoutTreeAndStylesCommandResponse.cs
deleted file mode 100644
index e83cc29..0000000
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/GetLayoutTreeAndStylesCommandResponse.cs
+++ /dev/null
@@ -1,23 +0,0 @@
-using MasterDevs.ChromeDevTools;
-using Newtonsoft.Json;
-using System.Collections.Generic;
-
-namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
-{
-	/// <summary>
-	/// For the main document and any content documents, return the LayoutTreeNodes and a whitelisted subset of the computed style. It only returns pushed nodes, on way to pull all nodes is to call DOM.getDocument with a depth of -1.
-	/// </summary>
-	[CommandResponse(ProtocolName.CSS.GetLayoutTreeAndStyles)]
-	[SupportedBy("Chrome")]
-	public class GetLayoutTreeAndStylesCommandResponse
-	{
-		/// <summary>
-		/// Gets or sets LayoutTreeNodes
-		/// </summary>
-		public LayoutTreeNode[] LayoutTreeNodes { get; set; }
-		/// <summary>
-		/// Gets or sets ComputedStyles
-		/// </summary>
-		public ComputedStyle[] ComputedStyles { get; set; }
-	}
-}
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/GetMatchedStylesForNodeCommand.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/GetMatchedStylesForNodeCommand.cs
index 3b8bda1..200ab55 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/GetMatchedStylesForNodeCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/GetMatchedStylesForNodeCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/GetMatchedStylesForNodeCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/GetMatchedStylesForNodeCommandResponse.cs
index 5b57feb..b6f0e4f 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/GetMatchedStylesForNodeCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/GetMatchedStylesForNodeCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/GetMediaQueriesCommand.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/GetMediaQueriesCommand.cs
index 0008763..253b761 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/GetMediaQueriesCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/GetMediaQueriesCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/GetMediaQueriesCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/GetMediaQueriesCommandResponse.cs
index e6a2570..e552387 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/GetMediaQueriesCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/GetMediaQueriesCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/GetPlatformFontsForNodeCommand.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/GetPlatformFontsForNodeCommand.cs
index cff0f3e..670dbcc 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/GetPlatformFontsForNodeCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/GetPlatformFontsForNodeCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/GetPlatformFontsForNodeCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/GetPlatformFontsForNodeCommandResponse.cs
index 2f8184f..a2687ac 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/GetPlatformFontsForNodeCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/GetPlatformFontsForNodeCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/GetStyleSheetTextCommand.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/GetStyleSheetTextCommand.cs
index 9a99905..45ea352 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/GetStyleSheetTextCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/GetStyleSheetTextCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/GetStyleSheetTextCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/GetStyleSheetTextCommandResponse.cs
index c50de64..4da649f 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/GetStyleSheetTextCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/GetStyleSheetTextCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/MediaQueryResultChangedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/MediaQueryResultChangedEvent.cs
index 11287ed..9357549 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/MediaQueryResultChangedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/MediaQueryResultChangedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/SetEffectivePropertyValueForNodeCommand.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/SetEffectivePropertyValueForNodeCommand.cs
index 699b977..a9ab341 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/SetEffectivePropertyValueForNodeCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/SetEffectivePropertyValueForNodeCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/SetEffectivePropertyValueForNodeCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/SetEffectivePropertyValueForNodeCommandResponse.cs
index ce0121f..90284e3 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/SetEffectivePropertyValueForNodeCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/SetEffectivePropertyValueForNodeCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/SetKeyframeKeyCommand.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/SetKeyframeKeyCommand.cs
index 0284cad..0d952a9 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/SetKeyframeKeyCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/SetKeyframeKeyCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/SetKeyframeKeyCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/SetKeyframeKeyCommandResponse.cs
index 88c0aa4..133fa2a 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/SetKeyframeKeyCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/SetKeyframeKeyCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/SetMediaTextCommand.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/SetMediaTextCommand.cs
index cae0a86..f751c99 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/SetMediaTextCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/SetMediaTextCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/SetMediaTextCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/SetMediaTextCommandResponse.cs
index fa5a427..cfdf6a5 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/SetMediaTextCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/SetMediaTextCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/SetRuleSelectorCommand.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/SetRuleSelectorCommand.cs
index 09ec4c8..d800b6c 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/SetRuleSelectorCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/SetRuleSelectorCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/SetRuleSelectorCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/SetRuleSelectorCommandResponse.cs
index 96efee7..d730845 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/SetRuleSelectorCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/SetRuleSelectorCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/SetStyleSheetTextCommand.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/SetStyleSheetTextCommand.cs
index 02149af..25e95c0 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/SetStyleSheetTextCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/SetStyleSheetTextCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/SetStyleSheetTextCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/SetStyleSheetTextCommandResponse.cs
index 9ee94e0..8c922c3 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/SetStyleSheetTextCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/SetStyleSheetTextCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/SetStyleTextsCommand.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/SetStyleTextsCommand.cs
index c41d83d..539d3d8 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/SetStyleTextsCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/SetStyleTextsCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/SetStyleTextsCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/SetStyleTextsCommandResponse.cs
index a843c39..0b4ec35 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/SetStyleTextsCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/SetStyleTextsCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/ShorthandEntry.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/ShorthandEntry.cs
index dd9c49c..1b5b033 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/ShorthandEntry.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/ShorthandEntry.cs
@@ -4,9 +4,6 @@ using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
 {
-	/// <summary>
-	/// 
-	/// </summary>
 	[SupportedBy("Chrome")]
 	public class ShorthandEntry
 	{
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/StartRuleUsageTrackingCommand.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/StartRuleUsageTrackingCommand.cs
index 0697003..6be436e 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/StartRuleUsageTrackingCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/StartRuleUsageTrackingCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/StartRuleUsageTrackingCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/StartRuleUsageTrackingCommandResponse.cs
index f96bb33..76805fe 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/StartRuleUsageTrackingCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/StartRuleUsageTrackingCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/StopRuleUsageTrackingCommand.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/StopRuleUsageTrackingCommand.cs
index d1fb1b3..267680f 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/StopRuleUsageTrackingCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/StopRuleUsageTrackingCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/StopRuleUsageTrackingCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/StopRuleUsageTrackingCommandResponse.cs
index 9cfe35a..6d9f879 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/StopRuleUsageTrackingCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/StopRuleUsageTrackingCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/StyleSheetAddedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/StyleSheetAddedEvent.cs
index f767086..7656826 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/StyleSheetAddedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/StyleSheetAddedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/StyleSheetChangedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/StyleSheetChangedEvent.cs
index 860170a..40e77f3 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/StyleSheetChangedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/StyleSheetChangedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/StyleSheetRemovedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/StyleSheetRemovedEvent.cs
index 08a5a13..5d53568 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/StyleSheetRemovedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/StyleSheetRemovedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/TakeCoverageDeltaCommand.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/TakeCoverageDeltaCommand.cs
index 50f9115..b17ac07 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/TakeCoverageDeltaCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/TakeCoverageDeltaCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/TakeCoverageDeltaCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/CSS/TakeCoverageDeltaCommandResponse.cs
index 7cee601..c0c93dc 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/TakeCoverageDeltaCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CSS/TakeCoverageDeltaCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
diff --git a/source/ChromeDevTools/Protocol/Chrome/CacheStorage/CachedResponse.cs b/source/ChromeDevTools/Protocol/Chrome/CacheStorage/CachedResponse.cs
new file mode 100644
index 0000000..93c1346
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/CacheStorage/CachedResponse.cs
@@ -0,0 +1,18 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CacheStorage
+{
+	/// <summary>
+	/// Cached response
+	/// </summary>
+	[SupportedBy("Chrome")]
+	public class CachedResponse
+	{
+		/// <summary>
+		/// Gets or sets Entry content, base64-encoded.
+		/// </summary>
+		public string Body { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/CacheStorage/DataEntry.cs b/source/ChromeDevTools/Protocol/Chrome/CacheStorage/DataEntry.cs
index aaf5bf3..08eb960 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CacheStorage/DataEntry.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CacheStorage/DataEntry.cs
@@ -11,12 +11,32 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CacheStorage
 	public class DataEntry
 	{
 		/// <summary>
-		/// Gets or sets Request url spec.
+		/// Gets or sets Request URL.
 		/// </summary>
-		public string Request { get; set; }
+		public string RequestURL { get; set; }
 		/// <summary>
-		/// Gets or sets Response stataus text.
+		/// Gets or sets Request method.
 		/// </summary>
-		public string Response { get; set; }
+		public string RequestMethod { get; set; }
+		/// <summary>
+		/// Gets or sets Request headers
+		/// </summary>
+		public Header[] RequestHeaders { get; set; }
+		/// <summary>
+		/// Gets or sets Number of seconds since epoch.
+		/// </summary>
+		public double ResponseTime { get; set; }
+		/// <summary>
+		/// Gets or sets HTTP response status code.
+		/// </summary>
+		public long ResponseStatus { get; set; }
+		/// <summary>
+		/// Gets or sets HTTP response status text.
+		/// </summary>
+		public string ResponseStatusText { get; set; }
+		/// <summary>
+		/// Gets or sets Response headers
+		/// </summary>
+		public Header[] ResponseHeaders { get; set; }
 	}
 }
diff --git a/source/ChromeDevTools/Protocol/Chrome/CacheStorage/DeleteCacheCommand.cs b/source/ChromeDevTools/Protocol/Chrome/CacheStorage/DeleteCacheCommand.cs
index f2d627e..f4cd658 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CacheStorage/DeleteCacheCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CacheStorage/DeleteCacheCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CacheStorage
diff --git a/source/ChromeDevTools/Protocol/Chrome/CacheStorage/DeleteCacheCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/CacheStorage/DeleteCacheCommandResponse.cs
index 9cc2387..edc7914 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CacheStorage/DeleteCacheCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CacheStorage/DeleteCacheCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CacheStorage
diff --git a/source/ChromeDevTools/Protocol/Chrome/CacheStorage/DeleteEntryCommand.cs b/source/ChromeDevTools/Protocol/Chrome/CacheStorage/DeleteEntryCommand.cs
index 4abbab3..7952108 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CacheStorage/DeleteEntryCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CacheStorage/DeleteEntryCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CacheStorage
diff --git a/source/ChromeDevTools/Protocol/Chrome/CacheStorage/DeleteEntryCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/CacheStorage/DeleteEntryCommandResponse.cs
index ed4708c..cf83c40 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CacheStorage/DeleteEntryCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CacheStorage/DeleteEntryCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CacheStorage
diff --git a/source/ChromeDevTools/Protocol/Chrome/CacheStorage/Header.cs b/source/ChromeDevTools/Protocol/Chrome/CacheStorage/Header.cs
new file mode 100644
index 0000000..9d42940
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/CacheStorage/Header.cs
@@ -0,0 +1,19 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CacheStorage
+{
+	[SupportedBy("Chrome")]
+	public class Header
+	{
+		/// <summary>
+		/// Gets or sets Name
+		/// </summary>
+		public string Name { get; set; }
+		/// <summary>
+		/// Gets or sets Value
+		/// </summary>
+		public string Value { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/CacheStorage/RequestCacheNamesCommand.cs b/source/ChromeDevTools/Protocol/Chrome/CacheStorage/RequestCacheNamesCommand.cs
index f1a0eb8..5c9c230 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CacheStorage/RequestCacheNamesCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CacheStorage/RequestCacheNamesCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CacheStorage
diff --git a/source/ChromeDevTools/Protocol/Chrome/CacheStorage/RequestCacheNamesCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/CacheStorage/RequestCacheNamesCommandResponse.cs
index 72efd00..b55a4c5 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CacheStorage/RequestCacheNamesCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CacheStorage/RequestCacheNamesCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CacheStorage
diff --git a/source/ChromeDevTools/Protocol/Chrome/CacheStorage/RequestCachedResponseCommand.cs b/source/ChromeDevTools/Protocol/Chrome/CacheStorage/RequestCachedResponseCommand.cs
new file mode 100644
index 0000000..46d022d
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/CacheStorage/RequestCachedResponseCommand.cs
@@ -0,0 +1,24 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CacheStorage
+{
+	/// <summary>
+	/// Fetches cache entry.
+	/// </summary>
+	[Command(ProtocolName.CacheStorage.RequestCachedResponse)]
+	[SupportedBy("Chrome")]
+	public class RequestCachedResponseCommand: ICommand<RequestCachedResponseCommandResponse>
+	{
+		/// <summary>
+		/// Gets or sets Id of cache that contains the enty.
+		/// </summary>
+		public string CacheId { get; set; }
+		/// <summary>
+		/// Gets or sets URL spec of the request.
+		/// </summary>
+		public string RequestURL { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/CacheStorage/RequestCachedResponseCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/CacheStorage/RequestCachedResponseCommandResponse.cs
new file mode 100644
index 0000000..e5069f0
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/CacheStorage/RequestCachedResponseCommandResponse.cs
@@ -0,0 +1,20 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CacheStorage
+{
+	/// <summary>
+	/// Fetches cache entry.
+	/// </summary>
+	[CommandResponse(ProtocolName.CacheStorage.RequestCachedResponse)]
+	[SupportedBy("Chrome")]
+	public class RequestCachedResponseCommandResponse
+	{
+		/// <summary>
+		/// Gets or sets Response read from the cache.
+		/// </summary>
+		public CachedResponse Response { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/CacheStorage/RequestEntriesCommand.cs b/source/ChromeDevTools/Protocol/Chrome/CacheStorage/RequestEntriesCommand.cs
index 4bddb41..a2b5de6 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CacheStorage/RequestEntriesCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CacheStorage/RequestEntriesCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CacheStorage
diff --git a/source/ChromeDevTools/Protocol/Chrome/CacheStorage/RequestEntriesCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/CacheStorage/RequestEntriesCommandResponse.cs
index 3f1015c..eba4e4a 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CacheStorage/RequestEntriesCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/CacheStorage/RequestEntriesCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CacheStorage
diff --git a/source/ChromeDevTools/Protocol/Chrome/Console/ClearMessagesCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Console/ClearMessagesCommand.cs
index d123bc5..229b848 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Console/ClearMessagesCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Console/ClearMessagesCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Console
diff --git a/source/ChromeDevTools/Protocol/Chrome/Console/ClearMessagesCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Console/ClearMessagesCommandResponse.cs
index f9d5a62..882dcbd 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Console/ClearMessagesCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Console/ClearMessagesCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Console
diff --git a/source/ChromeDevTools/Protocol/Chrome/Console/DisableCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Console/DisableCommand.cs
index 88056d9..c87a325 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Console/DisableCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Console/DisableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Console
diff --git a/source/ChromeDevTools/Protocol/Chrome/Console/DisableCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Console/DisableCommandResponse.cs
index 4dfa22b..fb20802 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Console/DisableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Console/DisableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Console
diff --git a/source/ChromeDevTools/Protocol/Chrome/Console/EnableCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Console/EnableCommand.cs
index b88c914..b4c6915 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Console/EnableCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Console/EnableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Console
diff --git a/source/ChromeDevTools/Protocol/Chrome/Console/EnableCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Console/EnableCommandResponse.cs
index 16ae4ee..e786f0b 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Console/EnableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Console/EnableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Console
diff --git a/source/ChromeDevTools/Protocol/Chrome/Console/MessageAddedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Console/MessageAddedEvent.cs
index 441134f..f6b8230 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Console/MessageAddedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Console/MessageAddedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Console
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/AttributeModifiedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/AttributeModifiedEvent.cs
index 2f8e18e..dec3a87 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/AttributeModifiedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/AttributeModifiedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/AttributeRemovedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/AttributeRemovedEvent.cs
index d825216..1cdcddc 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/AttributeRemovedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/AttributeRemovedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/CharacterDataModifiedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/CharacterDataModifiedEvent.cs
index 603beea..112b728 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/CharacterDataModifiedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/CharacterDataModifiedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/ChildNodeCountUpdatedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/ChildNodeCountUpdatedEvent.cs
index 3bea04f..8ad7ec6 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/ChildNodeCountUpdatedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/ChildNodeCountUpdatedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/ChildNodeInsertedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/ChildNodeInsertedEvent.cs
index 4eba2f1..8f11d5b 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/ChildNodeInsertedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/ChildNodeInsertedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/ChildNodeRemovedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/ChildNodeRemovedEvent.cs
index b5b4e68..82ed519 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/ChildNodeRemovedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/ChildNodeRemovedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/CollectClassNamesFromSubtreeCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/CollectClassNamesFromSubtreeCommand.cs
index 0e6767f..2abb997 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/CollectClassNamesFromSubtreeCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/CollectClassNamesFromSubtreeCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/CollectClassNamesFromSubtreeCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/CollectClassNamesFromSubtreeCommandResponse.cs
index 4158d5f..e10a305 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/CollectClassNamesFromSubtreeCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/CollectClassNamesFromSubtreeCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/CopyToCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/CopyToCommand.cs
index 1dd4acb..5356cd9 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/CopyToCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/CopyToCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/CopyToCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/CopyToCommandResponse.cs
index de4aac4..e145337 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/CopyToCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/CopyToCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/DescribeNodeCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/DescribeNodeCommand.cs
new file mode 100644
index 0000000..ec3c554
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/DescribeNodeCommand.cs
@@ -0,0 +1,41 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
+{
+	/// <summary>
+	/// Describes node given its id, does not require domain to be enabled. Does not start tracking any objects, can be used for automation.
+	/// </summary>
+	[Command(ProtocolName.DOM.DescribeNode)]
+	[SupportedBy("Chrome")]
+	public class DescribeNodeCommand: ICommand<DescribeNodeCommandResponse>
+	{
+		/// <summary>
+		/// Gets or sets Identifier of the node.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public long? NodeId { get; set; }
+		/// <summary>
+		/// Gets or sets Identifier of the backend node.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public long? BackendNodeId { get; set; }
+		/// <summary>
+		/// Gets or sets JavaScript object id of the node wrapper.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string ObjectId { get; set; }
+		/// <summary>
+		/// Gets or sets The maximum depth at which children should be retrieved, defaults to 1. Use -1 for the entire subtree or provide an integer larger than 0.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public long? Depth { get; set; }
+		/// <summary>
+		/// Gets or sets Whether or not iframes and shadow roots should be traversed when returning the subtree (default is false).
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public bool? Pierce { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/DescribeNodeCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/DescribeNodeCommandResponse.cs
new file mode 100644
index 0000000..27168d7
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/DescribeNodeCommandResponse.cs
@@ -0,0 +1,20 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
+{
+	/// <summary>
+	/// Describes node given its id, does not require domain to be enabled. Does not start tracking any objects, can be used for automation.
+	/// </summary>
+	[CommandResponse(ProtocolName.DOM.DescribeNode)]
+	[SupportedBy("Chrome")]
+	public class DescribeNodeCommandResponse
+	{
+		/// <summary>
+		/// Gets or sets Node description.
+		/// </summary>
+		public Node Node { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/DisableCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/DisableCommand.cs
index fa4b32c..09ba3c4 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/DisableCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/DisableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/DisableCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/DisableCommandResponse.cs
index e1ba872..4e37532 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/DisableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/DisableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/DiscardSearchResultsCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/DiscardSearchResultsCommand.cs
index 33268db..341dc7b 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/DiscardSearchResultsCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/DiscardSearchResultsCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/DiscardSearchResultsCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/DiscardSearchResultsCommandResponse.cs
index 33c6722..fa241f1 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/DiscardSearchResultsCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/DiscardSearchResultsCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/DistributedNodesUpdatedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/DistributedNodesUpdatedEvent.cs
index ff102a9..3bc8ec2 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/DistributedNodesUpdatedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/DistributedNodesUpdatedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/DocumentUpdatedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/DocumentUpdatedEvent.cs
index 725d0a4..3dd74fa 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/DocumentUpdatedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/DocumentUpdatedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/EnableCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/EnableCommand.cs
index 1ba5d18..cd37311 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/EnableCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/EnableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/EnableCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/EnableCommandResponse.cs
index a970dee..be00b38 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/EnableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/EnableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/FocusCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/FocusCommand.cs
index cb2c6db..edfb7c3 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/FocusCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/FocusCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
@@ -12,8 +13,19 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
 	public class FocusCommand: ICommand<FocusCommandResponse>
 	{
 		/// <summary>
-		/// Gets or sets Id of the node to focus.
+		/// Gets or sets Identifier of the node.
 		/// </summary>
-		public long NodeId { get; set; }
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public long? NodeId { get; set; }
+		/// <summary>
+		/// Gets or sets Identifier of the backend node.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public long? BackendNodeId { get; set; }
+		/// <summary>
+		/// Gets or sets JavaScript object id of the node wrapper.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string ObjectId { get; set; }
 	}
 }
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/FocusCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/FocusCommandResponse.cs
index 073c9db..d3c8a4c 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/FocusCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/FocusCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/GetAttributesCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/GetAttributesCommand.cs
index 5a5a3d0..5ca3aa4 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/GetAttributesCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/GetAttributesCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/GetAttributesCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/GetAttributesCommandResponse.cs
index 3a7bf05..95f114f 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/GetAttributesCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/GetAttributesCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/GetBoxModelCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/GetBoxModelCommand.cs
index 684fcec..c03d594 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/GetBoxModelCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/GetBoxModelCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
@@ -12,8 +13,19 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
 	public class GetBoxModelCommand: ICommand<GetBoxModelCommandResponse>
 	{
 		/// <summary>
-		/// Gets or sets Id of the node to get box model for.
+		/// Gets or sets Identifier of the node.
 		/// </summary>
-		public long NodeId { get; set; }
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public long? NodeId { get; set; }
+		/// <summary>
+		/// Gets or sets Identifier of the backend node.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public long? BackendNodeId { get; set; }
+		/// <summary>
+		/// Gets or sets JavaScript object id of the node wrapper.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string ObjectId { get; set; }
 	}
 }
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/GetBoxModelCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/GetBoxModelCommandResponse.cs
index de6763b..f55f11f 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/GetBoxModelCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/GetBoxModelCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/GetDocumentCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/GetDocumentCommand.cs
index e1a7d09..90f492a 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/GetDocumentCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/GetDocumentCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/GetDocumentCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/GetDocumentCommandResponse.cs
index 900ef72..4f9fa1d 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/GetDocumentCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/GetDocumentCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/GetFlattenedDocumentCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/GetFlattenedDocumentCommand.cs
index f8d62ee..a4b0d2c 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/GetFlattenedDocumentCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/GetFlattenedDocumentCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/GetFlattenedDocumentCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/GetFlattenedDocumentCommandResponse.cs
index 7fc3661..09310b2 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/GetFlattenedDocumentCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/GetFlattenedDocumentCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/GetNodeForLocationCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/GetNodeForLocationCommand.cs
index 37202b7..de80421 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/GetNodeForLocationCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/GetNodeForLocationCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/GetNodeForLocationCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/GetNodeForLocationCommandResponse.cs
index 49d9629..2808a87 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/GetNodeForLocationCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/GetNodeForLocationCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/GetOuterHTMLCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/GetOuterHTMLCommand.cs
index d8229db..3701946 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/GetOuterHTMLCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/GetOuterHTMLCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
@@ -12,8 +13,19 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
 	public class GetOuterHTMLCommand: ICommand<GetOuterHTMLCommandResponse>
 	{
 		/// <summary>
-		/// Gets or sets Id of the node to get markup for.
+		/// Gets or sets Identifier of the node.
 		/// </summary>
-		public long NodeId { get; set; }
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public long? NodeId { get; set; }
+		/// <summary>
+		/// Gets or sets Identifier of the backend node.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public long? BackendNodeId { get; set; }
+		/// <summary>
+		/// Gets or sets JavaScript object id of the node wrapper.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string ObjectId { get; set; }
 	}
 }
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/GetOuterHTMLCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/GetOuterHTMLCommandResponse.cs
index c5543a2..f9dbc98 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/GetOuterHTMLCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/GetOuterHTMLCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/GetRelayoutBoundaryCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/GetRelayoutBoundaryCommand.cs
index f092478..b37956c 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/GetRelayoutBoundaryCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/GetRelayoutBoundaryCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/GetRelayoutBoundaryCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/GetRelayoutBoundaryCommandResponse.cs
index 28dae5e..d3a8436 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/GetRelayoutBoundaryCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/GetRelayoutBoundaryCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/GetSearchResultsCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/GetSearchResultsCommand.cs
index 38110c7..5daf491 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/GetSearchResultsCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/GetSearchResultsCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/GetSearchResultsCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/GetSearchResultsCommandResponse.cs
index 9950b51..a14c384 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/GetSearchResultsCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/GetSearchResultsCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/HideHighlightCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/HideHighlightCommand.cs
index 0e668d7..6b7c9ed 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/HideHighlightCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/HideHighlightCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/HideHighlightCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/HideHighlightCommandResponse.cs
index 2a74784..6914ddf 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/HideHighlightCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/HideHighlightCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/HighlightNodeCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/HighlightNodeCommand.cs
index 9c6087c..85c73dd 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/HighlightNodeCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/HighlightNodeCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/HighlightNodeCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/HighlightNodeCommandResponse.cs
index 88a1866..3a82843 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/HighlightNodeCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/HighlightNodeCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/HighlightRectCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/HighlightRectCommand.cs
index dfb034a..665f9e8 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/HighlightRectCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/HighlightRectCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/HighlightRectCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/HighlightRectCommandResponse.cs
index 06a0d1b..0e1c930 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/HighlightRectCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/HighlightRectCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/InlineStyleInvalidatedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/InlineStyleInvalidatedEvent.cs
index 2d11e71..7ebe46e 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/InlineStyleInvalidatedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/InlineStyleInvalidatedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/MarkUndoableStateCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/MarkUndoableStateCommand.cs
index 88dc65c..79a914d 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/MarkUndoableStateCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/MarkUndoableStateCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/MarkUndoableStateCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/MarkUndoableStateCommandResponse.cs
index a8e57e7..d1329d7 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/MarkUndoableStateCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/MarkUndoableStateCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/MoveToCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/MoveToCommand.cs
index ba0d569..6f460a9 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/MoveToCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/MoveToCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/MoveToCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/MoveToCommandResponse.cs
index d5bfa9a..9d04548 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/MoveToCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/MoveToCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/PerformSearchCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/PerformSearchCommand.cs
index 15de5f7..c73ec0d 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/PerformSearchCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/PerformSearchCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/PerformSearchCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/PerformSearchCommandResponse.cs
index c318740..a315366 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/PerformSearchCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/PerformSearchCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/PseudoElementAddedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/PseudoElementAddedEvent.cs
index aeb498a..7482bd5 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/PseudoElementAddedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/PseudoElementAddedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/PseudoElementRemovedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/PseudoElementRemovedEvent.cs
index 7ea305e..b823d5e 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/PseudoElementRemovedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/PseudoElementRemovedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/PushNodeByPathToFrontendCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/PushNodeByPathToFrontendCommand.cs
index 83091b3..8434850 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/PushNodeByPathToFrontendCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/PushNodeByPathToFrontendCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/PushNodeByPathToFrontendCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/PushNodeByPathToFrontendCommandResponse.cs
index 9e7eebb..58d7f44 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/PushNodeByPathToFrontendCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/PushNodeByPathToFrontendCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/PushNodesByBackendIdsToFrontendCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/PushNodesByBackendIdsToFrontendCommand.cs
index bc65bf5..b9db043 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/PushNodesByBackendIdsToFrontendCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/PushNodesByBackendIdsToFrontendCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/PushNodesByBackendIdsToFrontendCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/PushNodesByBackendIdsToFrontendCommandResponse.cs
index 880f370..7c24a24 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/PushNodesByBackendIdsToFrontendCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/PushNodesByBackendIdsToFrontendCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/QuerySelectorAllCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/QuerySelectorAllCommand.cs
index ae75d2c..c874bfa 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/QuerySelectorAllCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/QuerySelectorAllCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/QuerySelectorAllCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/QuerySelectorAllCommandResponse.cs
index ed18331..23e36c0 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/QuerySelectorAllCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/QuerySelectorAllCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/QuerySelectorCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/QuerySelectorCommand.cs
index b98abf2..d457958 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/QuerySelectorCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/QuerySelectorCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/QuerySelectorCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/QuerySelectorCommandResponse.cs
index 3983d6b..7168024 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/QuerySelectorCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/QuerySelectorCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/RedoCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/RedoCommand.cs
index 17ce3b3..d0ed3df 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/RedoCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/RedoCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/RedoCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/RedoCommandResponse.cs
index 47b38e5..f123e6e 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/RedoCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/RedoCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/RemoveAttributeCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/RemoveAttributeCommand.cs
index ddf2000..c07b60a 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/RemoveAttributeCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/RemoveAttributeCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/RemoveAttributeCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/RemoveAttributeCommandResponse.cs
index ffe2202..fedf0b6 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/RemoveAttributeCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/RemoveAttributeCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/RemoveNodeCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/RemoveNodeCommand.cs
index 91cd80f..41d3571 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/RemoveNodeCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/RemoveNodeCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/RemoveNodeCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/RemoveNodeCommandResponse.cs
index c8bfecb..96306ce 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/RemoveNodeCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/RemoveNodeCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/RequestChildNodesCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/RequestChildNodesCommand.cs
index 828e2b0..6220be4 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/RequestChildNodesCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/RequestChildNodesCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/RequestChildNodesCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/RequestChildNodesCommandResponse.cs
index 24b7680..5f583b6 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/RequestChildNodesCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/RequestChildNodesCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/RequestNodeCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/RequestNodeCommand.cs
index 531cb66..1fb04a1 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/RequestNodeCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/RequestNodeCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/RequestNodeCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/RequestNodeCommandResponse.cs
index f407b1e..b63dbce 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/RequestNodeCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/RequestNodeCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/ResolveNodeCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/ResolveNodeCommand.cs
index 4ef0a9d..c32a7d2 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/ResolveNodeCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/ResolveNodeCommand.cs
@@ -1,11 +1,12 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
 {
 	/// <summary>
-	/// Resolves JavaScript node object for given node id.
+	/// Resolves the JavaScript node object for a given NodeId or BackendNodeId.
 	/// </summary>
 	[Command(ProtocolName.DOM.ResolveNode)]
 	[SupportedBy("Chrome")]
@@ -14,7 +15,13 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
 		/// <summary>
 		/// Gets or sets Id of the node to resolve.
 		/// </summary>
-		public long NodeId { get; set; }
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public long? NodeId { get; set; }
+		/// <summary>
+		/// Gets or sets Backend identifier of the node to resolve.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public long? BackendNodeId { get; set; }
 		/// <summary>
 		/// Gets or sets Symbolic group name that can be used to release multiple objects.
 		/// </summary>
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/ResolveNodeCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/ResolveNodeCommandResponse.cs
index ae45eec..50f89fa 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/ResolveNodeCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/ResolveNodeCommandResponse.cs
@@ -1,11 +1,12 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
 {
 	/// <summary>
-	/// Resolves JavaScript node object for given node id.
+	/// Resolves the JavaScript node object for a given NodeId or BackendNodeId.
 	/// </summary>
 	[CommandResponse(ProtocolName.DOM.ResolveNode)]
 	[SupportedBy("Chrome")]
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/SetAttributeValueCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/SetAttributeValueCommand.cs
index f8e4b24..82e57f0 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/SetAttributeValueCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/SetAttributeValueCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/SetAttributeValueCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/SetAttributeValueCommandResponse.cs
index 8a8f4aa..2eaf652 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/SetAttributeValueCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/SetAttributeValueCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/SetAttributesAsTextCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/SetAttributesAsTextCommand.cs
index e172e4a..2f77592 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/SetAttributesAsTextCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/SetAttributesAsTextCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/SetAttributesAsTextCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/SetAttributesAsTextCommandResponse.cs
index f02db18..a117674 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/SetAttributesAsTextCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/SetAttributesAsTextCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/SetChildNodesEvent.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/SetChildNodesEvent.cs
index 8201219..1fc807d 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/SetChildNodesEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/SetChildNodesEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/SetFileInputFilesCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/SetFileInputFilesCommand.cs
index e704426..02ec134 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/SetFileInputFilesCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/SetFileInputFilesCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
@@ -11,13 +12,24 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
 	[SupportedBy("Chrome")]
 	public class SetFileInputFilesCommand: ICommand<SetFileInputFilesCommandResponse>
 	{
-		/// <summary>
-		/// Gets or sets Id of the file input node to set files for.
-		/// </summary>
-		public long NodeId { get; set; }
 		/// <summary>
 		/// Gets or sets Array of file paths to set.
 		/// </summary>
 		public string[] Files { get; set; }
+		/// <summary>
+		/// Gets or sets Identifier of the node.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public long? NodeId { get; set; }
+		/// <summary>
+		/// Gets or sets Identifier of the backend node.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public long? BackendNodeId { get; set; }
+		/// <summary>
+		/// Gets or sets JavaScript object id of the node wrapper.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string ObjectId { get; set; }
 	}
 }
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/SetFileInputFilesCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/SetFileInputFilesCommandResponse.cs
index 9b0fb57..14ca16f 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/SetFileInputFilesCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/SetFileInputFilesCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/SetInspectedNodeCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/SetInspectedNodeCommand.cs
index 5a49586..dd07262 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/SetInspectedNodeCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/SetInspectedNodeCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/SetInspectedNodeCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/SetInspectedNodeCommandResponse.cs
index 46c288b..c5f2b81 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/SetInspectedNodeCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/SetInspectedNodeCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/SetNodeNameCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/SetNodeNameCommand.cs
index 3bd4182..e458f56 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/SetNodeNameCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/SetNodeNameCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/SetNodeNameCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/SetNodeNameCommandResponse.cs
index 0e0777e..973e82f 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/SetNodeNameCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/SetNodeNameCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/SetNodeValueCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/SetNodeValueCommand.cs
index 5bda04d..50ff5c5 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/SetNodeValueCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/SetNodeValueCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/SetNodeValueCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/SetNodeValueCommandResponse.cs
index b70a804..dc91b19 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/SetNodeValueCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/SetNodeValueCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/SetOuterHTMLCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/SetOuterHTMLCommand.cs
index 4202760..05b3586 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/SetOuterHTMLCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/SetOuterHTMLCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/SetOuterHTMLCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/SetOuterHTMLCommandResponse.cs
index 4b681ab..96efa56 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/SetOuterHTMLCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/SetOuterHTMLCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/ShadowRootPoppedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/ShadowRootPoppedEvent.cs
index 4e3e3ca..4cbd2f4 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/ShadowRootPoppedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/ShadowRootPoppedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/ShadowRootPushedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/ShadowRootPushedEvent.cs
index 5532746..4c23602 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/ShadowRootPushedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/ShadowRootPushedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/UndoCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/UndoCommand.cs
index e030e1a..eff6cad 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/UndoCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/UndoCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOM/UndoCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOM/UndoCommandResponse.cs
index 69f984a..bc0f1f2 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOM/UndoCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOM/UndoCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOM
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/GetEventListenersCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/GetEventListenersCommand.cs
index bc1e9bb..7ff0c30 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/GetEventListenersCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/GetEventListenersCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOMDebugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/GetEventListenersCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/GetEventListenersCommandResponse.cs
index fb04af8..be9a7dd 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/GetEventListenersCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/GetEventListenersCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOMDebugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/RemoveDOMBreakpointCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/RemoveDOMBreakpointCommand.cs
index d9fb68c..78be9b1 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/RemoveDOMBreakpointCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/RemoveDOMBreakpointCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOMDebugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/RemoveDOMBreakpointCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/RemoveDOMBreakpointCommandResponse.cs
index b280362..919ae6f 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/RemoveDOMBreakpointCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/RemoveDOMBreakpointCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOMDebugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/RemoveEventListenerBreakpointCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/RemoveEventListenerBreakpointCommand.cs
index 66569c1..04923a5 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/RemoveEventListenerBreakpointCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/RemoveEventListenerBreakpointCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOMDebugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/RemoveEventListenerBreakpointCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/RemoveEventListenerBreakpointCommandResponse.cs
index f3bc874..c320a6c 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/RemoveEventListenerBreakpointCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/RemoveEventListenerBreakpointCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOMDebugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/RemoveInstrumentationBreakpointCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/RemoveInstrumentationBreakpointCommand.cs
index 0961571..97a0e7e 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/RemoveInstrumentationBreakpointCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/RemoveInstrumentationBreakpointCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOMDebugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/RemoveInstrumentationBreakpointCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/RemoveInstrumentationBreakpointCommandResponse.cs
index c929e28..ad7c9c8 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/RemoveInstrumentationBreakpointCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/RemoveInstrumentationBreakpointCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOMDebugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/RemoveXHRBreakpointCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/RemoveXHRBreakpointCommand.cs
index c44d4c2..d0ccd46 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/RemoveXHRBreakpointCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/RemoveXHRBreakpointCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOMDebugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/RemoveXHRBreakpointCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/RemoveXHRBreakpointCommandResponse.cs
index 4b2e5e1..f9640ed 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/RemoveXHRBreakpointCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/RemoveXHRBreakpointCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOMDebugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/SetDOMBreakpointCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/SetDOMBreakpointCommand.cs
index 96108d3..8f09ac3 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/SetDOMBreakpointCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/SetDOMBreakpointCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOMDebugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/SetDOMBreakpointCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/SetDOMBreakpointCommandResponse.cs
index 25efaec..ac1b7aa 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/SetDOMBreakpointCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/SetDOMBreakpointCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOMDebugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/SetEventListenerBreakpointCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/SetEventListenerBreakpointCommand.cs
index 8950005..fdc862c 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/SetEventListenerBreakpointCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/SetEventListenerBreakpointCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOMDebugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/SetEventListenerBreakpointCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/SetEventListenerBreakpointCommandResponse.cs
index bf53436..5347849 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/SetEventListenerBreakpointCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/SetEventListenerBreakpointCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOMDebugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/SetInstrumentationBreakpointCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/SetInstrumentationBreakpointCommand.cs
index f68cffb..d479d68 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/SetInstrumentationBreakpointCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/SetInstrumentationBreakpointCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOMDebugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/SetInstrumentationBreakpointCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/SetInstrumentationBreakpointCommandResponse.cs
index 588fd57..76ddb64 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/SetInstrumentationBreakpointCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/SetInstrumentationBreakpointCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOMDebugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/SetXHRBreakpointCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/SetXHRBreakpointCommand.cs
index aff208c..e01e747 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/SetXHRBreakpointCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/SetXHRBreakpointCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOMDebugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/SetXHRBreakpointCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/SetXHRBreakpointCommandResponse.cs
index d85adae..7cd1138 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/SetXHRBreakpointCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOMDebugger/SetXHRBreakpointCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOMDebugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/ComputedStyle.cs b/source/ChromeDevTools/Protocol/Chrome/DOMSnapshot/ComputedStyle.cs
similarity index 62%
rename from source/ChromeDevTools/Protocol/Chrome/CSS/ComputedStyle.cs
rename to source/ChromeDevTools/Protocol/Chrome/DOMSnapshot/ComputedStyle.cs
index 0921ea1..13694b6 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/ComputedStyle.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOMSnapshot/ComputedStyle.cs
@@ -2,7 +2,7 @@ using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
 using System.Collections.Generic;
 
-namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOMSnapshot
 {
 	/// <summary>
 	/// A subset of the full ComputedStyle as defined by the request whitelist.
@@ -11,8 +11,8 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
 	public class ComputedStyle
 	{
 		/// <summary>
-		/// Gets or sets Properties
+		/// Gets or sets Name/value pairs of computed style properties.
 		/// </summary>
-		public CSSComputedStyleProperty[] Properties { get; set; }
+		public NameValue[] Properties { get; set; }
 	}
 }
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOMSnapshot/DOMNode.cs b/source/ChromeDevTools/Protocol/Chrome/DOMSnapshot/DOMNode.cs
new file mode 100644
index 0000000..43f6e9b
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/DOMSnapshot/DOMNode.cs
@@ -0,0 +1,130 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOMSnapshot
+{
+	/// <summary>
+	/// A Node in the DOM tree.
+	/// </summary>
+	[SupportedBy("Chrome")]
+	public class DOMNode
+	{
+		/// <summary>
+		/// Gets or sets <code>Node</code>'s nodeType.
+		/// </summary>
+		public long NodeType { get; set; }
+		/// <summary>
+		/// Gets or sets <code>Node</code>'s nodeName.
+		/// </summary>
+		public string NodeName { get; set; }
+		/// <summary>
+		/// Gets or sets <code>Node</code>'s nodeValue.
+		/// </summary>
+		public string NodeValue { get; set; }
+		/// <summary>
+		/// Gets or sets Only set for textarea elements, contains the text value.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string TextValue { get; set; }
+		/// <summary>
+		/// Gets or sets Only set for input elements, contains the input's associated text value.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string InputValue { get; set; }
+		/// <summary>
+		/// Gets or sets Only set for radio and checkbox input elements, indicates if the element has been checked
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public bool? InputChecked { get; set; }
+		/// <summary>
+		/// Gets or sets Only set for option elements, indicates if the element has been selected
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public bool? OptionSelected { get; set; }
+		/// <summary>
+		/// Gets or sets <code>Node</code>'s id, corresponds to DOM.Node.backendNodeId.
+		/// </summary>
+		public long BackendNodeId { get; set; }
+		/// <summary>
+		/// Gets or sets The indexes of the node's child nodes in the <code>domNodes</code> array returned by <code>getSnapshot</code>, if any.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public long[] ChildNodeIndexes { get; set; }
+		/// <summary>
+		/// Gets or sets Attributes of an <code>Element</code> node.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public NameValue[] Attributes { get; set; }
+		/// <summary>
+		/// Gets or sets Indexes of pseudo elements associated with this node in the <code>domNodes</code> array returned by <code>getSnapshot</code>, if any.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public long[] PseudoElementIndexes { get; set; }
+		/// <summary>
+		/// Gets or sets The index of the node's related layout tree node in the <code>layoutTreeNodes</code> array returned by <code>getSnapshot</code>, if any.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public long? LayoutNodeIndex { get; set; }
+		/// <summary>
+		/// Gets or sets Document URL that <code>Document</code> or <code>FrameOwner</code> node points to.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string DocumentURL { get; set; }
+		/// <summary>
+		/// Gets or sets Base URL that <code>Document</code> or <code>FrameOwner</code> node uses for URL completion.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string BaseURL { get; set; }
+		/// <summary>
+		/// Gets or sets Only set for documents, contains the document's content language.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string ContentLanguage { get; set; }
+		/// <summary>
+		/// Gets or sets Only set for documents, contains the document's character set encoding.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string DocumentEncoding { get; set; }
+		/// <summary>
+		/// Gets or sets <code>DocumentType</code> node's publicId.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string PublicId { get; set; }
+		/// <summary>
+		/// Gets or sets <code>DocumentType</code> node's systemId.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string SystemId { get; set; }
+		/// <summary>
+		/// Gets or sets Frame ID for frame owner elements and also for the document node.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string FrameId { get; set; }
+		/// <summary>
+		/// Gets or sets The index of a frame owner element's content document in the <code>domNodes</code> array returned by <code>getSnapshot</code>, if any.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public long? ContentDocumentIndex { get; set; }
+		/// <summary>
+		/// Gets or sets Index of the imported document's node of a link element in the <code>domNodes</code> array returned by <code>getSnapshot</code>, if any.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public long? ImportedDocumentIndex { get; set; }
+		/// <summary>
+		/// Gets or sets Index of the content node of a template element in the <code>domNodes</code> array returned by <code>getSnapshot</code>.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public long? TemplateContentIndex { get; set; }
+		/// <summary>
+		/// Gets or sets Type of a pseudo element node.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public DOM.PseudoType PseudoType { get; set; }
+		/// <summary>
+		/// Gets or sets Whether this DOM node responds to mouse clicks. This includes nodes that have had click event listeners attached via JavaScript as well as anchor tags that naturally navigate when clicked.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public bool? IsClickable { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOMSnapshot/GetSnapshotCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOMSnapshot/GetSnapshotCommand.cs
new file mode 100644
index 0000000..32ee0b9
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/DOMSnapshot/GetSnapshotCommand.cs
@@ -0,0 +1,20 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOMSnapshot
+{
+	/// <summary>
+	/// Returns a document snapshot, including the full DOM tree of the root node (including iframes, template contents, and imported documents) in a flattened array, as well as layout and white-listed computed style information for the nodes. Shadow DOM in the returned DOM tree is flattened. 
+	/// </summary>
+	[Command(ProtocolName.DOMSnapshot.GetSnapshot)]
+	[SupportedBy("Chrome")]
+	public class GetSnapshotCommand: ICommand<GetSnapshotCommandResponse>
+	{
+		/// <summary>
+		/// Gets or sets Whitelist of computed styles to return.
+		/// </summary>
+		public string[] ComputedStyleWhitelist { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOMSnapshot/GetSnapshotCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOMSnapshot/GetSnapshotCommandResponse.cs
new file mode 100644
index 0000000..4dfed5b
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/DOMSnapshot/GetSnapshotCommandResponse.cs
@@ -0,0 +1,28 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOMSnapshot
+{
+	/// <summary>
+	/// Returns a document snapshot, including the full DOM tree of the root node (including iframes, template contents, and imported documents) in a flattened array, as well as layout and white-listed computed style information for the nodes. Shadow DOM in the returned DOM tree is flattened. 
+	/// </summary>
+	[CommandResponse(ProtocolName.DOMSnapshot.GetSnapshot)]
+	[SupportedBy("Chrome")]
+	public class GetSnapshotCommandResponse
+	{
+		/// <summary>
+		/// Gets or sets The nodes in the DOM tree. The DOMNode at index 0 corresponds to the root document.
+		/// </summary>
+		public DOMNode[] DomNodes { get; set; }
+		/// <summary>
+		/// Gets or sets The nodes in the layout tree.
+		/// </summary>
+		public LayoutTreeNode[] LayoutTreeNodes { get; set; }
+		/// <summary>
+		/// Gets or sets Whitelisted ComputedStyle properties for each node in the layout tree.
+		/// </summary>
+		public ComputedStyle[] ComputedStyles { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/CSS/LayoutTreeNode.cs b/source/ChromeDevTools/Protocol/Chrome/DOMSnapshot/LayoutTreeNode.cs
similarity index 60%
rename from source/ChromeDevTools/Protocol/Chrome/CSS/LayoutTreeNode.cs
rename to source/ChromeDevTools/Protocol/Chrome/DOMSnapshot/LayoutTreeNode.cs
index 49bb322..2470206 100644
--- a/source/ChromeDevTools/Protocol/Chrome/CSS/LayoutTreeNode.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOMSnapshot/LayoutTreeNode.cs
@@ -2,7 +2,7 @@ using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
 using System.Collections.Generic;
 
-namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOMSnapshot
 {
 	/// <summary>
 	/// Details of an element in the DOM tree with a LayoutObject.
@@ -11,25 +11,25 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.CSS
 	public class LayoutTreeNode
 	{
 		/// <summary>
-		/// Gets or sets The id of the related DOM node matching one from DOM.GetDocument.
+		/// Gets or sets The index of the related DOM node in the <code>domNodes</code> array returned by <code>getSnapshot</code>.
 		/// </summary>
-		public long NodeId { get; set; }
+		public long DomNodeIndex { get; set; }
 		/// <summary>
 		/// Gets or sets The absolute position bounding box.
 		/// </summary>
 		public DOM.Rect BoundingBox { get; set; }
 		/// <summary>
-		/// Gets or sets Contents of the LayoutText if any
+		/// Gets or sets Contents of the LayoutText, if any.
 		/// </summary>
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
 		public string LayoutText { get; set; }
 		/// <summary>
-		/// Gets or sets The post layout inline text nodes, if any.
+		/// Gets or sets The post-layout inline text nodes, if any.
 		/// </summary>
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
-		public InlineTextBox[] InlineTextNodes { get; set; }
+		public CSS.InlineTextBox[] InlineTextNodes { get; set; }
 		/// <summary>
-		/// Gets or sets Index into the computedStyles array returned by getLayoutTreeAndStyles.
+		/// Gets or sets Index into the <code>computedStyles</code> array returned by <code>getSnapshot</code>.
 		/// </summary>
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
 		public long? StyleIndex { get; set; }
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOMSnapshot/NameValue.cs b/source/ChromeDevTools/Protocol/Chrome/DOMSnapshot/NameValue.cs
new file mode 100644
index 0000000..598233d
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/DOMSnapshot/NameValue.cs
@@ -0,0 +1,22 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOMSnapshot
+{
+	/// <summary>
+	/// A name/value pair.
+	/// </summary>
+	[SupportedBy("Chrome")]
+	public class NameValue
+	{
+		/// <summary>
+		/// Gets or sets Attribute/property name.
+		/// </summary>
+		public string Name { get; set; }
+		/// <summary>
+		/// Gets or sets Attribute/property value.
+		/// </summary>
+		public string Value { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOMStorage/ClearCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOMStorage/ClearCommand.cs
index b1b327c..124e8ef 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOMStorage/ClearCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOMStorage/ClearCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOMStorage
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOMStorage/ClearCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOMStorage/ClearCommandResponse.cs
index 50c7017..e084a95 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOMStorage/ClearCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOMStorage/ClearCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOMStorage
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOMStorage/DisableCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOMStorage/DisableCommand.cs
index 1add3ce..35d29f7 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOMStorage/DisableCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOMStorage/DisableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOMStorage
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOMStorage/DisableCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOMStorage/DisableCommandResponse.cs
index 409b8ef..620999e 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOMStorage/DisableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOMStorage/DisableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOMStorage
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOMStorage/DomStorageItemAddedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/DOMStorage/DomStorageItemAddedEvent.cs
index 439e2e5..362fe0f 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOMStorage/DomStorageItemAddedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOMStorage/DomStorageItemAddedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOMStorage
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOMStorage/DomStorageItemRemovedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/DOMStorage/DomStorageItemRemovedEvent.cs
index 8871a19..af1e179 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOMStorage/DomStorageItemRemovedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOMStorage/DomStorageItemRemovedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOMStorage
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOMStorage/DomStorageItemUpdatedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/DOMStorage/DomStorageItemUpdatedEvent.cs
index 406a402..2c3d219 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOMStorage/DomStorageItemUpdatedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOMStorage/DomStorageItemUpdatedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOMStorage
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOMStorage/DomStorageItemsClearedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/DOMStorage/DomStorageItemsClearedEvent.cs
index 75835d4..145805e 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOMStorage/DomStorageItemsClearedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOMStorage/DomStorageItemsClearedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOMStorage
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOMStorage/EnableCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOMStorage/EnableCommand.cs
index cf1732d..c587fd6 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOMStorage/EnableCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOMStorage/EnableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOMStorage
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOMStorage/EnableCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOMStorage/EnableCommandResponse.cs
index 0c46071..101c8b2 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOMStorage/EnableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOMStorage/EnableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOMStorage
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOMStorage/GetDOMStorageItemsCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOMStorage/GetDOMStorageItemsCommand.cs
index 606e821..fd64d4c 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOMStorage/GetDOMStorageItemsCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOMStorage/GetDOMStorageItemsCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOMStorage
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOMStorage/GetDOMStorageItemsCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOMStorage/GetDOMStorageItemsCommandResponse.cs
index 7cbdc58..cca1a36 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOMStorage/GetDOMStorageItemsCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOMStorage/GetDOMStorageItemsCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOMStorage
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOMStorage/RemoveDOMStorageItemCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOMStorage/RemoveDOMStorageItemCommand.cs
index a39bfd0..aab5fa0 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOMStorage/RemoveDOMStorageItemCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOMStorage/RemoveDOMStorageItemCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOMStorage
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOMStorage/RemoveDOMStorageItemCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOMStorage/RemoveDOMStorageItemCommandResponse.cs
index 9701634..2eac410 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOMStorage/RemoveDOMStorageItemCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOMStorage/RemoveDOMStorageItemCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOMStorage
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOMStorage/SetDOMStorageItemCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DOMStorage/SetDOMStorageItemCommand.cs
index ebdb11f..5cef050 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOMStorage/SetDOMStorageItemCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOMStorage/SetDOMStorageItemCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOMStorage
diff --git a/source/ChromeDevTools/Protocol/Chrome/DOMStorage/SetDOMStorageItemCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DOMStorage/SetDOMStorageItemCommandResponse.cs
index 15a09da..26df008 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DOMStorage/SetDOMStorageItemCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DOMStorage/SetDOMStorageItemCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DOMStorage
diff --git a/source/ChromeDevTools/Protocol/Chrome/Database/AddDatabaseEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Database/AddDatabaseEvent.cs
index 0855a4f..a0d706d 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Database/AddDatabaseEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Database/AddDatabaseEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Database
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Database/DisableCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Database/DisableCommand.cs
index e9cd9fb..82b7b28 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Database/DisableCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Database/DisableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Database
diff --git a/source/ChromeDevTools/Protocol/Chrome/Database/DisableCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Database/DisableCommandResponse.cs
index 72695cd..807c149 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Database/DisableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Database/DisableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Database
diff --git a/source/ChromeDevTools/Protocol/Chrome/Database/EnableCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Database/EnableCommand.cs
index 5d3352e..79f987a 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Database/EnableCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Database/EnableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Database
diff --git a/source/ChromeDevTools/Protocol/Chrome/Database/EnableCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Database/EnableCommandResponse.cs
index a50350c..62227d9 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Database/EnableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Database/EnableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Database
diff --git a/source/ChromeDevTools/Protocol/Chrome/Database/ExecuteSQLCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Database/ExecuteSQLCommand.cs
index 0350d8e..46fc6cd 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Database/ExecuteSQLCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Database/ExecuteSQLCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Database
diff --git a/source/ChromeDevTools/Protocol/Chrome/Database/ExecuteSQLCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Database/ExecuteSQLCommandResponse.cs
index e00d92a..43a2faf 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Database/ExecuteSQLCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Database/ExecuteSQLCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Database
diff --git a/source/ChromeDevTools/Protocol/Chrome/Database/GetDatabaseTableNamesCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Database/GetDatabaseTableNamesCommand.cs
index f9049ee..6340b2f 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Database/GetDatabaseTableNamesCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Database/GetDatabaseTableNamesCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Database
diff --git a/source/ChromeDevTools/Protocol/Chrome/Database/GetDatabaseTableNamesCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Database/GetDatabaseTableNamesCommandResponse.cs
index 73ef114..619d463 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Database/GetDatabaseTableNamesCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Database/GetDatabaseTableNamesCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Database
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/BreakLocation.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/BreakLocation.cs
index 73f4131..5385f23 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/BreakLocation.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/BreakLocation.cs
@@ -4,9 +4,6 @@ using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
 {
-	/// <summary>
-	/// 
-	/// </summary>
 	[SupportedBy("Chrome")]
 	public class BreakLocation
 	{
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/BreakpointResolvedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/BreakpointResolvedEvent.cs
index 96268e7..e0eeb1b 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/BreakpointResolvedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/BreakpointResolvedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/ContinueToLocationCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/ContinueToLocationCommand.cs
index fd011ce..447c11c 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/ContinueToLocationCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/ContinueToLocationCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/ContinueToLocationCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/ContinueToLocationCommandResponse.cs
index aa3c947..1050bf5 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/ContinueToLocationCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/ContinueToLocationCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/DisableCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/DisableCommand.cs
index 3c4f1da..20f517c 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/DisableCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/DisableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/DisableCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/DisableCommandResponse.cs
index 6ab912f..8551e50 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/DisableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/DisableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/EnableCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/EnableCommand.cs
index dd7e1ec..4046c9b 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/EnableCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/EnableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/EnableCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/EnableCommandResponse.cs
index 6e085b6..131fc78 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/EnableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/EnableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/EvaluateOnCallFrameCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/EvaluateOnCallFrameCommand.cs
index 620709e..be5685b 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/EvaluateOnCallFrameCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/EvaluateOnCallFrameCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/EvaluateOnCallFrameCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/EvaluateOnCallFrameCommandResponse.cs
index 018f9ce..1dd52d1 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/EvaluateOnCallFrameCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/EvaluateOnCallFrameCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/GetPossibleBreakpointsCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/GetPossibleBreakpointsCommand.cs
index 75c124b..8c5d7f0 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/GetPossibleBreakpointsCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/GetPossibleBreakpointsCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/GetPossibleBreakpointsCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/GetPossibleBreakpointsCommandResponse.cs
index a638224..3256d22 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/GetPossibleBreakpointsCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/GetPossibleBreakpointsCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/GetScriptSourceCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/GetScriptSourceCommand.cs
index a031353..d3bd516 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/GetScriptSourceCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/GetScriptSourceCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/GetScriptSourceCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/GetScriptSourceCommandResponse.cs
index 468120f..fc05ddd 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/GetScriptSourceCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/GetScriptSourceCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/PauseCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/PauseCommand.cs
index ecbab66..56ac0a5 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/PauseCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/PauseCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/PauseCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/PauseCommandResponse.cs
index eb61992..2d3847c 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/PauseCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/PauseCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/PausedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/PausedEvent.cs
index fc7d6cb..aa55a06 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/PausedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/PausedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/RemoveBreakpointCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/RemoveBreakpointCommand.cs
index c841b84..0d318bc 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/RemoveBreakpointCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/RemoveBreakpointCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/RemoveBreakpointCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/RemoveBreakpointCommandResponse.cs
index ad0a70b..7e52b3a 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/RemoveBreakpointCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/RemoveBreakpointCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/RestartFrameCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/RestartFrameCommand.cs
index c11f5e8..ee49735 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/RestartFrameCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/RestartFrameCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/RestartFrameCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/RestartFrameCommandResponse.cs
index 8d62108..1463625 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/RestartFrameCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/RestartFrameCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/ResumeCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/ResumeCommand.cs
index 7b48411..bd3e1a8 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/ResumeCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/ResumeCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/ResumeCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/ResumeCommandResponse.cs
index 1c0d07c..6f8982b 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/ResumeCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/ResumeCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/ResumedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/ResumedEvent.cs
index 4036ade..ef04a51 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/ResumedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/ResumedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/ScheduleStepIntoAsyncCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/ScheduleStepIntoAsyncCommand.cs
index 2408244..049ecfc 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/ScheduleStepIntoAsyncCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/ScheduleStepIntoAsyncCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/ScheduleStepIntoAsyncCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/ScheduleStepIntoAsyncCommandResponse.cs
index e6e5967..8d5294f 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/ScheduleStepIntoAsyncCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/ScheduleStepIntoAsyncCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/ScriptFailedToParseEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/ScriptFailedToParseEvent.cs
index a776ff4..5978df4 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/ScriptFailedToParseEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/ScriptFailedToParseEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/ScriptParsedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/ScriptParsedEvent.cs
index bf7dbea..ade281d 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/ScriptParsedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/ScriptParsedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/SearchInContentCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/SearchInContentCommand.cs
index 8f12389..fe1fe8a 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/SearchInContentCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/SearchInContentCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/SearchInContentCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/SearchInContentCommandResponse.cs
index 24ef2a6..c54f003 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/SearchInContentCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/SearchInContentCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/SetAsyncCallStackDepthCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/SetAsyncCallStackDepthCommand.cs
index 314240d..9b91aa6 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/SetAsyncCallStackDepthCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/SetAsyncCallStackDepthCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/SetAsyncCallStackDepthCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/SetAsyncCallStackDepthCommandResponse.cs
index 4c3e7e9..c34c57e 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/SetAsyncCallStackDepthCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/SetAsyncCallStackDepthCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/SetBlackboxPatternsCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/SetBlackboxPatternsCommand.cs
index 33de154..8389620 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/SetBlackboxPatternsCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/SetBlackboxPatternsCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/SetBlackboxPatternsCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/SetBlackboxPatternsCommandResponse.cs
index 845823e..f5b48b7 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/SetBlackboxPatternsCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/SetBlackboxPatternsCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/SetBlackboxedRangesCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/SetBlackboxedRangesCommand.cs
index 4a662ca..aded06f 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/SetBlackboxedRangesCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/SetBlackboxedRangesCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/SetBlackboxedRangesCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/SetBlackboxedRangesCommandResponse.cs
index 5328b56..1ed0a78 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/SetBlackboxedRangesCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/SetBlackboxedRangesCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/SetBreakpointByUrlCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/SetBreakpointByUrlCommand.cs
index da7207f..76dc4e8 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/SetBreakpointByUrlCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/SetBreakpointByUrlCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/SetBreakpointByUrlCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/SetBreakpointByUrlCommandResponse.cs
index a2509da..f4ad5c6 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/SetBreakpointByUrlCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/SetBreakpointByUrlCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/SetBreakpointCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/SetBreakpointCommand.cs
index 09a2dcf..67efa55 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/SetBreakpointCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/SetBreakpointCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/SetBreakpointCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/SetBreakpointCommandResponse.cs
index 8128133..906dbbb 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/SetBreakpointCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/SetBreakpointCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/SetBreakpointsActiveCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/SetBreakpointsActiveCommand.cs
index b93daf0..9c9f4e0 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/SetBreakpointsActiveCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/SetBreakpointsActiveCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/SetBreakpointsActiveCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/SetBreakpointsActiveCommandResponse.cs
index 163fbb6..4de2651 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/SetBreakpointsActiveCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/SetBreakpointsActiveCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/SetPauseOnExceptionsCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/SetPauseOnExceptionsCommand.cs
index 815e85d..1680ecb 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/SetPauseOnExceptionsCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/SetPauseOnExceptionsCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/SetPauseOnExceptionsCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/SetPauseOnExceptionsCommandResponse.cs
index 9781b47..906d6a7 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/SetPauseOnExceptionsCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/SetPauseOnExceptionsCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/SetScriptSourceCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/SetScriptSourceCommand.cs
index 8af5fae..d5547c4 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/SetScriptSourceCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/SetScriptSourceCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/SetScriptSourceCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/SetScriptSourceCommandResponse.cs
index 33a9acd..7c84ef6 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/SetScriptSourceCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/SetScriptSourceCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/SetSkipAllPausesCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/SetSkipAllPausesCommand.cs
index f8a05b4..d1861ad 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/SetSkipAllPausesCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/SetSkipAllPausesCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/SetSkipAllPausesCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/SetSkipAllPausesCommandResponse.cs
index 2b39f5a..39e151d 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/SetSkipAllPausesCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/SetSkipAllPausesCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/SetVariableValueCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/SetVariableValueCommand.cs
index 580406b..9c81660 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/SetVariableValueCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/SetVariableValueCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/SetVariableValueCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/SetVariableValueCommandResponse.cs
index 0d83753..ac95733 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/SetVariableValueCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/SetVariableValueCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/StepIntoCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/StepIntoCommand.cs
index 607694c..c4586f7 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/StepIntoCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/StepIntoCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/StepIntoCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/StepIntoCommandResponse.cs
index ab682cb..9413117 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/StepIntoCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/StepIntoCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/StepOutCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/StepOutCommand.cs
index 3e49c2f..fe05af1 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/StepOutCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/StepOutCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/StepOutCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/StepOutCommandResponse.cs
index 0583aef..d121c60 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/StepOutCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/StepOutCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/StepOverCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/StepOverCommand.cs
index bfecf2e..dd4f97d 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/StepOverCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/StepOverCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/Debugger/StepOverCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Debugger/StepOverCommandResponse.cs
index abc609a..60402f8 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Debugger/StepOverCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Debugger/StepOverCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Debugger
diff --git a/source/ChromeDevTools/Protocol/Chrome/DeviceOrientation/ClearDeviceOrientationOverrideCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DeviceOrientation/ClearDeviceOrientationOverrideCommand.cs
index 95bae6a..154397f 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DeviceOrientation/ClearDeviceOrientationOverrideCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DeviceOrientation/ClearDeviceOrientationOverrideCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DeviceOrientation
diff --git a/source/ChromeDevTools/Protocol/Chrome/DeviceOrientation/ClearDeviceOrientationOverrideCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DeviceOrientation/ClearDeviceOrientationOverrideCommandResponse.cs
index f3a0582..7024fd7 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DeviceOrientation/ClearDeviceOrientationOverrideCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DeviceOrientation/ClearDeviceOrientationOverrideCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DeviceOrientation
diff --git a/source/ChromeDevTools/Protocol/Chrome/DeviceOrientation/SetDeviceOrientationOverrideCommand.cs b/source/ChromeDevTools/Protocol/Chrome/DeviceOrientation/SetDeviceOrientationOverrideCommand.cs
index bb9b4c0..8c5dc88 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DeviceOrientation/SetDeviceOrientationOverrideCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DeviceOrientation/SetDeviceOrientationOverrideCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DeviceOrientation
diff --git a/source/ChromeDevTools/Protocol/Chrome/DeviceOrientation/SetDeviceOrientationOverrideCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/DeviceOrientation/SetDeviceOrientationOverrideCommandResponse.cs
index 4c0bc78..5ee189f 100644
--- a/source/ChromeDevTools/Protocol/Chrome/DeviceOrientation/SetDeviceOrientationOverrideCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/DeviceOrientation/SetDeviceOrientationOverrideCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.DeviceOrientation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Emulation/CanEmulateCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Emulation/CanEmulateCommand.cs
index 498e7dd..448d406 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Emulation/CanEmulateCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Emulation/CanEmulateCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Emulation/CanEmulateCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Emulation/CanEmulateCommandResponse.cs
index f552bf5..1b6c42f 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Emulation/CanEmulateCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Emulation/CanEmulateCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Emulation/ClearDeviceMetricsOverrideCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Emulation/ClearDeviceMetricsOverrideCommand.cs
index e77d07b..957ff8f 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Emulation/ClearDeviceMetricsOverrideCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Emulation/ClearDeviceMetricsOverrideCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Emulation/ClearDeviceMetricsOverrideCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Emulation/ClearDeviceMetricsOverrideCommandResponse.cs
index 60dab23..be18103 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Emulation/ClearDeviceMetricsOverrideCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Emulation/ClearDeviceMetricsOverrideCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Emulation/ClearGeolocationOverrideCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Emulation/ClearGeolocationOverrideCommand.cs
index 459febd..f20f3aa 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Emulation/ClearGeolocationOverrideCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Emulation/ClearGeolocationOverrideCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Emulation/ClearGeolocationOverrideCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Emulation/ClearGeolocationOverrideCommandResponse.cs
index 9947edb..a39e752 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Emulation/ClearGeolocationOverrideCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Emulation/ClearGeolocationOverrideCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Emulation/ForceViewportCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Emulation/ForceViewportCommand.cs
deleted file mode 100644
index f33be9c..0000000
--- a/source/ChromeDevTools/Protocol/Chrome/Emulation/ForceViewportCommand.cs
+++ /dev/null
@@ -1,27 +0,0 @@
-using MasterDevs.ChromeDevTools;
-using Newtonsoft.Json;
-using System.Collections.Generic;
-
-namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation
-{
-	/// <summary>
-	/// Overrides the visible area of the page. The change is hidden from the page, i.e. the observable scroll position and page scale does not change. In effect, the command moves the specified area of the page into the top-left corner of the frame.
-	/// </summary>
-	[Command(ProtocolName.Emulation.ForceViewport)]
-	[SupportedBy("Chrome")]
-	public class ForceViewportCommand: ICommand<ForceViewportCommandResponse>
-	{
-		/// <summary>
-		/// Gets or sets X coordinate of top-left corner of the area (CSS pixels).
-		/// </summary>
-		public double X { get; set; }
-		/// <summary>
-		/// Gets or sets Y coordinate of top-left corner of the area (CSS pixels).
-		/// </summary>
-		public double Y { get; set; }
-		/// <summary>
-		/// Gets or sets Scale to apply to the area (relative to a page scale of 1.0).
-		/// </summary>
-		public double Scale { get; set; }
-	}
-}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Emulation/ForceViewportCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Emulation/ForceViewportCommandResponse.cs
deleted file mode 100644
index 8e99770..0000000
--- a/source/ChromeDevTools/Protocol/Chrome/Emulation/ForceViewportCommandResponse.cs
+++ /dev/null
@@ -1,15 +0,0 @@
-using MasterDevs.ChromeDevTools;
-using Newtonsoft.Json;
-using System.Collections.Generic;
-
-namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation
-{
-	/// <summary>
-	/// Overrides the visible area of the page. The change is hidden from the page, i.e. the observable scroll position and page scale does not change. In effect, the command moves the specified area of the page into the top-left corner of the frame.
-	/// </summary>
-	[CommandResponse(ProtocolName.Emulation.ForceViewport)]
-	[SupportedBy("Chrome")]
-	public class ForceViewportCommandResponse
-	{
-	}
-}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Emulation/ResetPageScaleFactorCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Emulation/ResetPageScaleFactorCommand.cs
index a8658e8..34f1758 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Emulation/ResetPageScaleFactorCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Emulation/ResetPageScaleFactorCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Emulation/ResetPageScaleFactorCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Emulation/ResetPageScaleFactorCommandResponse.cs
index 79efdde..256fe36 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Emulation/ResetPageScaleFactorCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Emulation/ResetPageScaleFactorCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Emulation/ResetViewportCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Emulation/ResetViewportCommand.cs
deleted file mode 100644
index 551178e..0000000
--- a/source/ChromeDevTools/Protocol/Chrome/Emulation/ResetViewportCommand.cs
+++ /dev/null
@@ -1,15 +0,0 @@
-using MasterDevs.ChromeDevTools;
-using Newtonsoft.Json;
-using System.Collections.Generic;
-
-namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation
-{
-	/// <summary>
-	/// Resets the visible area of the page to the original viewport, undoing any effects of the <code>forceViewport</code> command.
-	/// </summary>
-	[Command(ProtocolName.Emulation.ResetViewport)]
-	[SupportedBy("Chrome")]
-	public class ResetViewportCommand: ICommand<ResetViewportCommandResponse>
-	{
-	}
-}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Emulation/ResetViewportCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Emulation/ResetViewportCommandResponse.cs
deleted file mode 100644
index 8a044f8..0000000
--- a/source/ChromeDevTools/Protocol/Chrome/Emulation/ResetViewportCommandResponse.cs
+++ /dev/null
@@ -1,15 +0,0 @@
-using MasterDevs.ChromeDevTools;
-using Newtonsoft.Json;
-using System.Collections.Generic;
-
-namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation
-{
-	/// <summary>
-	/// Resets the visible area of the page to the original viewport, undoing any effects of the <code>forceViewport</code> command.
-	/// </summary>
-	[CommandResponse(ProtocolName.Emulation.ResetViewport)]
-	[SupportedBy("Chrome")]
-	public class ResetViewportCommandResponse
-	{
-	}
-}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetCPUThrottlingRateCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetCPUThrottlingRateCommand.cs
index 4effc0b..6e09cfc 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetCPUThrottlingRateCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetCPUThrottlingRateCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetCPUThrottlingRateCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetCPUThrottlingRateCommandResponse.cs
index c003b34..101a158 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetCPUThrottlingRateCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetCPUThrottlingRateCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetDefaultBackgroundColorOverrideCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetDefaultBackgroundColorOverrideCommand.cs
index 75a4548..c84d352 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetDefaultBackgroundColorOverrideCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetDefaultBackgroundColorOverrideCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetDefaultBackgroundColorOverrideCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetDefaultBackgroundColorOverrideCommandResponse.cs
index b56cc28..eb49679 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetDefaultBackgroundColorOverrideCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetDefaultBackgroundColorOverrideCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetDeviceMetricsOverrideCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetDeviceMetricsOverrideCommand.cs
index 22cc8ae..5101979 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetDeviceMetricsOverrideCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetDeviceMetricsOverrideCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation
@@ -28,25 +29,11 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation
 		/// </summary>
 		public bool Mobile { get; set; }
 		/// <summary>
-		/// Gets or sets Whether a view that exceeds the available browser window area should be scaled down to fit.
-		/// </summary>
-		public bool FitWindow { get; set; }
-		/// <summary>
 		/// Gets or sets Scale to apply to resulting view image. Ignored in |fitWindow| mode.
 		/// </summary>
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
 		public double Scale { get; set; }
 		/// <summary>
-		/// Gets or sets Not used.
-		/// </summary>
-		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
-		public double OffsetX { get; set; }
-		/// <summary>
-		/// Gets or sets Not used.
-		/// </summary>
-		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
-		public double OffsetY { get; set; }
-		/// <summary>
 		/// Gets or sets Overriding screen width value in pixels (minimum 0, maximum 10000000). Only used for |mobile==true|.
 		/// </summary>
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
@@ -67,6 +54,11 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
 		public long? PositionY { get; set; }
 		/// <summary>
+		/// Gets or sets Do not set visible view size, rely upon explicit setVisibleSize call.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public bool? DontSetVisibleSize { get; set; }
+		/// <summary>
 		/// Gets or sets Screen orientation override.
 		/// </summary>
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
diff --git a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetDeviceMetricsOverrideCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetDeviceMetricsOverrideCommandResponse.cs
index 213bb2d..841e181 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetDeviceMetricsOverrideCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetDeviceMetricsOverrideCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetEmitTouchEventsForMouseCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetEmitTouchEventsForMouseCommand.cs
new file mode 100644
index 0000000..48fa9df
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetEmitTouchEventsForMouseCommand.cs
@@ -0,0 +1,22 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation
+{
+	[Command(ProtocolName.Emulation.SetEmitTouchEventsForMouse)]
+	[SupportedBy("Chrome")]
+	public class SetEmitTouchEventsForMouseCommand: ICommand<SetEmitTouchEventsForMouseCommandResponse>
+	{
+		/// <summary>
+		/// Gets or sets Whether touch emulation based on mouse input should be enabled.
+		/// </summary>
+		public bool Enabled { get; set; }
+		/// <summary>
+		/// Gets or sets Touch/gesture events configuration. Default: current platform.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string Configuration { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetEmitTouchEventsForMouseCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetEmitTouchEventsForMouseCommandResponse.cs
new file mode 100644
index 0000000..3f08013
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetEmitTouchEventsForMouseCommandResponse.cs
@@ -0,0 +1,13 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation
+{
+	[CommandResponse(ProtocolName.Emulation.SetEmitTouchEventsForMouse)]
+	[SupportedBy("Chrome")]
+	public class SetEmitTouchEventsForMouseCommandResponse
+	{
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetEmulatedMediaCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetEmulatedMediaCommand.cs
index 2b941b6..49bceca 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetEmulatedMediaCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetEmulatedMediaCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetEmulatedMediaCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetEmulatedMediaCommandResponse.cs
index ed76c9c..17ee14e 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetEmulatedMediaCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetEmulatedMediaCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetGeolocationOverrideCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetGeolocationOverrideCommand.cs
index 3ce4123..0bd7eb3 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetGeolocationOverrideCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetGeolocationOverrideCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetGeolocationOverrideCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetGeolocationOverrideCommandResponse.cs
index f30b48e..cfecf5c 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetGeolocationOverrideCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetGeolocationOverrideCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetPageScaleFactorCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetPageScaleFactorCommand.cs
index f0e57f7..44622bd 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetPageScaleFactorCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetPageScaleFactorCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetPageScaleFactorCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetPageScaleFactorCommandResponse.cs
index 8ea2781..fa628a1 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetPageScaleFactorCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetPageScaleFactorCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetScriptExecutionDisabledCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetScriptExecutionDisabledCommand.cs
index bad31db..35ff798 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetScriptExecutionDisabledCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetScriptExecutionDisabledCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetScriptExecutionDisabledCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetScriptExecutionDisabledCommandResponse.cs
index 5e7ee6b..49e656d 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetScriptExecutionDisabledCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetScriptExecutionDisabledCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetTouchEmulationEnabledCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetTouchEmulationEnabledCommand.cs
index cfa269b..6265b9a 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetTouchEmulationEnabledCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetTouchEmulationEnabledCommand.cs
@@ -1,11 +1,12 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation
 {
 	/// <summary>
-	/// Toggles mouse event-based touch event emulation.
+	/// Enables touch on platforms which do not support them.
 	/// </summary>
 	[Command(ProtocolName.Emulation.SetTouchEmulationEnabled)]
 	[SupportedBy("Chrome")]
@@ -16,9 +17,9 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation
 		/// </summary>
 		public bool Enabled { get; set; }
 		/// <summary>
-		/// Gets or sets Touch/gesture events configuration. Default: current platform.
+		/// Gets or sets Maximum touch points supported. Defaults to one.
 		/// </summary>
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
-		public string Configuration { get; set; }
+		public long? MaxTouchPoints { get; set; }
 	}
 }
diff --git a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetTouchEmulationEnabledCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetTouchEmulationEnabledCommandResponse.cs
index 9d73481..a0ec08d 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetTouchEmulationEnabledCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetTouchEmulationEnabledCommandResponse.cs
@@ -1,11 +1,12 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation
 {
 	/// <summary>
-	/// Toggles mouse event-based touch event emulation.
+	/// Enables touch on platforms which do not support them.
 	/// </summary>
 	[CommandResponse(ProtocolName.Emulation.SetTouchEmulationEnabled)]
 	[SupportedBy("Chrome")]
diff --git a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetVirtualTimePolicyCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetVirtualTimePolicyCommand.cs
index 5ee5996..7bc2063 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetVirtualTimePolicyCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetVirtualTimePolicyCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetVirtualTimePolicyCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetVirtualTimePolicyCommandResponse.cs
index 93e68a7..76029d7 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetVirtualTimePolicyCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetVirtualTimePolicyCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation
diff --git a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetVisibleSizeCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetVisibleSizeCommand.cs
index 28efd57..549ecc3 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetVisibleSizeCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetVisibleSizeCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation
@@ -7,6 +8,7 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation
 	/// <summary>
 	/// Resizes the frame/viewport of the page. Note that this does not affect the frame's container (e.g. browser window). Can be used to produce screenshots of the specified size. Not supported on Android.
 	/// </summary>
+	[Obsolete]
 	[Command(ProtocolName.Emulation.SetVisibleSize)]
 	[SupportedBy("Chrome")]
 	public class SetVisibleSizeCommand: ICommand<SetVisibleSizeCommandResponse>
diff --git a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetVisibleSizeCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetVisibleSizeCommandResponse.cs
index 034134d..ad6636e 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Emulation/SetVisibleSizeCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Emulation/SetVisibleSizeCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation
@@ -7,6 +8,7 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation
 	/// <summary>
 	/// Resizes the frame/viewport of the page. Note that this does not affect the frame's container (e.g. browser window). Can be used to produce screenshots of the specified size. Not supported on Android.
 	/// </summary>
+	[Obsolete]
 	[CommandResponse(ProtocolName.Emulation.SetVisibleSize)]
 	[SupportedBy("Chrome")]
 	public class SetVisibleSizeCommandResponse
diff --git a/source/ChromeDevTools/Protocol/Chrome/Emulation/VirtualTimeBudgetExpiredEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Emulation/VirtualTimeBudgetExpiredEvent.cs
index 15d2a7c..624cedd 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Emulation/VirtualTimeBudgetExpiredEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Emulation/VirtualTimeBudgetExpiredEvent.cs
@@ -1,9 +1,11 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation
 {
 	/// <summary>
-	/// Notification sent after the virual time budget for the current VirtualTimePolicy has run out.
+	/// Notification sent after the virtual time budget for the current VirtualTimePolicy has run out.
 	/// </summary>
 	[Event(ProtocolName.Emulation.VirtualTimeBudgetExpired)]
 	[SupportedBy("Chrome")]
diff --git a/source/ChromeDevTools/Protocol/Chrome/Emulation/VirtualTimePausedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Emulation/VirtualTimePausedEvent.cs
new file mode 100644
index 0000000..c12c3ed
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Emulation/VirtualTimePausedEvent.cs
@@ -0,0 +1,19 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation
+{
+	/// <summary>
+	/// Notification sent after the virtual time has paused.
+	/// </summary>
+	[Event(ProtocolName.Emulation.VirtualTimePaused)]
+	[SupportedBy("Chrome")]
+	public class VirtualTimePausedEvent
+	{
+		/// <summary>
+		/// Gets or sets The amount of virtual time that has elapsed in milliseconds since virtual time was first enabled.
+		/// </summary>
+		public long VirtualTimeElapsed { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/AddHeapSnapshotChunkEvent.cs b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/AddHeapSnapshotChunkEvent.cs
index 7225b45..d7d3f06 100644
--- a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/AddHeapSnapshotChunkEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/AddHeapSnapshotChunkEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.HeapProfiler
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/AddInspectedHeapObjectCommand.cs b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/AddInspectedHeapObjectCommand.cs
index 61c6750..7091f23 100644
--- a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/AddInspectedHeapObjectCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/AddInspectedHeapObjectCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.HeapProfiler
diff --git a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/AddInspectedHeapObjectCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/AddInspectedHeapObjectCommandResponse.cs
index 20f006f..8242e51 100644
--- a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/AddInspectedHeapObjectCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/AddInspectedHeapObjectCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.HeapProfiler
diff --git a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/CollectGarbageCommand.cs b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/CollectGarbageCommand.cs
index cc559b1..9de89df 100644
--- a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/CollectGarbageCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/CollectGarbageCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.HeapProfiler
diff --git a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/CollectGarbageCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/CollectGarbageCommandResponse.cs
index 962b5df..e309d5d 100644
--- a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/CollectGarbageCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/CollectGarbageCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.HeapProfiler
diff --git a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/DisableCommand.cs b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/DisableCommand.cs
index fdeb4c1..550d5e3 100644
--- a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/DisableCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/DisableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.HeapProfiler
diff --git a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/DisableCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/DisableCommandResponse.cs
index 56552d4..e2cb7c9 100644
--- a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/DisableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/DisableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.HeapProfiler
diff --git a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/EnableCommand.cs b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/EnableCommand.cs
index f8ab155..38a8c3e 100644
--- a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/EnableCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/EnableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.HeapProfiler
diff --git a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/EnableCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/EnableCommandResponse.cs
index bc5e6cc..c11d2e4 100644
--- a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/EnableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/EnableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.HeapProfiler
diff --git a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/GetHeapObjectIdCommand.cs b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/GetHeapObjectIdCommand.cs
index b2d840e..56a5484 100644
--- a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/GetHeapObjectIdCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/GetHeapObjectIdCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.HeapProfiler
diff --git a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/GetHeapObjectIdCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/GetHeapObjectIdCommandResponse.cs
index 5338378..208ae45 100644
--- a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/GetHeapObjectIdCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/GetHeapObjectIdCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.HeapProfiler
diff --git a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/GetObjectByHeapObjectIdCommand.cs b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/GetObjectByHeapObjectIdCommand.cs
index 7b45fdf..6852b25 100644
--- a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/GetObjectByHeapObjectIdCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/GetObjectByHeapObjectIdCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.HeapProfiler
diff --git a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/GetObjectByHeapObjectIdCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/GetObjectByHeapObjectIdCommandResponse.cs
index 53aa7a7..70f24a4 100644
--- a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/GetObjectByHeapObjectIdCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/GetObjectByHeapObjectIdCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.HeapProfiler
diff --git a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/HeapStatsUpdateEvent.cs b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/HeapStatsUpdateEvent.cs
index 9673f30..fedaa00 100644
--- a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/HeapStatsUpdateEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/HeapStatsUpdateEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.HeapProfiler
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/LastSeenObjectIdEvent.cs b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/LastSeenObjectIdEvent.cs
index 95652d7..e8d40cc 100644
--- a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/LastSeenObjectIdEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/LastSeenObjectIdEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.HeapProfiler
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/ReportHeapSnapshotProgressEvent.cs b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/ReportHeapSnapshotProgressEvent.cs
index 7c4bbfa..f383a77 100644
--- a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/ReportHeapSnapshotProgressEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/ReportHeapSnapshotProgressEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.HeapProfiler
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/ResetProfilesEvent.cs b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/ResetProfilesEvent.cs
index 934668a..4413d63 100644
--- a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/ResetProfilesEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/ResetProfilesEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.HeapProfiler
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/StartSamplingCommand.cs b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/StartSamplingCommand.cs
index 0cb0c1d..f6a5b15 100644
--- a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/StartSamplingCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/StartSamplingCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.HeapProfiler
diff --git a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/StartSamplingCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/StartSamplingCommandResponse.cs
index 52b6e8a..a81e884 100644
--- a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/StartSamplingCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/StartSamplingCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.HeapProfiler
diff --git a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/StartTrackingHeapObjectsCommand.cs b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/StartTrackingHeapObjectsCommand.cs
index c502f7f..71ca98e 100644
--- a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/StartTrackingHeapObjectsCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/StartTrackingHeapObjectsCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.HeapProfiler
diff --git a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/StartTrackingHeapObjectsCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/StartTrackingHeapObjectsCommandResponse.cs
index 1a28c2b..5a075c4 100644
--- a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/StartTrackingHeapObjectsCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/StartTrackingHeapObjectsCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.HeapProfiler
diff --git a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/StopSamplingCommand.cs b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/StopSamplingCommand.cs
index 8ea24df..171c7e9 100644
--- a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/StopSamplingCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/StopSamplingCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.HeapProfiler
diff --git a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/StopSamplingCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/StopSamplingCommandResponse.cs
index f575385..0056cde 100644
--- a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/StopSamplingCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/StopSamplingCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.HeapProfiler
diff --git a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/StopTrackingHeapObjectsCommand.cs b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/StopTrackingHeapObjectsCommand.cs
index a24b215..f33c882 100644
--- a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/StopTrackingHeapObjectsCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/StopTrackingHeapObjectsCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.HeapProfiler
diff --git a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/StopTrackingHeapObjectsCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/StopTrackingHeapObjectsCommandResponse.cs
index 5f93837..bac2fb1 100644
--- a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/StopTrackingHeapObjectsCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/StopTrackingHeapObjectsCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.HeapProfiler
diff --git a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/TakeHeapSnapshotCommand.cs b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/TakeHeapSnapshotCommand.cs
index 39df4cd..ac65294 100644
--- a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/TakeHeapSnapshotCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/TakeHeapSnapshotCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.HeapProfiler
diff --git a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/TakeHeapSnapshotCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/TakeHeapSnapshotCommandResponse.cs
index 6db471e..8a7e507 100644
--- a/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/TakeHeapSnapshotCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/HeapProfiler/TakeHeapSnapshotCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.HeapProfiler
diff --git a/source/ChromeDevTools/Protocol/Chrome/IO/CloseCommand.cs b/source/ChromeDevTools/Protocol/Chrome/IO/CloseCommand.cs
index 4d913ad..8d157af 100644
--- a/source/ChromeDevTools/Protocol/Chrome/IO/CloseCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/IO/CloseCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.IO
diff --git a/source/ChromeDevTools/Protocol/Chrome/IO/CloseCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/IO/CloseCommandResponse.cs
index 6bd9141..072b91f 100644
--- a/source/ChromeDevTools/Protocol/Chrome/IO/CloseCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/IO/CloseCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.IO
diff --git a/source/ChromeDevTools/Protocol/Chrome/IO/ReadCommand.cs b/source/ChromeDevTools/Protocol/Chrome/IO/ReadCommand.cs
index bc580ff..c4c1c97 100644
--- a/source/ChromeDevTools/Protocol/Chrome/IO/ReadCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/IO/ReadCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.IO
diff --git a/source/ChromeDevTools/Protocol/Chrome/IO/ReadCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/IO/ReadCommandResponse.cs
index 349dda7..20b62c5 100644
--- a/source/ChromeDevTools/Protocol/Chrome/IO/ReadCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/IO/ReadCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.IO
@@ -11,6 +12,11 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.IO
 	[SupportedBy("Chrome")]
 	public class ReadCommandResponse
 	{
+		/// <summary>
+		/// Gets or sets Set if the data is base64-encoded
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public bool? Base64Encoded { get; set; }
 		/// <summary>
 		/// Gets or sets Data that were read.
 		/// </summary>
diff --git a/source/ChromeDevTools/Protocol/Chrome/IO/ResolveBlobCommand.cs b/source/ChromeDevTools/Protocol/Chrome/IO/ResolveBlobCommand.cs
new file mode 100644
index 0000000..7fc723f
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/IO/ResolveBlobCommand.cs
@@ -0,0 +1,20 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.IO
+{
+	/// <summary>
+	/// Return UUID of Blob object specified by a remote object id.
+	/// </summary>
+	[Command(ProtocolName.IO.ResolveBlob)]
+	[SupportedBy("Chrome")]
+	public class ResolveBlobCommand: ICommand<ResolveBlobCommandResponse>
+	{
+		/// <summary>
+		/// Gets or sets Object id of a Blob object wrapper.
+		/// </summary>
+		public string ObjectId { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/IO/ResolveBlobCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/IO/ResolveBlobCommandResponse.cs
new file mode 100644
index 0000000..6362ec0
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/IO/ResolveBlobCommandResponse.cs
@@ -0,0 +1,20 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.IO
+{
+	/// <summary>
+	/// Return UUID of Blob object specified by a remote object id.
+	/// </summary>
+	[CommandResponse(ProtocolName.IO.ResolveBlob)]
+	[SupportedBy("Chrome")]
+	public class ResolveBlobCommandResponse
+	{
+		/// <summary>
+		/// Gets or sets UUID of the specified Blob.
+		/// </summary>
+		public string Uuid { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/IndexedDB/ClearObjectStoreCommand.cs b/source/ChromeDevTools/Protocol/Chrome/IndexedDB/ClearObjectStoreCommand.cs
index 90ac71a..762eba7 100644
--- a/source/ChromeDevTools/Protocol/Chrome/IndexedDB/ClearObjectStoreCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/IndexedDB/ClearObjectStoreCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.IndexedDB
diff --git a/source/ChromeDevTools/Protocol/Chrome/IndexedDB/ClearObjectStoreCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/IndexedDB/ClearObjectStoreCommandResponse.cs
index d4711a1..10f56bc 100644
--- a/source/ChromeDevTools/Protocol/Chrome/IndexedDB/ClearObjectStoreCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/IndexedDB/ClearObjectStoreCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.IndexedDB
diff --git a/source/ChromeDevTools/Protocol/Chrome/IndexedDB/DeleteDatabaseCommand.cs b/source/ChromeDevTools/Protocol/Chrome/IndexedDB/DeleteDatabaseCommand.cs
index c72b7c5..4d6197d 100644
--- a/source/ChromeDevTools/Protocol/Chrome/IndexedDB/DeleteDatabaseCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/IndexedDB/DeleteDatabaseCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.IndexedDB
diff --git a/source/ChromeDevTools/Protocol/Chrome/IndexedDB/DeleteDatabaseCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/IndexedDB/DeleteDatabaseCommandResponse.cs
index 7d9cca3..c9dfea5 100644
--- a/source/ChromeDevTools/Protocol/Chrome/IndexedDB/DeleteDatabaseCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/IndexedDB/DeleteDatabaseCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.IndexedDB
diff --git a/source/ChromeDevTools/Protocol/Chrome/IndexedDB/DisableCommand.cs b/source/ChromeDevTools/Protocol/Chrome/IndexedDB/DisableCommand.cs
index 34ccea4..1c6fd14 100644
--- a/source/ChromeDevTools/Protocol/Chrome/IndexedDB/DisableCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/IndexedDB/DisableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.IndexedDB
diff --git a/source/ChromeDevTools/Protocol/Chrome/IndexedDB/DisableCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/IndexedDB/DisableCommandResponse.cs
index 8411618..feb7008 100644
--- a/source/ChromeDevTools/Protocol/Chrome/IndexedDB/DisableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/IndexedDB/DisableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.IndexedDB
diff --git a/source/ChromeDevTools/Protocol/Chrome/IndexedDB/EnableCommand.cs b/source/ChromeDevTools/Protocol/Chrome/IndexedDB/EnableCommand.cs
index a799505..7f542c6 100644
--- a/source/ChromeDevTools/Protocol/Chrome/IndexedDB/EnableCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/IndexedDB/EnableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.IndexedDB
diff --git a/source/ChromeDevTools/Protocol/Chrome/IndexedDB/EnableCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/IndexedDB/EnableCommandResponse.cs
index aae2448..e931580 100644
--- a/source/ChromeDevTools/Protocol/Chrome/IndexedDB/EnableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/IndexedDB/EnableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.IndexedDB
diff --git a/source/ChromeDevTools/Protocol/Chrome/IndexedDB/RequestDataCommand.cs b/source/ChromeDevTools/Protocol/Chrome/IndexedDB/RequestDataCommand.cs
index 5cde7b3..1f055d3 100644
--- a/source/ChromeDevTools/Protocol/Chrome/IndexedDB/RequestDataCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/IndexedDB/RequestDataCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.IndexedDB
diff --git a/source/ChromeDevTools/Protocol/Chrome/IndexedDB/RequestDataCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/IndexedDB/RequestDataCommandResponse.cs
index b3f3d09..9be5a6d 100644
--- a/source/ChromeDevTools/Protocol/Chrome/IndexedDB/RequestDataCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/IndexedDB/RequestDataCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.IndexedDB
diff --git a/source/ChromeDevTools/Protocol/Chrome/IndexedDB/RequestDatabaseCommand.cs b/source/ChromeDevTools/Protocol/Chrome/IndexedDB/RequestDatabaseCommand.cs
index 816b801..4c06f46 100644
--- a/source/ChromeDevTools/Protocol/Chrome/IndexedDB/RequestDatabaseCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/IndexedDB/RequestDatabaseCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.IndexedDB
diff --git a/source/ChromeDevTools/Protocol/Chrome/IndexedDB/RequestDatabaseCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/IndexedDB/RequestDatabaseCommandResponse.cs
index 0f41551..08047a1 100644
--- a/source/ChromeDevTools/Protocol/Chrome/IndexedDB/RequestDatabaseCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/IndexedDB/RequestDatabaseCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.IndexedDB
diff --git a/source/ChromeDevTools/Protocol/Chrome/IndexedDB/RequestDatabaseNamesCommand.cs b/source/ChromeDevTools/Protocol/Chrome/IndexedDB/RequestDatabaseNamesCommand.cs
index 4746319..8b0ccc6 100644
--- a/source/ChromeDevTools/Protocol/Chrome/IndexedDB/RequestDatabaseNamesCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/IndexedDB/RequestDatabaseNamesCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.IndexedDB
diff --git a/source/ChromeDevTools/Protocol/Chrome/IndexedDB/RequestDatabaseNamesCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/IndexedDB/RequestDatabaseNamesCommandResponse.cs
index 86a5d53..5d833f1 100644
--- a/source/ChromeDevTools/Protocol/Chrome/IndexedDB/RequestDatabaseNamesCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/IndexedDB/RequestDatabaseNamesCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.IndexedDB
diff --git a/source/ChromeDevTools/Protocol/Chrome/Input/DispatchKeyEventCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Input/DispatchKeyEventCommand.cs
index 306544e..aa4029c 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Input/DispatchKeyEventCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Input/DispatchKeyEventCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Input
@@ -21,7 +22,7 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Input
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
 		public long? Modifiers { get; set; }
 		/// <summary>
-		/// Gets or sets Time at which the event occurred. Measured in UTC time in seconds since January 1, 1970 (default: current time).
+		/// Gets or sets Time at which the event occurred.
 		/// </summary>
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
 		public double Timestamp { get; set; }
diff --git a/source/ChromeDevTools/Protocol/Chrome/Input/DispatchKeyEventCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Input/DispatchKeyEventCommandResponse.cs
index 9213281..5dcfcd6 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Input/DispatchKeyEventCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Input/DispatchKeyEventCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Input
diff --git a/source/ChromeDevTools/Protocol/Chrome/Input/DispatchMouseEventCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Input/DispatchMouseEventCommand.cs
index 4d8b6ec..e97b57d 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Input/DispatchMouseEventCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Input/DispatchMouseEventCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Input
@@ -16,20 +17,20 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Input
 		/// </summary>
 		public string Type { get; set; }
 		/// <summary>
-		/// Gets or sets X coordinate of the event relative to the main frame's viewport.
+		/// Gets or sets X coordinate of the event relative to the main frame's viewport in CSS pixels.
 		/// </summary>
-		public long X { get; set; }
+		public double X { get; set; }
 		/// <summary>
-		/// Gets or sets Y coordinate of the event relative to the main frame's viewport. 0 refers to the top of the viewport and Y increases as it proceeds towards the bottom of the viewport.
+		/// Gets or sets Y coordinate of the event relative to the main frame's viewport in CSS pixels. 0 refers to the top of the viewport and Y increases as it proceeds towards the bottom of the viewport.
 		/// </summary>
-		public long Y { get; set; }
+		public double Y { get; set; }
 		/// <summary>
 		/// Gets or sets Bit field representing pressed modifier keys. Alt=1, Ctrl=2, Meta/Command=4, Shift=8 (default: 0).
 		/// </summary>
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
 		public long? Modifiers { get; set; }
 		/// <summary>
-		/// Gets or sets Time at which the event occurred. Measured in UTC time in seconds since January 1, 1970 (default: current time).
+		/// Gets or sets Time at which the event occurred.
 		/// </summary>
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
 		public double Timestamp { get; set; }
@@ -43,5 +44,15 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Input
 		/// </summary>
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
 		public long? ClickCount { get; set; }
+		/// <summary>
+		/// Gets or sets X delta in CSS pixels for mouse wheel event (default: 0).
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public double DeltaX { get; set; }
+		/// <summary>
+		/// Gets or sets Y delta in CSS pixels for mouse wheel event (default: 0).
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public double DeltaY { get; set; }
 	}
 }
diff --git a/source/ChromeDevTools/Protocol/Chrome/Input/DispatchMouseEventCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Input/DispatchMouseEventCommandResponse.cs
index 5302b3f..61cb0e8 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Input/DispatchMouseEventCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Input/DispatchMouseEventCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Input
diff --git a/source/ChromeDevTools/Protocol/Chrome/Input/DispatchTouchEventCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Input/DispatchTouchEventCommand.cs
index 5eb1805..9917f39 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Input/DispatchTouchEventCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Input/DispatchTouchEventCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Input
@@ -12,11 +13,11 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Input
 	public class DispatchTouchEventCommand: ICommand<DispatchTouchEventCommandResponse>
 	{
 		/// <summary>
-		/// Gets or sets Type of the touch event.
+		/// Gets or sets Type of the touch event. TouchEnd and TouchCancel must not contain any touch points, while TouchStart and TouchMove must contains at least one.
 		/// </summary>
 		public string Type { get; set; }
 		/// <summary>
-		/// Gets or sets Touch points.
+		/// Gets or sets Active touch points on the touch device. One event per any changed point (compared to previous touch event in a sequence) is generated, emulating pressing/moving/releasing points one by one.
 		/// </summary>
 		public TouchPoint[] TouchPoints { get; set; }
 		/// <summary>
@@ -25,7 +26,7 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Input
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
 		public long? Modifiers { get; set; }
 		/// <summary>
-		/// Gets or sets Time at which the event occurred. Measured in UTC time in seconds since January 1, 1970 (default: current time).
+		/// Gets or sets Time at which the event occurred.
 		/// </summary>
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
 		public double Timestamp { get; set; }
diff --git a/source/ChromeDevTools/Protocol/Chrome/Input/DispatchTouchEventCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Input/DispatchTouchEventCommandResponse.cs
index d7a8b05..5f1b0c6 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Input/DispatchTouchEventCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Input/DispatchTouchEventCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Input
diff --git a/source/ChromeDevTools/Protocol/Chrome/Input/EmulateTouchFromMouseEventCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Input/EmulateTouchFromMouseEventCommand.cs
index a975162..4f7ac76 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Input/EmulateTouchFromMouseEventCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Input/EmulateTouchFromMouseEventCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Input
@@ -24,7 +25,7 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Input
 		/// </summary>
 		public long Y { get; set; }
 		/// <summary>
-		/// Gets or sets Time at which the event occurred. Measured in UTC time in seconds since January 1, 1970.
+		/// Gets or sets Time at which the event occurred.
 		/// </summary>
 		public double Timestamp { get; set; }
 		/// <summary>
diff --git a/source/ChromeDevTools/Protocol/Chrome/Input/EmulateTouchFromMouseEventCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Input/EmulateTouchFromMouseEventCommandResponse.cs
index 2b9454e..61700c4 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Input/EmulateTouchFromMouseEventCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Input/EmulateTouchFromMouseEventCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Input
diff --git a/source/ChromeDevTools/Protocol/Chrome/Input/SetIgnoreInputEventsCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Input/SetIgnoreInputEventsCommand.cs
index 2b965d4..c27a224 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Input/SetIgnoreInputEventsCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Input/SetIgnoreInputEventsCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Input
diff --git a/source/ChromeDevTools/Protocol/Chrome/Input/SetIgnoreInputEventsCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Input/SetIgnoreInputEventsCommandResponse.cs
index 0e9dfcc..8c60433 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Input/SetIgnoreInputEventsCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Input/SetIgnoreInputEventsCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Input
diff --git a/source/ChromeDevTools/Protocol/Chrome/Input/SynthesizePinchGestureCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Input/SynthesizePinchGestureCommand.cs
index 29321fc..0fbc0a1 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Input/SynthesizePinchGestureCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Input/SynthesizePinchGestureCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Input
@@ -14,11 +15,11 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Input
 		/// <summary>
 		/// Gets or sets X coordinate of the start of the gesture in CSS pixels.
 		/// </summary>
-		public long X { get; set; }
+		public double X { get; set; }
 		/// <summary>
 		/// Gets or sets Y coordinate of the start of the gesture in CSS pixels.
 		/// </summary>
-		public long Y { get; set; }
+		public double Y { get; set; }
 		/// <summary>
 		/// Gets or sets Relative scale factor after zooming (>1.0 zooms in, <1.0 zooms out).
 		/// </summary>
diff --git a/source/ChromeDevTools/Protocol/Chrome/Input/SynthesizePinchGestureCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Input/SynthesizePinchGestureCommandResponse.cs
index b9ec09a..66faecd 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Input/SynthesizePinchGestureCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Input/SynthesizePinchGestureCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Input
diff --git a/source/ChromeDevTools/Protocol/Chrome/Input/SynthesizeScrollGestureCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Input/SynthesizeScrollGestureCommand.cs
index 59adc18..34e5901 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Input/SynthesizeScrollGestureCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Input/SynthesizeScrollGestureCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Input
@@ -14,31 +15,31 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Input
 		/// <summary>
 		/// Gets or sets X coordinate of the start of the gesture in CSS pixels.
 		/// </summary>
-		public long X { get; set; }
+		public double X { get; set; }
 		/// <summary>
 		/// Gets or sets Y coordinate of the start of the gesture in CSS pixels.
 		/// </summary>
-		public long Y { get; set; }
+		public double Y { get; set; }
 		/// <summary>
 		/// Gets or sets The distance to scroll along the X axis (positive to scroll left).
 		/// </summary>
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
-		public long? XDistance { get; set; }
+		public double XDistance { get; set; }
 		/// <summary>
 		/// Gets or sets The distance to scroll along the Y axis (positive to scroll up).
 		/// </summary>
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
-		public long? YDistance { get; set; }
+		public double YDistance { get; set; }
 		/// <summary>
 		/// Gets or sets The number of additional pixels to scroll back along the X axis, in addition to the given distance.
 		/// </summary>
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
-		public long? XOverscroll { get; set; }
+		public double XOverscroll { get; set; }
 		/// <summary>
 		/// Gets or sets The number of additional pixels to scroll back along the Y axis, in addition to the given distance.
 		/// </summary>
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
-		public long? YOverscroll { get; set; }
+		public double YOverscroll { get; set; }
 		/// <summary>
 		/// Gets or sets Prevent fling (default: true).
 		/// </summary>
diff --git a/source/ChromeDevTools/Protocol/Chrome/Input/SynthesizeScrollGestureCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Input/SynthesizeScrollGestureCommandResponse.cs
index 739844c..e19a38d 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Input/SynthesizeScrollGestureCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Input/SynthesizeScrollGestureCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Input
diff --git a/source/ChromeDevTools/Protocol/Chrome/Input/SynthesizeTapGestureCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Input/SynthesizeTapGestureCommand.cs
index b3d12fd..84054fe 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Input/SynthesizeTapGestureCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Input/SynthesizeTapGestureCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Input
@@ -14,11 +15,11 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Input
 		/// <summary>
 		/// Gets or sets X coordinate of the start of the gesture in CSS pixels.
 		/// </summary>
-		public long X { get; set; }
+		public double X { get; set; }
 		/// <summary>
 		/// Gets or sets Y coordinate of the start of the gesture in CSS pixels.
 		/// </summary>
-		public long Y { get; set; }
+		public double Y { get; set; }
 		/// <summary>
 		/// Gets or sets Duration between touchdown and touchup events in ms (default: 50).
 		/// </summary>
diff --git a/source/ChromeDevTools/Protocol/Chrome/Input/SynthesizeTapGestureCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Input/SynthesizeTapGestureCommandResponse.cs
index 2d162de..f774955 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Input/SynthesizeTapGestureCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Input/SynthesizeTapGestureCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Input
diff --git a/source/ChromeDevTools/Protocol/Chrome/Input/TouchPoint.cs b/source/ChromeDevTools/Protocol/Chrome/Input/TouchPoint.cs
index e2ded6d..f2537b9 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Input/TouchPoint.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Input/TouchPoint.cs
@@ -4,22 +4,15 @@ using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Input
 {
-	/// <summary>
-	/// 
-	/// </summary>
 	[SupportedBy("Chrome")]
 	public class TouchPoint
 	{
 		/// <summary>
-		/// Gets or sets State of the touch point.
-		/// </summary>
-		public string State { get; set; }
-		/// <summary>
-		/// Gets or sets X coordinate of the event relative to the main frame's viewport.
+		/// Gets or sets X coordinate of the event relative to the main frame's viewport in CSS pixels.
 		/// </summary>
 		public long X { get; set; }
 		/// <summary>
-		/// Gets or sets Y coordinate of the event relative to the main frame's viewport. 0 refers to the top of the viewport and Y increases as it proceeds towards the bottom of the viewport.
+		/// Gets or sets Y coordinate of the event relative to the main frame's viewport in CSS pixels. 0 refers to the top of the viewport and Y increases as it proceeds towards the bottom of the viewport.
 		/// </summary>
 		public long Y { get; set; }
 		/// <summary>
diff --git a/source/ChromeDevTools/Protocol/Chrome/Inspector/DetachedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Inspector/DetachedEvent.cs
index 13dc005..9789074 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Inspector/DetachedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Inspector/DetachedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Inspector
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Inspector/DisableCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Inspector/DisableCommand.cs
index 2211082..ef445c4 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Inspector/DisableCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Inspector/DisableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Inspector
diff --git a/source/ChromeDevTools/Protocol/Chrome/Inspector/DisableCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Inspector/DisableCommandResponse.cs
index 6635486..53edae4 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Inspector/DisableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Inspector/DisableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Inspector
diff --git a/source/ChromeDevTools/Protocol/Chrome/Inspector/EnableCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Inspector/EnableCommand.cs
index c890fb9..3896694 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Inspector/EnableCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Inspector/EnableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Inspector
diff --git a/source/ChromeDevTools/Protocol/Chrome/Inspector/EnableCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Inspector/EnableCommandResponse.cs
index b9adafd..039f07e 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Inspector/EnableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Inspector/EnableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Inspector
diff --git a/source/ChromeDevTools/Protocol/Chrome/Inspector/TargetCrashedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Inspector/TargetCrashedEvent.cs
index 45f1e1a..e430131 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Inspector/TargetCrashedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Inspector/TargetCrashedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Inspector
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/LayerTree/CompositingReasonsCommand.cs b/source/ChromeDevTools/Protocol/Chrome/LayerTree/CompositingReasonsCommand.cs
index d47ce2b..c3c4d27 100644
--- a/source/ChromeDevTools/Protocol/Chrome/LayerTree/CompositingReasonsCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/LayerTree/CompositingReasonsCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.LayerTree
diff --git a/source/ChromeDevTools/Protocol/Chrome/LayerTree/CompositingReasonsCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/LayerTree/CompositingReasonsCommandResponse.cs
index 07a6bf8..9b49a0d 100644
--- a/source/ChromeDevTools/Protocol/Chrome/LayerTree/CompositingReasonsCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/LayerTree/CompositingReasonsCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.LayerTree
diff --git a/source/ChromeDevTools/Protocol/Chrome/LayerTree/DisableCommand.cs b/source/ChromeDevTools/Protocol/Chrome/LayerTree/DisableCommand.cs
index d9ae03a..a0b709e 100644
--- a/source/ChromeDevTools/Protocol/Chrome/LayerTree/DisableCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/LayerTree/DisableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.LayerTree
diff --git a/source/ChromeDevTools/Protocol/Chrome/LayerTree/DisableCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/LayerTree/DisableCommandResponse.cs
index e172b3d..c4d9020 100644
--- a/source/ChromeDevTools/Protocol/Chrome/LayerTree/DisableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/LayerTree/DisableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.LayerTree
diff --git a/source/ChromeDevTools/Protocol/Chrome/LayerTree/EnableCommand.cs b/source/ChromeDevTools/Protocol/Chrome/LayerTree/EnableCommand.cs
index 4c052c2..d5cf80d 100644
--- a/source/ChromeDevTools/Protocol/Chrome/LayerTree/EnableCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/LayerTree/EnableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.LayerTree
diff --git a/source/ChromeDevTools/Protocol/Chrome/LayerTree/EnableCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/LayerTree/EnableCommandResponse.cs
index f3541cc..e703414 100644
--- a/source/ChromeDevTools/Protocol/Chrome/LayerTree/EnableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/LayerTree/EnableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.LayerTree
diff --git a/source/ChromeDevTools/Protocol/Chrome/LayerTree/Layer.cs b/source/ChromeDevTools/Protocol/Chrome/LayerTree/Layer.cs
index f79ef91..a85e4fb 100644
--- a/source/ChromeDevTools/Protocol/Chrome/LayerTree/Layer.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/LayerTree/Layer.cs
@@ -78,5 +78,10 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.LayerTree
 		/// </summary>
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
 		public ScrollRect[] ScrollRects { get; set; }
+		/// <summary>
+		/// Gets or sets Sticky position constraint information
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public StickyPositionConstraint StickyPositionConstraint { get; set; }
 	}
 }
diff --git a/source/ChromeDevTools/Protocol/Chrome/LayerTree/LayerPaintedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/LayerTree/LayerPaintedEvent.cs
index f680cae..bdf6ed5 100644
--- a/source/ChromeDevTools/Protocol/Chrome/LayerTree/LayerPaintedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/LayerTree/LayerPaintedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.LayerTree
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/LayerTree/LayerTreeDidChangeEvent.cs b/source/ChromeDevTools/Protocol/Chrome/LayerTree/LayerTreeDidChangeEvent.cs
index fd423e1..01bd5b5 100644
--- a/source/ChromeDevTools/Protocol/Chrome/LayerTree/LayerTreeDidChangeEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/LayerTree/LayerTreeDidChangeEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.LayerTree
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/LayerTree/LoadSnapshotCommand.cs b/source/ChromeDevTools/Protocol/Chrome/LayerTree/LoadSnapshotCommand.cs
index 0c456c3..9c0e60c 100644
--- a/source/ChromeDevTools/Protocol/Chrome/LayerTree/LoadSnapshotCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/LayerTree/LoadSnapshotCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.LayerTree
diff --git a/source/ChromeDevTools/Protocol/Chrome/LayerTree/LoadSnapshotCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/LayerTree/LoadSnapshotCommandResponse.cs
index d8dad71..5196659 100644
--- a/source/ChromeDevTools/Protocol/Chrome/LayerTree/LoadSnapshotCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/LayerTree/LoadSnapshotCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.LayerTree
diff --git a/source/ChromeDevTools/Protocol/Chrome/LayerTree/MakeSnapshotCommand.cs b/source/ChromeDevTools/Protocol/Chrome/LayerTree/MakeSnapshotCommand.cs
index e847b34..f93716b 100644
--- a/source/ChromeDevTools/Protocol/Chrome/LayerTree/MakeSnapshotCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/LayerTree/MakeSnapshotCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.LayerTree
diff --git a/source/ChromeDevTools/Protocol/Chrome/LayerTree/MakeSnapshotCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/LayerTree/MakeSnapshotCommandResponse.cs
index da3fee5..b9b923f 100644
--- a/source/ChromeDevTools/Protocol/Chrome/LayerTree/MakeSnapshotCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/LayerTree/MakeSnapshotCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.LayerTree
diff --git a/source/ChromeDevTools/Protocol/Chrome/LayerTree/ProfileSnapshotCommand.cs b/source/ChromeDevTools/Protocol/Chrome/LayerTree/ProfileSnapshotCommand.cs
index 7a862e7..7ccd52a 100644
--- a/source/ChromeDevTools/Protocol/Chrome/LayerTree/ProfileSnapshotCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/LayerTree/ProfileSnapshotCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.LayerTree
diff --git a/source/ChromeDevTools/Protocol/Chrome/LayerTree/ProfileSnapshotCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/LayerTree/ProfileSnapshotCommandResponse.cs
index fad70fb..3ba11d2 100644
--- a/source/ChromeDevTools/Protocol/Chrome/LayerTree/ProfileSnapshotCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/LayerTree/ProfileSnapshotCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.LayerTree
diff --git a/source/ChromeDevTools/Protocol/Chrome/LayerTree/ReleaseSnapshotCommand.cs b/source/ChromeDevTools/Protocol/Chrome/LayerTree/ReleaseSnapshotCommand.cs
index b0e0cea..e3575ec 100644
--- a/source/ChromeDevTools/Protocol/Chrome/LayerTree/ReleaseSnapshotCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/LayerTree/ReleaseSnapshotCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.LayerTree
diff --git a/source/ChromeDevTools/Protocol/Chrome/LayerTree/ReleaseSnapshotCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/LayerTree/ReleaseSnapshotCommandResponse.cs
index 2a3a3fd..d9b0763 100644
--- a/source/ChromeDevTools/Protocol/Chrome/LayerTree/ReleaseSnapshotCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/LayerTree/ReleaseSnapshotCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.LayerTree
diff --git a/source/ChromeDevTools/Protocol/Chrome/LayerTree/ReplaySnapshotCommand.cs b/source/ChromeDevTools/Protocol/Chrome/LayerTree/ReplaySnapshotCommand.cs
index b8b493c..dea23ab 100644
--- a/source/ChromeDevTools/Protocol/Chrome/LayerTree/ReplaySnapshotCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/LayerTree/ReplaySnapshotCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.LayerTree
diff --git a/source/ChromeDevTools/Protocol/Chrome/LayerTree/ReplaySnapshotCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/LayerTree/ReplaySnapshotCommandResponse.cs
index 8b1a449..1bda37d 100644
--- a/source/ChromeDevTools/Protocol/Chrome/LayerTree/ReplaySnapshotCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/LayerTree/ReplaySnapshotCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.LayerTree
diff --git a/source/ChromeDevTools/Protocol/Chrome/LayerTree/SnapshotCommandLogCommand.cs b/source/ChromeDevTools/Protocol/Chrome/LayerTree/SnapshotCommandLogCommand.cs
index 64d40aa..d7217df 100644
--- a/source/ChromeDevTools/Protocol/Chrome/LayerTree/SnapshotCommandLogCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/LayerTree/SnapshotCommandLogCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.LayerTree
diff --git a/source/ChromeDevTools/Protocol/Chrome/LayerTree/SnapshotCommandLogCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/LayerTree/SnapshotCommandLogCommandResponse.cs
index fdcd8e2..b46b966 100644
--- a/source/ChromeDevTools/Protocol/Chrome/LayerTree/SnapshotCommandLogCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/LayerTree/SnapshotCommandLogCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.LayerTree
diff --git a/source/ChromeDevTools/Protocol/Chrome/LayerTree/StickyPositionConstraint.cs b/source/ChromeDevTools/Protocol/Chrome/LayerTree/StickyPositionConstraint.cs
new file mode 100644
index 0000000..610b24a
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/LayerTree/StickyPositionConstraint.cs
@@ -0,0 +1,32 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.LayerTree
+{
+	/// <summary>
+	/// Sticky position constraints.
+	/// </summary>
+	[SupportedBy("Chrome")]
+	public class StickyPositionConstraint
+	{
+		/// <summary>
+		/// Gets or sets Layout rectangle of the sticky element before being shifted
+		/// </summary>
+		public DOM.Rect StickyBoxRect { get; set; }
+		/// <summary>
+		/// Gets or sets Layout rectangle of the containing block of the sticky element
+		/// </summary>
+		public DOM.Rect ContainingBlockRect { get; set; }
+		/// <summary>
+		/// Gets or sets The nearest sticky layer that shifts the sticky box
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string NearestLayerShiftingStickyBox { get; set; }
+		/// <summary>
+		/// Gets or sets The nearest sticky layer that shifts the containing block
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string NearestLayerShiftingContainingBlock { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Log/ClearCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Log/ClearCommand.cs
index 752bf5a..ba1de42 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Log/ClearCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Log/ClearCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Log
diff --git a/source/ChromeDevTools/Protocol/Chrome/Log/ClearCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Log/ClearCommandResponse.cs
index 1ca821b..7955c56 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Log/ClearCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Log/ClearCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Log
diff --git a/source/ChromeDevTools/Protocol/Chrome/Log/DisableCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Log/DisableCommand.cs
index efa3400..8b0f28d 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Log/DisableCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Log/DisableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Log
diff --git a/source/ChromeDevTools/Protocol/Chrome/Log/DisableCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Log/DisableCommandResponse.cs
index 8c6e346..e2edb26 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Log/DisableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Log/DisableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Log
diff --git a/source/ChromeDevTools/Protocol/Chrome/Log/EnableCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Log/EnableCommand.cs
index 292da21..930b3ae 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Log/EnableCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Log/EnableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Log
diff --git a/source/ChromeDevTools/Protocol/Chrome/Log/EnableCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Log/EnableCommandResponse.cs
index 76a55c6..16a3e9d 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Log/EnableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Log/EnableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Log
diff --git a/source/ChromeDevTools/Protocol/Chrome/Log/EntryAddedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Log/EntryAddedEvent.cs
index 28c26b5..19c8e2e 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Log/EntryAddedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Log/EntryAddedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Log
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Log/StartViolationsReportCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Log/StartViolationsReportCommand.cs
index 2d73f97..17c00d7 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Log/StartViolationsReportCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Log/StartViolationsReportCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Log
diff --git a/source/ChromeDevTools/Protocol/Chrome/Log/StartViolationsReportCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Log/StartViolationsReportCommandResponse.cs
index b17b79f..a68ba54 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Log/StartViolationsReportCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Log/StartViolationsReportCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Log
diff --git a/source/ChromeDevTools/Protocol/Chrome/Log/StopViolationsReportCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Log/StopViolationsReportCommand.cs
index ad3e5dc..212d0be 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Log/StopViolationsReportCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Log/StopViolationsReportCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Log
diff --git a/source/ChromeDevTools/Protocol/Chrome/Log/StopViolationsReportCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Log/StopViolationsReportCommandResponse.cs
index f56bd73..a5248b6 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Log/StopViolationsReportCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Log/StopViolationsReportCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Log
diff --git a/source/ChromeDevTools/Protocol/Chrome/Memory/GetDOMCountersCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Memory/GetDOMCountersCommand.cs
index d385d1e..3dbdeaa 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Memory/GetDOMCountersCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Memory/GetDOMCountersCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Memory
diff --git a/source/ChromeDevTools/Protocol/Chrome/Memory/GetDOMCountersCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Memory/GetDOMCountersCommandResponse.cs
index 946ccee..69b0b5b 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Memory/GetDOMCountersCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Memory/GetDOMCountersCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Memory
diff --git a/source/ChromeDevTools/Protocol/Chrome/Memory/PrepareForLeakDetectionCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Memory/PrepareForLeakDetectionCommand.cs
new file mode 100644
index 0000000..aee9566
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Memory/PrepareForLeakDetectionCommand.cs
@@ -0,0 +1,13 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Memory
+{
+	[Command(ProtocolName.Memory.PrepareForLeakDetection)]
+	[SupportedBy("Chrome")]
+	public class PrepareForLeakDetectionCommand: ICommand<PrepareForLeakDetectionCommandResponse>
+	{
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Memory/PrepareForLeakDetectionCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Memory/PrepareForLeakDetectionCommandResponse.cs
new file mode 100644
index 0000000..52d142d
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Memory/PrepareForLeakDetectionCommandResponse.cs
@@ -0,0 +1,13 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Memory
+{
+	[CommandResponse(ProtocolName.Memory.PrepareForLeakDetection)]
+	[SupportedBy("Chrome")]
+	public class PrepareForLeakDetectionCommandResponse
+	{
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Memory/SetPressureNotificationsSuppressedCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Memory/SetPressureNotificationsSuppressedCommand.cs
index 7f8afe2..2d777ee 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Memory/SetPressureNotificationsSuppressedCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Memory/SetPressureNotificationsSuppressedCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Memory
diff --git a/source/ChromeDevTools/Protocol/Chrome/Memory/SetPressureNotificationsSuppressedCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Memory/SetPressureNotificationsSuppressedCommandResponse.cs
index 2f7cb8d..af2b934 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Memory/SetPressureNotificationsSuppressedCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Memory/SetPressureNotificationsSuppressedCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Memory
diff --git a/source/ChromeDevTools/Protocol/Chrome/Memory/SimulatePressureNotificationCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Memory/SimulatePressureNotificationCommand.cs
index 359ac31..ffde888 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Memory/SimulatePressureNotificationCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Memory/SimulatePressureNotificationCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Memory
diff --git a/source/ChromeDevTools/Protocol/Chrome/Memory/SimulatePressureNotificationCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Memory/SimulatePressureNotificationCommandResponse.cs
index d689a52..7d6ef54 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Memory/SimulatePressureNotificationCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Memory/SimulatePressureNotificationCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Memory
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/AuthChallenge.cs b/source/ChromeDevTools/Protocol/Chrome/Network/AuthChallenge.cs
new file mode 100644
index 0000000..fb75385
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/AuthChallenge.cs
@@ -0,0 +1,31 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
+{
+	/// <summary>
+	/// Authorization challenge for HTTP status code 401 or 407.
+	/// </summary>
+	[SupportedBy("Chrome")]
+	public class AuthChallenge
+	{
+		/// <summary>
+		/// Gets or sets Source of the authentication challenge.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string Source { get; set; }
+		/// <summary>
+		/// Gets or sets Origin of the challenger.
+		/// </summary>
+		public string Origin { get; set; }
+		/// <summary>
+		/// Gets or sets The authentication scheme used, such as basic or digest
+		/// </summary>
+		public string Scheme { get; set; }
+		/// <summary>
+		/// Gets or sets The realm of the challenge. May be empty.
+		/// </summary>
+		public string Realm { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/AuthChallengeResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Network/AuthChallengeResponse.cs
new file mode 100644
index 0000000..f2449cf
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/AuthChallengeResponse.cs
@@ -0,0 +1,28 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
+{
+	/// <summary>
+	/// Response to an AuthChallenge.
+	/// </summary>
+	[SupportedBy("Chrome")]
+	public class AuthChallengeResponse
+	{
+		/// <summary>
+		/// Gets or sets The decision on what to do in response to the authorization challenge.  Default means deferring to the default behavior of the net stack, which will likely either the Cancel authentication or display a popup dialog box.
+		/// </summary>
+		public string Response { get; set; }
+		/// <summary>
+		/// Gets or sets The username to provide, possibly empty. Should only be set if response is ProvideCredentials.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string Username { get; set; }
+		/// <summary>
+		/// Gets or sets The password to provide, possibly empty. Should only be set if response is ProvideCredentials.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string Password { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/CanClearBrowserCacheCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Network/CanClearBrowserCacheCommand.cs
index 6e18fa9..2f7bcbc 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/CanClearBrowserCacheCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/CanClearBrowserCacheCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/CanClearBrowserCacheCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Network/CanClearBrowserCacheCommandResponse.cs
index f5573cc..1931904 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/CanClearBrowserCacheCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/CanClearBrowserCacheCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/CanClearBrowserCookiesCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Network/CanClearBrowserCookiesCommand.cs
index 44d3688..36ba3e5 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/CanClearBrowserCookiesCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/CanClearBrowserCookiesCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/CanClearBrowserCookiesCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Network/CanClearBrowserCookiesCommandResponse.cs
index 12732a9..174a26c 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/CanClearBrowserCookiesCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/CanClearBrowserCookiesCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/CanEmulateNetworkConditionsCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Network/CanEmulateNetworkConditionsCommand.cs
index 608d0cb..f6d7343 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/CanEmulateNetworkConditionsCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/CanEmulateNetworkConditionsCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/CanEmulateNetworkConditionsCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Network/CanEmulateNetworkConditionsCommandResponse.cs
index c6944ad..628d276 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/CanEmulateNetworkConditionsCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/CanEmulateNetworkConditionsCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/ClearBrowserCacheCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Network/ClearBrowserCacheCommand.cs
index f33db62..4b12ced 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/ClearBrowserCacheCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/ClearBrowserCacheCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/ClearBrowserCacheCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Network/ClearBrowserCacheCommandResponse.cs
index fd20ddf..6cb153a 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/ClearBrowserCacheCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/ClearBrowserCacheCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/ClearBrowserCookiesCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Network/ClearBrowserCookiesCommand.cs
index 173b8bc..7c2a400 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/ClearBrowserCookiesCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/ClearBrowserCookiesCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/ClearBrowserCookiesCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Network/ClearBrowserCookiesCommandResponse.cs
index e57ebd6..36c68f6 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/ClearBrowserCookiesCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/ClearBrowserCookiesCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/ContinueInterceptedRequestCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Network/ContinueInterceptedRequestCommand.cs
new file mode 100644
index 0000000..d4a03ee
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/ContinueInterceptedRequestCommand.cs
@@ -0,0 +1,55 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
+{
+	/// <summary>
+	/// Response to Network.requestIntercepted which either modifies the request to continue with any modifications, or blocks it, or completes it with the provided response bytes. If a network fetch occurs as a result which encounters a redirect an additional Network.requestIntercepted event will be sent with the same InterceptionId.
+	/// </summary>
+	[Command(ProtocolName.Network.ContinueInterceptedRequest)]
+	[SupportedBy("Chrome")]
+	public class ContinueInterceptedRequestCommand: ICommand<ContinueInterceptedRequestCommandResponse>
+	{
+		/// <summary>
+		/// Gets or sets InterceptionId
+		/// </summary>
+		public string InterceptionId { get; set; }
+		/// <summary>
+		/// Gets or sets If set this causes the request to fail with the given reason. Passing <code>Aborted</code> for requests marked with <code>isNavigationRequest</code> also cancels the navigation. Must not be set in response to an authChallenge.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string ErrorReason { get; set; }
+		/// <summary>
+		/// Gets or sets If set the requests completes using with the provided base64 encoded raw response, including HTTP status line and headers etc... Must not be set in response to an authChallenge.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string RawResponse { get; set; }
+		/// <summary>
+		/// Gets or sets If set the request url will be modified in a way that's not observable by page. Must not be set in response to an authChallenge.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string Url { get; set; }
+		/// <summary>
+		/// Gets or sets If set this allows the request method to be overridden. Must not be set in response to an authChallenge.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string Method { get; set; }
+		/// <summary>
+		/// Gets or sets If set this allows postData to be set. Must not be set in response to an authChallenge.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string PostData { get; set; }
+		/// <summary>
+		/// Gets or sets If set this allows the request headers to be changed. Must not be set in response to an authChallenge.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public Dictionary<string, string> Headers { get; set; }
+		/// <summary>
+		/// Gets or sets Response to a requestIntercepted with an authChallenge. Must not be set otherwise.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public AuthChallengeResponse AuthChallengeResponse { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/ContinueInterceptedRequestCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Network/ContinueInterceptedRequestCommandResponse.cs
new file mode 100644
index 0000000..489ab34
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/ContinueInterceptedRequestCommandResponse.cs
@@ -0,0 +1,16 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
+{
+	/// <summary>
+	/// Response to Network.requestIntercepted which either modifies the request to continue with any modifications, or blocks it, or completes it with the provided response bytes. If a network fetch occurs as a result which encounters a redirect an additional Network.requestIntercepted event will be sent with the same InterceptionId.
+	/// </summary>
+	[CommandResponse(ProtocolName.Network.ContinueInterceptedRequest)]
+	[SupportedBy("Chrome")]
+	public class ContinueInterceptedRequestCommandResponse
+	{
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/CookieParam.cs b/source/ChromeDevTools/Protocol/Chrome/Network/CookieParam.cs
new file mode 100644
index 0000000..c7bae56
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/CookieParam.cs
@@ -0,0 +1,57 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
+{
+	/// <summary>
+	/// Cookie parameter object
+	/// </summary>
+	[SupportedBy("Chrome")]
+	public class CookieParam
+	{
+		/// <summary>
+		/// Gets or sets Cookie name.
+		/// </summary>
+		public string Name { get; set; }
+		/// <summary>
+		/// Gets or sets Cookie value.
+		/// </summary>
+		public string Value { get; set; }
+		/// <summary>
+		/// Gets or sets The request-URI to associate with the setting of the cookie. This value can affect the default domain and path values of the created cookie.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string Url { get; set; }
+		/// <summary>
+		/// Gets or sets Cookie domain.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string Domain { get; set; }
+		/// <summary>
+		/// Gets or sets Cookie path.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string Path { get; set; }
+		/// <summary>
+		/// Gets or sets True if cookie is secure.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public bool? Secure { get; set; }
+		/// <summary>
+		/// Gets or sets True if cookie is http-only.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public bool? HttpOnly { get; set; }
+		/// <summary>
+		/// Gets or sets Cookie SameSite type.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public CookieSameSite SameSite { get; set; }
+		/// <summary>
+		/// Gets or sets Cookie expiration date, session cookie if not set
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public double Expires { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/DataReceivedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Network/DataReceivedEvent.cs
index 922018e..79bec56 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/DataReceivedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/DataReceivedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/DeleteCookieCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Network/DeleteCookieCommand.cs
deleted file mode 100644
index 3de4c3a..0000000
--- a/source/ChromeDevTools/Protocol/Chrome/Network/DeleteCookieCommand.cs
+++ /dev/null
@@ -1,23 +0,0 @@
-using MasterDevs.ChromeDevTools;
-using Newtonsoft.Json;
-using System.Collections.Generic;
-
-namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
-{
-	/// <summary>
-	/// Deletes browser cookie with given name, domain and path.
-	/// </summary>
-	[Command(ProtocolName.Network.DeleteCookie)]
-	[SupportedBy("Chrome")]
-	public class DeleteCookieCommand: ICommand<DeleteCookieCommandResponse>
-	{
-		/// <summary>
-		/// Gets or sets Name of the cookie to remove.
-		/// </summary>
-		public string CookieName { get; set; }
-		/// <summary>
-		/// Gets or sets URL to match cooke domain and path.
-		/// </summary>
-		public string Url { get; set; }
-	}
-}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/DeleteCookiesCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Network/DeleteCookiesCommand.cs
new file mode 100644
index 0000000..3e49217
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/DeleteCookiesCommand.cs
@@ -0,0 +1,35 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
+{
+	/// <summary>
+	/// Deletes browser cookies with matching name and url or domain/path pair.
+	/// </summary>
+	[Command(ProtocolName.Network.DeleteCookies)]
+	[SupportedBy("Chrome")]
+	public class DeleteCookiesCommand: ICommand<DeleteCookiesCommandResponse>
+	{
+		/// <summary>
+		/// Gets or sets Name of the cookies to remove.
+		/// </summary>
+		public string Name { get; set; }
+		/// <summary>
+		/// Gets or sets If specified, deletes all the cookies with the given name where domain and path match provided URL.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string Url { get; set; }
+		/// <summary>
+		/// Gets or sets If specified, deletes only cookies with the exact domain.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string Domain { get; set; }
+		/// <summary>
+		/// Gets or sets If specified, deletes only cookies with the exact path.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string Path { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/DeleteCookiesCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Network/DeleteCookiesCommandResponse.cs
new file mode 100644
index 0000000..2fba769
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/DeleteCookiesCommandResponse.cs
@@ -0,0 +1,16 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
+{
+	/// <summary>
+	/// Deletes browser cookies with matching name and url or domain/path pair.
+	/// </summary>
+	[CommandResponse(ProtocolName.Network.DeleteCookies)]
+	[SupportedBy("Chrome")]
+	public class DeleteCookiesCommandResponse
+	{
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/DisableCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Network/DisableCommand.cs
index e09a09e..72062da 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/DisableCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/DisableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/DisableCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Network/DisableCommandResponse.cs
index 2c9eb13..61a515b 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/DisableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/DisableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/EmulateNetworkConditionsCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Network/EmulateNetworkConditionsCommand.cs
index f6b65e2..deac9fc 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/EmulateNetworkConditionsCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/EmulateNetworkConditionsCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/EmulateNetworkConditionsCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Network/EmulateNetworkConditionsCommandResponse.cs
index 435bb0c..64a9dd0 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/EmulateNetworkConditionsCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/EmulateNetworkConditionsCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/EnableCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Network/EnableCommand.cs
index 7e5b243..0741efb 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/EnableCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/EnableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/EnableCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Network/EnableCommandResponse.cs
index bb286ee..58df927 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/EnableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/EnableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/ErrorReason.cs b/source/ChromeDevTools/Protocol/Chrome/Network/ErrorReason.cs
new file mode 100644
index 0000000..0401c15
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/ErrorReason.cs
@@ -0,0 +1,27 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using Newtonsoft.Json.Converters;
+using System.Runtime.Serialization;
+
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network{
+	/// <summary>
+	/// Network level fetch failure reason.
+	/// </summary>
+	[JsonConverter(typeof(StringEnumConverter))]
+	public enum ErrorReason
+	{
+			Failed,
+			Aborted,
+			TimedOut,
+			AccessDenied,
+			ConnectionClosed,
+			ConnectionReset,
+			ConnectionRefused,
+			ConnectionAborted,
+			ConnectionFailed,
+			NameNotResolved,
+			InternetDisconnected,
+			AddressUnreachable,
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/EventSourceMessageReceivedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Network/EventSourceMessageReceivedEvent.cs
index b53dbed..c16306d 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/EventSourceMessageReceivedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/EventSourceMessageReceivedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/GetAllCookiesCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Network/GetAllCookiesCommand.cs
index b68bf19..4931496 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/GetAllCookiesCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/GetAllCookiesCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/GetAllCookiesCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Network/GetAllCookiesCommandResponse.cs
index 413c3cd..4e17190 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/GetAllCookiesCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/GetAllCookiesCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/GetCertificateCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Network/GetCertificateCommand.cs
index 0b04047..c46db6c 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/GetCertificateCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/GetCertificateCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/GetCertificateCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Network/GetCertificateCommandResponse.cs
index 8a56f15..e98d53b 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/GetCertificateCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/GetCertificateCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/GetCookiesCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Network/GetCookiesCommand.cs
index e0fb0d6..2ed37ed 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/GetCookiesCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/GetCookiesCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/GetCookiesCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Network/GetCookiesCommandResponse.cs
index 792722a..ec04fab 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/GetCookiesCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/GetCookiesCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/GetResponseBodyCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Network/GetResponseBodyCommand.cs
index c3d4fc8..d324099 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/GetResponseBodyCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/GetResponseBodyCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/GetResponseBodyCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Network/GetResponseBodyCommandResponse.cs
index 015439a..9ff052e 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/GetResponseBodyCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/GetResponseBodyCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/Initiator.cs b/source/ChromeDevTools/Protocol/Chrome/Network/Initiator.cs
index d2212b8..eaf92c7 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/Initiator.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/Initiator.cs
@@ -20,12 +20,12 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
 		public Runtime.StackTrace Stack { get; set; }
 		/// <summary>
-		/// Gets or sets Initiator URL, set for Parser type only.
+		/// Gets or sets Initiator URL, set for Parser type or for Script type (when script is importing module).
 		/// </summary>
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
 		public string Url { get; set; }
 		/// <summary>
-		/// Gets or sets Initiator line number, set for Parser type only (0-based).
+		/// Gets or sets Initiator line number, set for Parser type or for Script type (when script is importing module) (0-based).
 		/// </summary>
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
 		public double LineNumber { get; set; }
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/LoadingFailedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Network/LoadingFailedEvent.cs
index 6e3df63..e2d45c1 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/LoadingFailedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/LoadingFailedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/LoadingFinishedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Network/LoadingFinishedEvent.cs
index 90285e0..cd73113 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/LoadingFinishedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/LoadingFinishedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/ReplayXHRCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Network/ReplayXHRCommand.cs
index 0ae6737..a1b0b41 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/ReplayXHRCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/ReplayXHRCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/ReplayXHRCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Network/ReplayXHRCommandResponse.cs
index 41fc42a..edf8e86 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/ReplayXHRCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/ReplayXHRCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/Request.cs b/source/ChromeDevTools/Protocol/Chrome/Network/Request.cs
index 7845175..1835f96 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/Request.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/Request.cs
@@ -28,10 +28,10 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
 		public string PostData { get; set; }
 		/// <summary>
-		/// Gets or sets The mixed content status of the request, as defined in http://www.w3.org/TR/mixed-content/
+		/// Gets or sets The mixed content type of the request.
 		/// </summary>
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
-		public string MixedContentType { get; set; }
+		public Security.MixedContentType MixedContentType { get; set; }
 		/// <summary>
 		/// Gets or sets Priority of the resource request at the time request is sent.
 		/// </summary>
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/RequestInterceptedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Network/RequestInterceptedEvent.cs
new file mode 100644
index 0000000..67cc4fe
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/RequestInterceptedEvent.cs
@@ -0,0 +1,51 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
+{
+	/// <summary>
+	/// Details of an intercepted HTTP request, which must be either allowed, blocked, modified or mocked.
+	/// </summary>
+	[Event(ProtocolName.Network.RequestIntercepted)]
+	[SupportedBy("Chrome")]
+	public class RequestInterceptedEvent
+	{
+		/// <summary>
+		/// Gets or sets Each request the page makes will have a unique id, however if any redirects are encountered while processing that fetch, they will be reported with the same id as the original fetch. Likewise if HTTP authentication is needed then the same fetch id will be used.
+		/// </summary>
+		public string InterceptionId { get; set; }
+		/// <summary>
+		/// Gets or sets Request
+		/// </summary>
+		public Request Request { get; set; }
+		/// <summary>
+		/// Gets or sets How the requested resource will be used.
+		/// </summary>
+		public Page.ResourceType ResourceType { get; set; }
+		/// <summary>
+		/// Gets or sets Whether this is a navigation request, which can abort the navigation completely.
+		/// </summary>
+		public bool IsNavigationRequest { get; set; }
+		/// <summary>
+		/// Gets or sets HTTP response headers, only sent if a redirect was intercepted.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public Dictionary<string, string> RedirectHeaders { get; set; }
+		/// <summary>
+		/// Gets or sets HTTP response code, only sent if a redirect was intercepted.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public long? RedirectStatusCode { get; set; }
+		/// <summary>
+		/// Gets or sets Redirect location, only sent if a redirect was intercepted.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string RedirectUrl { get; set; }
+		/// <summary>
+		/// Gets or sets Details of the Authorization Challenge encountered. If this is set then continueInterceptedRequest must contain an authChallengeResponse.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public AuthChallenge AuthChallenge { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/RequestServedFromCacheEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Network/RequestServedFromCacheEvent.cs
index 80fa2b0..cfe4b19 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/RequestServedFromCacheEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/RequestServedFromCacheEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/RequestWillBeSentEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Network/RequestWillBeSentEvent.cs
index 469df0b..a9883c5 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/RequestWillBeSentEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/RequestWillBeSentEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
 {
@@ -14,11 +16,7 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
 		/// </summary>
 		public string RequestId { get; set; }
 		/// <summary>
-		/// Gets or sets Frame identifier.
-		/// </summary>
-		public string FrameId { get; set; }
-		/// <summary>
-		/// Gets or sets Loader identifier.
+		/// Gets or sets Loader identifier. Empty string if the request is fetched form worker.
 		/// </summary>
 		public string LoaderId { get; set; }
 		/// <summary>
@@ -34,7 +32,7 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
 		/// </summary>
 		public double Timestamp { get; set; }
 		/// <summary>
-		/// Gets or sets UTC Timestamp.
+		/// Gets or sets Timestamp.
 		/// </summary>
 		public double WallTime { get; set; }
 		/// <summary>
@@ -51,5 +49,10 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
 		/// </summary>
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
 		public Page.ResourceType Type { get; set; }
+		/// <summary>
+		/// Gets or sets Frame identifier.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string FrameId { get; set; }
 	}
 }
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/ResourceChangedPriorityEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Network/ResourceChangedPriorityEvent.cs
index 551ced6..b28948f 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/ResourceChangedPriorityEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/ResourceChangedPriorityEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/ResponseReceivedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Network/ResponseReceivedEvent.cs
index 55d6da9..0ea1b11 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/ResponseReceivedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/ResponseReceivedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
 {
@@ -14,11 +16,7 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
 		/// </summary>
 		public string RequestId { get; set; }
 		/// <summary>
-		/// Gets or sets Frame identifier.
-		/// </summary>
-		public string FrameId { get; set; }
-		/// <summary>
-		/// Gets or sets Loader identifier.
+		/// Gets or sets Loader identifier. Empty string if the request is fetched form worker.
 		/// </summary>
 		public string LoaderId { get; set; }
 		/// <summary>
@@ -33,5 +31,10 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
 		/// Gets or sets Response data.
 		/// </summary>
 		public Response Response { get; set; }
+		/// <summary>
+		/// Gets or sets Frame identifier.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string FrameId { get; set; }
 	}
 }
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/SetBlockedURLsCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Network/SetBlockedURLsCommand.cs
index be4d14f..ccb20bc 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/SetBlockedURLsCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/SetBlockedURLsCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/SetBlockedURLsCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Network/SetBlockedURLsCommandResponse.cs
index 2eb769c..fbb8b3b 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/SetBlockedURLsCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/SetBlockedURLsCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/SetBypassServiceWorkerCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Network/SetBypassServiceWorkerCommand.cs
index d194081..255fff5 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/SetBypassServiceWorkerCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/SetBypassServiceWorkerCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/SetBypassServiceWorkerCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Network/SetBypassServiceWorkerCommandResponse.cs
index b7500b6..5153347 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/SetBypassServiceWorkerCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/SetBypassServiceWorkerCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/SetCacheDisabledCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Network/SetCacheDisabledCommand.cs
index cd34ac2..c0b4640 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/SetCacheDisabledCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/SetCacheDisabledCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/SetCacheDisabledCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Network/SetCacheDisabledCommandResponse.cs
index db64cfe..e8815fe 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/SetCacheDisabledCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/SetCacheDisabledCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/SetCookieCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Network/SetCookieCommand.cs
index c06c2d0..1b099cd 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/SetCookieCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/SetCookieCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
@@ -12,46 +13,47 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
 	public class SetCookieCommand: ICommand<SetCookieCommandResponse>
 	{
 		/// <summary>
-		/// Gets or sets The request-URI to associate with the setting of the cookie. This value can affect the default domain and path values of the created cookie.
-		/// </summary>
-		public string Url { get; set; }
-		/// <summary>
-		/// Gets or sets The name of the cookie.
+		/// Gets or sets Cookie name.
 		/// </summary>
 		public string Name { get; set; }
 		/// <summary>
-		/// Gets or sets The value of the cookie.
+		/// Gets or sets Cookie value.
 		/// </summary>
 		public string Value { get; set; }
 		/// <summary>
-		/// Gets or sets If omitted, the cookie becomes a host-only cookie.
+		/// Gets or sets The request-URI to associate with the setting of the cookie. This value can affect the default domain and path values of the created cookie.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string Url { get; set; }
+		/// <summary>
+		/// Gets or sets Cookie domain.
 		/// </summary>
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
 		public string Domain { get; set; }
 		/// <summary>
-		/// Gets or sets Defaults to the path portion of the url parameter.
+		/// Gets or sets Cookie path.
 		/// </summary>
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
 		public string Path { get; set; }
 		/// <summary>
-		/// Gets or sets Defaults ot false.
+		/// Gets or sets True if cookie is secure.
 		/// </summary>
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
 		public bool? Secure { get; set; }
 		/// <summary>
-		/// Gets or sets Defaults to false.
+		/// Gets or sets True if cookie is http-only.
 		/// </summary>
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
 		public bool? HttpOnly { get; set; }
 		/// <summary>
-		/// Gets or sets Defaults to browser default behavior.
+		/// Gets or sets Cookie SameSite type.
 		/// </summary>
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
 		public string SameSite { get; set; }
 		/// <summary>
-		/// Gets or sets If omitted, the cookie becomes a session cookie.
+		/// Gets or sets Cookie expiration date, session cookie if not set
 		/// </summary>
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
-		public double ExpirationDate { get; set; }
+		public double Expires { get; set; }
 	}
 }
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/SetCookieCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Network/SetCookieCommandResponse.cs
index 28ac825..13f8120 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/SetCookieCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/SetCookieCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/SetCookiesCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Network/SetCookiesCommand.cs
new file mode 100644
index 0000000..cdb8435
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/SetCookiesCommand.cs
@@ -0,0 +1,20 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
+{
+	/// <summary>
+	/// Sets given cookies.
+	/// </summary>
+	[Command(ProtocolName.Network.SetCookies)]
+	[SupportedBy("Chrome")]
+	public class SetCookiesCommand: ICommand<SetCookiesCommandResponse>
+	{
+		/// <summary>
+		/// Gets or sets Cookies to be set.
+		/// </summary>
+		public CookieParam[] Cookies { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/DeleteCookieCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Network/SetCookiesCommandResponse.cs
similarity index 57%
rename from source/ChromeDevTools/Protocol/Chrome/Network/DeleteCookieCommandResponse.cs
rename to source/ChromeDevTools/Protocol/Chrome/Network/SetCookiesCommandResponse.cs
index eb366e5..c8d065c 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/DeleteCookieCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/SetCookiesCommandResponse.cs
@@ -1,15 +1,16 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
 {
 	/// <summary>
-	/// Deletes browser cookie with given name, domain and path.
+	/// Sets given cookies.
 	/// </summary>
-	[CommandResponse(ProtocolName.Network.DeleteCookie)]
+	[CommandResponse(ProtocolName.Network.SetCookies)]
 	[SupportedBy("Chrome")]
-	public class DeleteCookieCommandResponse
+	public class SetCookiesCommandResponse
 	{
 	}
 }
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/SetDataSizeLimitsForTestCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Network/SetDataSizeLimitsForTestCommand.cs
index 61c0d0a..ad912fd 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/SetDataSizeLimitsForTestCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/SetDataSizeLimitsForTestCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/SetDataSizeLimitsForTestCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Network/SetDataSizeLimitsForTestCommandResponse.cs
index 34b9462..f9aa5e8 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/SetDataSizeLimitsForTestCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/SetDataSizeLimitsForTestCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/SetExtraHTTPHeadersCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Network/SetExtraHTTPHeadersCommand.cs
index ff46e91..2c27b28 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/SetExtraHTTPHeadersCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/SetExtraHTTPHeadersCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/SetExtraHTTPHeadersCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Network/SetExtraHTTPHeadersCommandResponse.cs
index dcd398f..6fe319b 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/SetExtraHTTPHeadersCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/SetExtraHTTPHeadersCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/SetRequestInterceptionEnabledCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Network/SetRequestInterceptionEnabledCommand.cs
new file mode 100644
index 0000000..22ae30c
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/SetRequestInterceptionEnabledCommand.cs
@@ -0,0 +1,25 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
+{
+	/// <summary>
+	/// Sets the requests to intercept that match a the provided patterns.
+	/// </summary>
+	[Command(ProtocolName.Network.SetRequestInterceptionEnabled)]
+	[SupportedBy("Chrome")]
+	public class SetRequestInterceptionEnabledCommand: ICommand<SetRequestInterceptionEnabledCommandResponse>
+	{
+		/// <summary>
+		/// Gets or sets Whether requests should be intercepted. If patterns is not set, matches all and resets any previously set patterns. Other parameters are ignored if false.
+		/// </summary>
+		public bool Enabled { get; set; }
+		/// <summary>
+		/// Gets or sets URLs matching any of these patterns will be forwarded and wait for the corresponding continueInterceptedRequest call. Wildcards ('*' -> zero or more, '?' -> exactly one) are allowed. Escape character is backslash. If omitted equivalent to ['*'] (intercept all).
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string[] Patterns { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/SetRequestInterceptionEnabledCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Network/SetRequestInterceptionEnabledCommandResponse.cs
new file mode 100644
index 0000000..7c158d5
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/SetRequestInterceptionEnabledCommandResponse.cs
@@ -0,0 +1,16 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
+{
+	/// <summary>
+	/// Sets the requests to intercept that match a the provided patterns.
+	/// </summary>
+	[CommandResponse(ProtocolName.Network.SetRequestInterceptionEnabled)]
+	[SupportedBy("Chrome")]
+	public class SetRequestInterceptionEnabledCommandResponse
+	{
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/SetUserAgentOverrideCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Network/SetUserAgentOverrideCommand.cs
index 72621ec..fc0ad7f 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/SetUserAgentOverrideCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/SetUserAgentOverrideCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/SetUserAgentOverrideCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Network/SetUserAgentOverrideCommandResponse.cs
index 6ce283b..e1168f6 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/SetUserAgentOverrideCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/SetUserAgentOverrideCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/WebSocketClosedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Network/WebSocketClosedEvent.cs
index f3def23..cfaecbd 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/WebSocketClosedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/WebSocketClosedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/WebSocketCreatedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Network/WebSocketCreatedEvent.cs
index be812cc..d5aec81 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/WebSocketCreatedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/WebSocketCreatedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/WebSocketFrameErrorEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Network/WebSocketFrameErrorEvent.cs
index 5bcdc11..a351c9c 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/WebSocketFrameErrorEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/WebSocketFrameErrorEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/WebSocketFrameReceivedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Network/WebSocketFrameReceivedEvent.cs
index 74a0240..e06efd8 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/WebSocketFrameReceivedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/WebSocketFrameReceivedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/WebSocketFrameSentEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Network/WebSocketFrameSentEvent.cs
index 060172b..84f06fa 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/WebSocketFrameSentEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/WebSocketFrameSentEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/WebSocketHandshakeResponseReceivedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Network/WebSocketHandshakeResponseReceivedEvent.cs
index f1a7a52..1bdee6e 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/WebSocketHandshakeResponseReceivedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/WebSocketHandshakeResponseReceivedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Network/WebSocketWillSendHandshakeRequestEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Network/WebSocketWillSendHandshakeRequestEvent.cs
index 8667018..44862c1 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Network/WebSocketWillSendHandshakeRequestEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Network/WebSocketWillSendHandshakeRequestEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Network
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Overlay/DisableCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Overlay/DisableCommand.cs
index d00619d..97d0ca1 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Overlay/DisableCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Overlay/DisableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Overlay
diff --git a/source/ChromeDevTools/Protocol/Chrome/Overlay/DisableCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Overlay/DisableCommandResponse.cs
index d441c57..30caed6 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Overlay/DisableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Overlay/DisableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Overlay
diff --git a/source/ChromeDevTools/Protocol/Chrome/Overlay/EnableCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Overlay/EnableCommand.cs
index b1841c4..eac4088 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Overlay/EnableCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Overlay/EnableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Overlay
diff --git a/source/ChromeDevTools/Protocol/Chrome/Overlay/EnableCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Overlay/EnableCommandResponse.cs
index 2ace3bf..923ccd2 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Overlay/EnableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Overlay/EnableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Overlay
diff --git a/source/ChromeDevTools/Protocol/Chrome/Overlay/GetHighlightObjectForTestCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Overlay/GetHighlightObjectForTestCommand.cs
index c8ee0b0..eacb832 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Overlay/GetHighlightObjectForTestCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Overlay/GetHighlightObjectForTestCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Overlay
diff --git a/source/ChromeDevTools/Protocol/Chrome/Overlay/GetHighlightObjectForTestCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Overlay/GetHighlightObjectForTestCommandResponse.cs
index 43eaeb5..4fc2533 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Overlay/GetHighlightObjectForTestCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Overlay/GetHighlightObjectForTestCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Overlay
diff --git a/source/ChromeDevTools/Protocol/Chrome/Overlay/HideHighlightCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Overlay/HideHighlightCommand.cs
index b71c3e3..6f0368a 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Overlay/HideHighlightCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Overlay/HideHighlightCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Overlay
diff --git a/source/ChromeDevTools/Protocol/Chrome/Overlay/HideHighlightCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Overlay/HideHighlightCommandResponse.cs
index 5fa6d12..2ae1b5a 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Overlay/HideHighlightCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Overlay/HideHighlightCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Overlay
diff --git a/source/ChromeDevTools/Protocol/Chrome/Overlay/HighlightConfig.cs b/source/ChromeDevTools/Protocol/Chrome/Overlay/HighlightConfig.cs
index 96a783a..3cd8b97 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Overlay/HighlightConfig.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Overlay/HighlightConfig.cs
@@ -70,5 +70,10 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Overlay
 		/// </summary>
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
 		public string SelectorList { get; set; }
+		/// <summary>
+		/// Gets or sets The grid layout color (default: transparent).
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public DOM.RGBA CssGridColor { get; set; }
 	}
 }
diff --git a/source/ChromeDevTools/Protocol/Chrome/Overlay/HighlightFrameCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Overlay/HighlightFrameCommand.cs
index a053ba2..9de6bea 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Overlay/HighlightFrameCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Overlay/HighlightFrameCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Overlay
diff --git a/source/ChromeDevTools/Protocol/Chrome/Overlay/HighlightFrameCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Overlay/HighlightFrameCommandResponse.cs
index ec37eb7..56e6c34 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Overlay/HighlightFrameCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Overlay/HighlightFrameCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Overlay
diff --git a/source/ChromeDevTools/Protocol/Chrome/Overlay/HighlightNodeCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Overlay/HighlightNodeCommand.cs
index 629ab4d..8505e72 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Overlay/HighlightNodeCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Overlay/HighlightNodeCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Overlay
diff --git a/source/ChromeDevTools/Protocol/Chrome/Overlay/HighlightNodeCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Overlay/HighlightNodeCommandResponse.cs
index 6baa6be..eb815cd 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Overlay/HighlightNodeCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Overlay/HighlightNodeCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Overlay
diff --git a/source/ChromeDevTools/Protocol/Chrome/Overlay/HighlightQuadCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Overlay/HighlightQuadCommand.cs
index 6427362..0dfdc0c 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Overlay/HighlightQuadCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Overlay/HighlightQuadCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Overlay
diff --git a/source/ChromeDevTools/Protocol/Chrome/Overlay/HighlightQuadCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Overlay/HighlightQuadCommandResponse.cs
index 655035f..ccc057c 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Overlay/HighlightQuadCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Overlay/HighlightQuadCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Overlay
diff --git a/source/ChromeDevTools/Protocol/Chrome/Overlay/HighlightRectCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Overlay/HighlightRectCommand.cs
index 59e83da..39ad97a 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Overlay/HighlightRectCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Overlay/HighlightRectCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Overlay
diff --git a/source/ChromeDevTools/Protocol/Chrome/Overlay/HighlightRectCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Overlay/HighlightRectCommandResponse.cs
index 7c12b30..b6f1ac2 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Overlay/HighlightRectCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Overlay/HighlightRectCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Overlay
diff --git a/source/ChromeDevTools/Protocol/Chrome/Overlay/InspectNodeRequestedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Overlay/InspectNodeRequestedEvent.cs
index cdcf079..8895c09 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Overlay/InspectNodeRequestedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Overlay/InspectNodeRequestedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Overlay
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Overlay/NodeHighlightRequestedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Overlay/NodeHighlightRequestedEvent.cs
index 4931677..e45f2dd 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Overlay/NodeHighlightRequestedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Overlay/NodeHighlightRequestedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Overlay
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Overlay/ScreenshotRequestedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Overlay/ScreenshotRequestedEvent.cs
new file mode 100644
index 0000000..48cbb23
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Overlay/ScreenshotRequestedEvent.cs
@@ -0,0 +1,19 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Overlay
+{
+	/// <summary>
+	/// Fired when user asks to capture screenshot of some area on the page.
+	/// </summary>
+	[Event(ProtocolName.Overlay.ScreenshotRequested)]
+	[SupportedBy("Chrome")]
+	public class ScreenshotRequestedEvent
+	{
+		/// <summary>
+		/// Gets or sets Viewport to capture, in CSS.
+		/// </summary>
+		public Page.Viewport Viewport { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Overlay/SetInspectModeCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Overlay/SetInspectModeCommand.cs
index c4f9917..492ccfc 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Overlay/SetInspectModeCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Overlay/SetInspectModeCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Overlay
diff --git a/source/ChromeDevTools/Protocol/Chrome/Overlay/SetInspectModeCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Overlay/SetInspectModeCommandResponse.cs
index d08f5bb..db41408 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Overlay/SetInspectModeCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Overlay/SetInspectModeCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Overlay
diff --git a/source/ChromeDevTools/Protocol/Chrome/Overlay/SetPausedInDebuggerMessageCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Overlay/SetPausedInDebuggerMessageCommand.cs
index 33806cd..be20803 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Overlay/SetPausedInDebuggerMessageCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Overlay/SetPausedInDebuggerMessageCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Overlay
diff --git a/source/ChromeDevTools/Protocol/Chrome/Overlay/SetPausedInDebuggerMessageCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Overlay/SetPausedInDebuggerMessageCommandResponse.cs
index d7e1efe..8a0ea43 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Overlay/SetPausedInDebuggerMessageCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Overlay/SetPausedInDebuggerMessageCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Overlay
diff --git a/source/ChromeDevTools/Protocol/Chrome/Overlay/SetShowDebugBordersCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Overlay/SetShowDebugBordersCommand.cs
index b8b0fd9..a8412aa 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Overlay/SetShowDebugBordersCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Overlay/SetShowDebugBordersCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Overlay
diff --git a/source/ChromeDevTools/Protocol/Chrome/Overlay/SetShowDebugBordersCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Overlay/SetShowDebugBordersCommandResponse.cs
index b7a86b6..16e2ad0 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Overlay/SetShowDebugBordersCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Overlay/SetShowDebugBordersCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Overlay
diff --git a/source/ChromeDevTools/Protocol/Chrome/Overlay/SetShowFPSCounterCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Overlay/SetShowFPSCounterCommand.cs
index 1cbef45..9d5d535 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Overlay/SetShowFPSCounterCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Overlay/SetShowFPSCounterCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Overlay
diff --git a/source/ChromeDevTools/Protocol/Chrome/Overlay/SetShowFPSCounterCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Overlay/SetShowFPSCounterCommandResponse.cs
index 361fcf7..5abe7ed 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Overlay/SetShowFPSCounterCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Overlay/SetShowFPSCounterCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Overlay
diff --git a/source/ChromeDevTools/Protocol/Chrome/Overlay/SetShowPaintRectsCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Overlay/SetShowPaintRectsCommand.cs
index 0ef2162..d4dbfa9 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Overlay/SetShowPaintRectsCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Overlay/SetShowPaintRectsCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Overlay
diff --git a/source/ChromeDevTools/Protocol/Chrome/Overlay/SetShowPaintRectsCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Overlay/SetShowPaintRectsCommandResponse.cs
index cd69541..fb3b3f4 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Overlay/SetShowPaintRectsCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Overlay/SetShowPaintRectsCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Overlay
diff --git a/source/ChromeDevTools/Protocol/Chrome/Overlay/SetShowScrollBottleneckRectsCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Overlay/SetShowScrollBottleneckRectsCommand.cs
index c02953b..7caf5ff 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Overlay/SetShowScrollBottleneckRectsCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Overlay/SetShowScrollBottleneckRectsCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Overlay
diff --git a/source/ChromeDevTools/Protocol/Chrome/Overlay/SetShowScrollBottleneckRectsCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Overlay/SetShowScrollBottleneckRectsCommandResponse.cs
index 1865574..4301ff3 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Overlay/SetShowScrollBottleneckRectsCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Overlay/SetShowScrollBottleneckRectsCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Overlay
diff --git a/source/ChromeDevTools/Protocol/Chrome/Overlay/SetShowViewportSizeOnResizeCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Overlay/SetShowViewportSizeOnResizeCommand.cs
index e1800a3..47f94c5 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Overlay/SetShowViewportSizeOnResizeCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Overlay/SetShowViewportSizeOnResizeCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Overlay
diff --git a/source/ChromeDevTools/Protocol/Chrome/Overlay/SetShowViewportSizeOnResizeCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Overlay/SetShowViewportSizeOnResizeCommandResponse.cs
index fc69730..f298fd9 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Overlay/SetShowViewportSizeOnResizeCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Overlay/SetShowViewportSizeOnResizeCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Overlay
diff --git a/source/ChromeDevTools/Protocol/Chrome/Overlay/SetSuspendedCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Overlay/SetSuspendedCommand.cs
index f6cee47..1d847a4 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Overlay/SetSuspendedCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Overlay/SetSuspendedCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Overlay
diff --git a/source/ChromeDevTools/Protocol/Chrome/Overlay/SetSuspendedCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Overlay/SetSuspendedCommandResponse.cs
index 2f9d9ca..74ddcff 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Overlay/SetSuspendedCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Overlay/SetSuspendedCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Overlay
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/AddScriptToEvaluateOnLoadCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Page/AddScriptToEvaluateOnLoadCommand.cs
index 88d8d19..3249a52 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/AddScriptToEvaluateOnLoadCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/AddScriptToEvaluateOnLoadCommand.cs
@@ -1,9 +1,14 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
 {
+	/// <summary>
+	/// Deprecated, please use addScriptToEvaluateOnNewDocument instead.
+	/// </summary>
+	[Obsolete("Deprecated, please use addScriptToEvaluateOnNewDocument instead.")]
 	[Command(ProtocolName.Page.AddScriptToEvaluateOnLoad)]
 	[SupportedBy("Chrome")]
 	public class AddScriptToEvaluateOnLoadCommand: ICommand<AddScriptToEvaluateOnLoadCommandResponse>
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/AddScriptToEvaluateOnLoadCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Page/AddScriptToEvaluateOnLoadCommandResponse.cs
index a8ff01f..08a5010 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/AddScriptToEvaluateOnLoadCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/AddScriptToEvaluateOnLoadCommandResponse.cs
@@ -1,9 +1,14 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
 {
+	/// <summary>
+	/// Deprecated, please use addScriptToEvaluateOnNewDocument instead.
+	/// </summary>
+	[Obsolete("Deprecated, please use addScriptToEvaluateOnNewDocument instead.")]
 	[CommandResponse(ProtocolName.Page.AddScriptToEvaluateOnLoad)]
 	[SupportedBy("Chrome")]
 	public class AddScriptToEvaluateOnLoadCommandResponse
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/AddScriptToEvaluateOnNewDocumentCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Page/AddScriptToEvaluateOnNewDocumentCommand.cs
new file mode 100644
index 0000000..29797f0
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/AddScriptToEvaluateOnNewDocumentCommand.cs
@@ -0,0 +1,20 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
+{
+	/// <summary>
+	/// Evaluates given script in every frame upon creation (before loading frame's scripts).
+	/// </summary>
+	[Command(ProtocolName.Page.AddScriptToEvaluateOnNewDocument)]
+	[SupportedBy("Chrome")]
+	public class AddScriptToEvaluateOnNewDocumentCommand: ICommand<AddScriptToEvaluateOnNewDocumentCommandResponse>
+	{
+		/// <summary>
+		/// Gets or sets Source
+		/// </summary>
+		public string Source { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/AddScriptToEvaluateOnNewDocumentCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Page/AddScriptToEvaluateOnNewDocumentCommandResponse.cs
new file mode 100644
index 0000000..5df419a
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/AddScriptToEvaluateOnNewDocumentCommandResponse.cs
@@ -0,0 +1,20 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
+{
+	/// <summary>
+	/// Evaluates given script in every frame upon creation (before loading frame's scripts).
+	/// </summary>
+	[CommandResponse(ProtocolName.Page.AddScriptToEvaluateOnNewDocument)]
+	[SupportedBy("Chrome")]
+	public class AddScriptToEvaluateOnNewDocumentCommandResponse
+	{
+		/// <summary>
+		/// Gets or sets Identifier of the added script.
+		/// </summary>
+		public string Identifier { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/BringToFrontCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Page/BringToFrontCommand.cs
new file mode 100644
index 0000000..e28d344
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/BringToFrontCommand.cs
@@ -0,0 +1,16 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
+{
+	/// <summary>
+	/// Brings page to front (activates tab).
+	/// </summary>
+	[Command(ProtocolName.Page.BringToFront)]
+	[SupportedBy("Chrome")]
+	public class BringToFrontCommand: ICommand<BringToFrontCommandResponse>
+	{
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/BringToFrontCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Page/BringToFrontCommandResponse.cs
new file mode 100644
index 0000000..37d0bcd
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/BringToFrontCommandResponse.cs
@@ -0,0 +1,16 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
+{
+	/// <summary>
+	/// Brings page to front (activates tab).
+	/// </summary>
+	[CommandResponse(ProtocolName.Page.BringToFront)]
+	[SupportedBy("Chrome")]
+	public class BringToFrontCommandResponse
+	{
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/CaptureScreenshotCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Page/CaptureScreenshotCommand.cs
index 361674c..bce1201 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/CaptureScreenshotCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/CaptureScreenshotCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
@@ -22,6 +23,11 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
 		public long? Quality { get; set; }
 		/// <summary>
+		/// Gets or sets Capture the screenshot of a given region only.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public Viewport Clip { get; set; }
+		/// <summary>
 		/// Gets or sets Capture the screenshot from the surface, rather than the view. Defaults to true.
 		/// </summary>
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/CaptureScreenshotCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Page/CaptureScreenshotCommandResponse.cs
index 393903f..8cff2b8 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/CaptureScreenshotCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/CaptureScreenshotCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/ClearDeviceMetricsOverrideCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Page/ClearDeviceMetricsOverrideCommand.cs
index 357a059..afaadfc 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/ClearDeviceMetricsOverrideCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/ClearDeviceMetricsOverrideCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/ClearDeviceMetricsOverrideCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Page/ClearDeviceMetricsOverrideCommandResponse.cs
index 099252d..b7cb83f 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/ClearDeviceMetricsOverrideCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/ClearDeviceMetricsOverrideCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/ClearDeviceOrientationOverrideCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Page/ClearDeviceOrientationOverrideCommand.cs
index 4721582..052e2de 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/ClearDeviceOrientationOverrideCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/ClearDeviceOrientationOverrideCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/ClearDeviceOrientationOverrideCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Page/ClearDeviceOrientationOverrideCommandResponse.cs
index 737913e..5445b7a 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/ClearDeviceOrientationOverrideCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/ClearDeviceOrientationOverrideCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/ClearGeolocationOverrideCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Page/ClearGeolocationOverrideCommand.cs
index 426cec6..eb2e364 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/ClearGeolocationOverrideCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/ClearGeolocationOverrideCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/ClearGeolocationOverrideCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Page/ClearGeolocationOverrideCommandResponse.cs
index 37c744a..0480185 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/ClearGeolocationOverrideCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/ClearGeolocationOverrideCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/CreateIsolatedWorldCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Page/CreateIsolatedWorldCommand.cs
index 98e8788..b8c01cf 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/CreateIsolatedWorldCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/CreateIsolatedWorldCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/CreateIsolatedWorldCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Page/CreateIsolatedWorldCommandResponse.cs
index 4fe8661..54fd29c 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/CreateIsolatedWorldCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/CreateIsolatedWorldCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
@@ -11,5 +12,9 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
 	[SupportedBy("Chrome")]
 	public class CreateIsolatedWorldCommandResponse
 	{
+		/// <summary>
+		/// Gets or sets Execution context of the isolated world.
+		/// </summary>
+		public long ExecutionContextId { get; set; }
 	}
 }
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/DeleteCookieCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Page/DeleteCookieCommand.cs
index 4792d16..2713878 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/DeleteCookieCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/DeleteCookieCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/DeleteCookieCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Page/DeleteCookieCommandResponse.cs
index 3cfbf58..e3aaf7c 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/DeleteCookieCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/DeleteCookieCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/DisableCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Page/DisableCommand.cs
index 8f8c612..10a57e7 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/DisableCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/DisableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/DisableCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Page/DisableCommandResponse.cs
index ca483b3..4b2ec0c 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/DisableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/DisableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/DomContentEventFiredEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Page/DomContentEventFiredEvent.cs
index 3bb1ea2..f3055ff 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/DomContentEventFiredEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/DomContentEventFiredEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/EnableCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Page/EnableCommand.cs
index 863f4f4..9ce6dfe 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/EnableCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/EnableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/EnableCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Page/EnableCommandResponse.cs
index 805756a..bb41413 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/EnableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/EnableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/Frame.cs b/source/ChromeDevTools/Protocol/Chrome/Page/Frame.cs
index ef99c61..49a0b2b 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/Frame.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/Frame.cs
@@ -40,5 +40,10 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
 		/// Gets or sets Frame document's mimeType as determined by the browser.
 		/// </summary>
 		public string MimeType { get; set; }
+		/// <summary>
+		/// Gets or sets If the frame failed to load, this contains the URL that could not be loaded.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string UnreachableUrl { get; set; }
 	}
 }
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/FrameAttachedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Page/FrameAttachedEvent.cs
index 04b63e8..5f16e84 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/FrameAttachedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/FrameAttachedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/FrameClearedScheduledNavigationEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Page/FrameClearedScheduledNavigationEvent.cs
index 2295b22..a3f4458 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/FrameClearedScheduledNavigationEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/FrameClearedScheduledNavigationEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/FrameDetachedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Page/FrameDetachedEvent.cs
index c48eab4..9db0c4a 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/FrameDetachedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/FrameDetachedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/FrameNavigatedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Page/FrameNavigatedEvent.cs
index 67100f6..a6c01e9 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/FrameNavigatedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/FrameNavigatedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/FrameResizedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Page/FrameResizedEvent.cs
index 36f1dd3..59d6404 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/FrameResizedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/FrameResizedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/FrameScheduledNavigationEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Page/FrameScheduledNavigationEvent.cs
index 0371060..579e1fc 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/FrameScheduledNavigationEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/FrameScheduledNavigationEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
 {
@@ -17,5 +19,13 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
 		/// Gets or sets Delay (in seconds) until the navigation is scheduled to begin. The navigation is not guaranteed to start.
 		/// </summary>
 		public double Delay { get; set; }
+		/// <summary>
+		/// Gets or sets The reason for the navigation.
+		/// </summary>
+		public string Reason { get; set; }
+		/// <summary>
+		/// Gets or sets The destination URL for the scheduled navigation.
+		/// </summary>
+		public string Url { get; set; }
 	}
 }
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/FrameStartedLoadingEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Page/FrameStartedLoadingEvent.cs
index 0536370..3f952fc 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/FrameStartedLoadingEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/FrameStartedLoadingEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/FrameStoppedLoadingEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Page/FrameStoppedLoadingEvent.cs
index 437b261..117ce78 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/FrameStoppedLoadingEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/FrameStoppedLoadingEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/GetAppManifestCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Page/GetAppManifestCommand.cs
index fc6cb6f..1b36e18 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/GetAppManifestCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/GetAppManifestCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/GetAppManifestCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Page/GetAppManifestCommandResponse.cs
index 8371023..7d7945e 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/GetAppManifestCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/GetAppManifestCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/GetCookiesCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Page/GetCookiesCommand.cs
index 9f245b3..32cdf54 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/GetCookiesCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/GetCookiesCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/GetCookiesCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Page/GetCookiesCommandResponse.cs
index cdc12f1..3a2be59 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/GetCookiesCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/GetCookiesCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/GetLayoutMetricsCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Page/GetLayoutMetricsCommand.cs
index 76739a4..aafe346 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/GetLayoutMetricsCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/GetLayoutMetricsCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/GetLayoutMetricsCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Page/GetLayoutMetricsCommandResponse.cs
index 3bb17cd..dab1717 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/GetLayoutMetricsCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/GetLayoutMetricsCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/GetNavigationHistoryCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Page/GetNavigationHistoryCommand.cs
index d2f006c..3498f82 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/GetNavigationHistoryCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/GetNavigationHistoryCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/GetNavigationHistoryCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Page/GetNavigationHistoryCommandResponse.cs
index 8996b43..3f2dd73 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/GetNavigationHistoryCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/GetNavigationHistoryCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/GetResourceContentCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Page/GetResourceContentCommand.cs
index 2091b1d..f91c205 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/GetResourceContentCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/GetResourceContentCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/GetResourceContentCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Page/GetResourceContentCommandResponse.cs
index aeea560..17e7aa0 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/GetResourceContentCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/GetResourceContentCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/GetResourceTreeCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Page/GetResourceTreeCommand.cs
index 9e1c676..229f708 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/GetResourceTreeCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/GetResourceTreeCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/GetResourceTreeCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Page/GetResourceTreeCommandResponse.cs
index 89fe246..095d621 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/GetResourceTreeCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/GetResourceTreeCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/HandleJavaScriptDialogCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Page/HandleJavaScriptDialogCommand.cs
index 4f02169..0e89edd 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/HandleJavaScriptDialogCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/HandleJavaScriptDialogCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/HandleJavaScriptDialogCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Page/HandleJavaScriptDialogCommandResponse.cs
index 3cad7d3..45318ef 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/HandleJavaScriptDialogCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/HandleJavaScriptDialogCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/InterstitialHiddenEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Page/InterstitialHiddenEvent.cs
index 81e1c6b..a3a1d95 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/InterstitialHiddenEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/InterstitialHiddenEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/InterstitialShownEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Page/InterstitialShownEvent.cs
index 4302255..f33948f 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/InterstitialShownEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/InterstitialShownEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/JavascriptDialogClosedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Page/JavascriptDialogClosedEvent.cs
index bd00584..0beaca4 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/JavascriptDialogClosedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/JavascriptDialogClosedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
 {
@@ -13,5 +15,9 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
 		/// Gets or sets Whether dialog was confirmed.
 		/// </summary>
 		public bool Result { get; set; }
+		/// <summary>
+		/// Gets or sets User input in case of prompt.
+		/// </summary>
+		public string UserInput { get; set; }
 	}
 }
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/JavascriptDialogOpeningEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Page/JavascriptDialogOpeningEvent.cs
index c0781a5..920f88c 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/JavascriptDialogOpeningEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/JavascriptDialogOpeningEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
 {
@@ -9,6 +11,10 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
 	[SupportedBy("Chrome")]
 	public class JavascriptDialogOpeningEvent
 	{
+		/// <summary>
+		/// Gets or sets Frame url.
+		/// </summary>
+		public string Url { get; set; }
 		/// <summary>
 		/// Gets or sets Message that will be displayed by the dialog.
 		/// </summary>
@@ -17,5 +23,10 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
 		/// Gets or sets Dialog type.
 		/// </summary>
 		public DialogType Type { get; set; }
+		/// <summary>
+		/// Gets or sets Default dialog prompt.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string DefaultPrompt { get; set; }
 	}
 }
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/LifecycleEventEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Page/LifecycleEventEvent.cs
new file mode 100644
index 0000000..611f1f7
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/LifecycleEventEvent.cs
@@ -0,0 +1,23 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
+{
+	/// <summary>
+	/// Fired for top level page lifecycle events such as navigation, load, paint, etc.
+	/// </summary>
+	[Event(ProtocolName.Page.LifecycleEvent)]
+	[SupportedBy("Chrome")]
+	public class LifecycleEventEvent
+	{
+		/// <summary>
+		/// Gets or sets Name
+		/// </summary>
+		public string Name { get; set; }
+		/// <summary>
+		/// Gets or sets Timestamp
+		/// </summary>
+		public double Timestamp { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/LoadEventFiredEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Page/LoadEventFiredEvent.cs
index 73480d1..f276ecd 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/LoadEventFiredEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/LoadEventFiredEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/NavigateCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Page/NavigateCommand.cs
index 549dbda..d76ac47 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/NavigateCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/NavigateCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/NavigateCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Page/NavigateCommandResponse.cs
index 3d8f407..8f07f4c 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/NavigateCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/NavigateCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/NavigateToHistoryEntryCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Page/NavigateToHistoryEntryCommand.cs
index af9de23..3a3cd58 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/NavigateToHistoryEntryCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/NavigateToHistoryEntryCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/NavigateToHistoryEntryCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Page/NavigateToHistoryEntryCommandResponse.cs
index 355e83a..52f10a5 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/NavigateToHistoryEntryCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/NavigateToHistoryEntryCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/NavigationRequestedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Page/NavigationRequestedEvent.cs
deleted file mode 100644
index 177a223..0000000
--- a/source/ChromeDevTools/Protocol/Chrome/Page/NavigationRequestedEvent.cs
+++ /dev/null
@@ -1,29 +0,0 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
-
-namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
-{
-	/// <summary>
-	/// Fired when a navigation is started if navigation throttles are enabled.  The navigation will be deferred until processNavigation is called.
-	/// </summary>
-	[Event(ProtocolName.Page.NavigationRequested)]
-	[SupportedBy("Chrome")]
-	public class NavigationRequestedEvent
-	{
-		/// <summary>
-		/// Gets or sets Whether the navigation is taking place in the main frame or in a subframe.
-		/// </summary>
-		public bool IsInMainFrame { get; set; }
-		/// <summary>
-		/// Gets or sets Whether the navigation has encountered a server redirect or not.
-		/// </summary>
-		public bool IsRedirect { get; set; }
-		/// <summary>
-		/// Gets or sets NavigationId
-		/// </summary>
-		public long NavigationId { get; set; }
-		/// <summary>
-		/// Gets or sets URL of requested navigation.
-		/// </summary>
-		public string Url { get; set; }
-	}
-}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/PrintToPDFCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Page/PrintToPDFCommand.cs
index 3d77153..3e9bf7e 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/PrintToPDFCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/PrintToPDFCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
@@ -66,5 +67,10 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
 		/// </summary>
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
 		public string PageRanges { get; set; }
+		/// <summary>
+		/// Gets or sets Whether to silently ignore invalid but successfully parsed page ranges, such as '3-2'. Defaults to false.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public bool? IgnoreInvalidPageRanges { get; set; }
 	}
 }
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/PrintToPDFCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Page/PrintToPDFCommandResponse.cs
index a503ff5..2f40ef1 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/PrintToPDFCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/PrintToPDFCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/ProcessNavigationCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Page/ProcessNavigationCommand.cs
deleted file mode 100644
index 6fff07f..0000000
--- a/source/ChromeDevTools/Protocol/Chrome/Page/ProcessNavigationCommand.cs
+++ /dev/null
@@ -1,23 +0,0 @@
-using MasterDevs.ChromeDevTools;
-using Newtonsoft.Json;
-using System.Collections.Generic;
-
-namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
-{
-	/// <summary>
-	/// Should be sent in response to a navigationRequested or a redirectRequested event, telling the browser how to handle the navigation.
-	/// </summary>
-	[Command(ProtocolName.Page.ProcessNavigation)]
-	[SupportedBy("Chrome")]
-	public class ProcessNavigationCommand: ICommand<ProcessNavigationCommandResponse>
-	{
-		/// <summary>
-		/// Gets or sets Response
-		/// </summary>
-		public string Response { get; set; }
-		/// <summary>
-		/// Gets or sets NavigationId
-		/// </summary>
-		public long NavigationId { get; set; }
-	}
-}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/ProcessNavigationCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Page/ProcessNavigationCommandResponse.cs
deleted file mode 100644
index 39e1374..0000000
--- a/source/ChromeDevTools/Protocol/Chrome/Page/ProcessNavigationCommandResponse.cs
+++ /dev/null
@@ -1,15 +0,0 @@
-using MasterDevs.ChromeDevTools;
-using Newtonsoft.Json;
-using System.Collections.Generic;
-
-namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
-{
-	/// <summary>
-	/// Should be sent in response to a navigationRequested or a redirectRequested event, telling the browser how to handle the navigation.
-	/// </summary>
-	[CommandResponse(ProtocolName.Page.ProcessNavigation)]
-	[SupportedBy("Chrome")]
-	public class ProcessNavigationCommandResponse
-	{
-	}
-}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/ReloadCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Page/ReloadCommand.cs
index 207ccb8..c118b96 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/ReloadCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/ReloadCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/ReloadCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Page/ReloadCommandResponse.cs
index 0948edd..c7be24f 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/ReloadCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/ReloadCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/RemoveScriptToEvaluateOnLoadCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Page/RemoveScriptToEvaluateOnLoadCommand.cs
index 45320f8..6db56d8 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/RemoveScriptToEvaluateOnLoadCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/RemoveScriptToEvaluateOnLoadCommand.cs
@@ -1,9 +1,14 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
 {
+	/// <summary>
+	/// Deprecated, please use removeScriptToEvaluateOnNewDocument instead.
+	/// </summary>
+	[Obsolete("Deprecated, please use removeScriptToEvaluateOnNewDocument instead.")]
 	[Command(ProtocolName.Page.RemoveScriptToEvaluateOnLoad)]
 	[SupportedBy("Chrome")]
 	public class RemoveScriptToEvaluateOnLoadCommand: ICommand<RemoveScriptToEvaluateOnLoadCommandResponse>
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/RemoveScriptToEvaluateOnLoadCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Page/RemoveScriptToEvaluateOnLoadCommandResponse.cs
index 00e3c44..e754550 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/RemoveScriptToEvaluateOnLoadCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/RemoveScriptToEvaluateOnLoadCommandResponse.cs
@@ -1,9 +1,14 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
 {
+	/// <summary>
+	/// Deprecated, please use removeScriptToEvaluateOnNewDocument instead.
+	/// </summary>
+	[Obsolete("Deprecated, please use removeScriptToEvaluateOnNewDocument instead.")]
 	[CommandResponse(ProtocolName.Page.RemoveScriptToEvaluateOnLoad)]
 	[SupportedBy("Chrome")]
 	public class RemoveScriptToEvaluateOnLoadCommandResponse
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/RemoveScriptToEvaluateOnNewDocumentCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Page/RemoveScriptToEvaluateOnNewDocumentCommand.cs
new file mode 100644
index 0000000..635d7ca
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/RemoveScriptToEvaluateOnNewDocumentCommand.cs
@@ -0,0 +1,20 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
+{
+	/// <summary>
+	/// Removes given script from the list.
+	/// </summary>
+	[Command(ProtocolName.Page.RemoveScriptToEvaluateOnNewDocument)]
+	[SupportedBy("Chrome")]
+	public class RemoveScriptToEvaluateOnNewDocumentCommand: ICommand<RemoveScriptToEvaluateOnNewDocumentCommandResponse>
+	{
+		/// <summary>
+		/// Gets or sets Identifier
+		/// </summary>
+		public string Identifier { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/RemoveScriptToEvaluateOnNewDocumentCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Page/RemoveScriptToEvaluateOnNewDocumentCommandResponse.cs
new file mode 100644
index 0000000..bf0e300
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/RemoveScriptToEvaluateOnNewDocumentCommandResponse.cs
@@ -0,0 +1,16 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
+{
+	/// <summary>
+	/// Removes given script from the list.
+	/// </summary>
+	[CommandResponse(ProtocolName.Page.RemoveScriptToEvaluateOnNewDocument)]
+	[SupportedBy("Chrome")]
+	public class RemoveScriptToEvaluateOnNewDocumentCommandResponse
+	{
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/RequestAppBannerCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Page/RequestAppBannerCommand.cs
index 5fa5a2b..b8a607b 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/RequestAppBannerCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/RequestAppBannerCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/RequestAppBannerCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Page/RequestAppBannerCommandResponse.cs
index 05ebf1a..ca9e885 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/RequestAppBannerCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/RequestAppBannerCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/ScreencastFrameAckCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Page/ScreencastFrameAckCommand.cs
index db0ab49..553ecbe 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/ScreencastFrameAckCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/ScreencastFrameAckCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/ScreencastFrameAckCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Page/ScreencastFrameAckCommandResponse.cs
index ee5a602..955db0d 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/ScreencastFrameAckCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/ScreencastFrameAckCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/ScreencastFrameEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Page/ScreencastFrameEvent.cs
index c8f2bff..ea940a6 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/ScreencastFrameEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/ScreencastFrameEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/ScreencastVisibilityChangedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Page/ScreencastVisibilityChangedEvent.cs
index c2c7aa0..345b83a 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/ScreencastVisibilityChangedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/ScreencastVisibilityChangedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/SearchInResourceCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Page/SearchInResourceCommand.cs
index c0cba1e..1ac83e8 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/SearchInResourceCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/SearchInResourceCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/SearchInResourceCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Page/SearchInResourceCommandResponse.cs
index 6630c6b..06e85c2 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/SearchInResourceCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/SearchInResourceCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/SetControlNavigationsCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Page/SetAdBlockingEnabledCommand.cs
similarity index 50%
rename from source/ChromeDevTools/Protocol/Chrome/Page/SetControlNavigationsCommand.cs
rename to source/ChromeDevTools/Protocol/Chrome/Page/SetAdBlockingEnabledCommand.cs
index 4746e40..82e3d40 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/SetControlNavigationsCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/SetAdBlockingEnabledCommand.cs
@@ -1,18 +1,19 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
 {
 	/// <summary>
-	/// Toggles navigation throttling which allows programatic control over navigation and redirect response.
+	/// Enable Chrome's experimental ad filter on all sites.
 	/// </summary>
-	[Command(ProtocolName.Page.SetControlNavigations)]
+	[Command(ProtocolName.Page.SetAdBlockingEnabled)]
 	[SupportedBy("Chrome")]
-	public class SetControlNavigationsCommand: ICommand<SetControlNavigationsCommandResponse>
+	public class SetAdBlockingEnabledCommand: ICommand<SetAdBlockingEnabledCommandResponse>
 	{
 		/// <summary>
-		/// Gets or sets Enabled
+		/// Gets or sets Whether to block ads.
 		/// </summary>
 		public bool Enabled { get; set; }
 	}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/SetAdBlockingEnabledCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Page/SetAdBlockingEnabledCommandResponse.cs
new file mode 100644
index 0000000..bcc0363
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/SetAdBlockingEnabledCommandResponse.cs
@@ -0,0 +1,16 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
+{
+	/// <summary>
+	/// Enable Chrome's experimental ad filter on all sites.
+	/// </summary>
+	[CommandResponse(ProtocolName.Page.SetAdBlockingEnabled)]
+	[SupportedBy("Chrome")]
+	public class SetAdBlockingEnabledCommandResponse
+	{
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/SetAutoAttachToCreatedPagesCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Page/SetAutoAttachToCreatedPagesCommand.cs
index f5ea83a..4545ac8 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/SetAutoAttachToCreatedPagesCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/SetAutoAttachToCreatedPagesCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/SetAutoAttachToCreatedPagesCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Page/SetAutoAttachToCreatedPagesCommandResponse.cs
index 09c0c11..2042e17 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/SetAutoAttachToCreatedPagesCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/SetAutoAttachToCreatedPagesCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/SetControlNavigationsCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Page/SetControlNavigationsCommandResponse.cs
deleted file mode 100644
index 02ab743..0000000
--- a/source/ChromeDevTools/Protocol/Chrome/Page/SetControlNavigationsCommandResponse.cs
+++ /dev/null
@@ -1,15 +0,0 @@
-using MasterDevs.ChromeDevTools;
-using Newtonsoft.Json;
-using System.Collections.Generic;
-
-namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
-{
-	/// <summary>
-	/// Toggles navigation throttling which allows programatic control over navigation and redirect response.
-	/// </summary>
-	[CommandResponse(ProtocolName.Page.SetControlNavigations)]
-	[SupportedBy("Chrome")]
-	public class SetControlNavigationsCommandResponse
-	{
-	}
-}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/SetDeviceMetricsOverrideCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Page/SetDeviceMetricsOverrideCommand.cs
index 0efb3ab..726e896 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/SetDeviceMetricsOverrideCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/SetDeviceMetricsOverrideCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
@@ -28,25 +29,11 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
 		/// </summary>
 		public bool Mobile { get; set; }
 		/// <summary>
-		/// Gets or sets Whether a view that exceeds the available browser window area should be scaled down to fit.
-		/// </summary>
-		public bool FitWindow { get; set; }
-		/// <summary>
 		/// Gets or sets Scale to apply to resulting view image. Ignored in |fitWindow| mode.
 		/// </summary>
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
 		public double Scale { get; set; }
 		/// <summary>
-		/// Gets or sets X offset to shift resulting view image by. Ignored in |fitWindow| mode.
-		/// </summary>
-		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
-		public double OffsetX { get; set; }
-		/// <summary>
-		/// Gets or sets Y offset to shift resulting view image by. Ignored in |fitWindow| mode.
-		/// </summary>
-		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
-		public double OffsetY { get; set; }
-		/// <summary>
 		/// Gets or sets Overriding screen width value in pixels (minimum 0, maximum 10000000). Only used for |mobile==true|.
 		/// </summary>
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
@@ -67,6 +54,11 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
 		public long? PositionY { get; set; }
 		/// <summary>
+		/// Gets or sets Do not set visible view size, rely upon explicit setVisibleSize call.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public bool? DontSetVisibleSize { get; set; }
+		/// <summary>
 		/// Gets or sets Screen orientation override.
 		/// </summary>
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/SetDeviceMetricsOverrideCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Page/SetDeviceMetricsOverrideCommandResponse.cs
index 08ba300..698e86a 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/SetDeviceMetricsOverrideCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/SetDeviceMetricsOverrideCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/SetDeviceOrientationOverrideCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Page/SetDeviceOrientationOverrideCommand.cs
index 52eea9e..fc99e6c 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/SetDeviceOrientationOverrideCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/SetDeviceOrientationOverrideCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/SetDeviceOrientationOverrideCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Page/SetDeviceOrientationOverrideCommandResponse.cs
index a7c58db..d64a196 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/SetDeviceOrientationOverrideCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/SetDeviceOrientationOverrideCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/SetDocumentContentCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Page/SetDocumentContentCommand.cs
index 6586a83..7de71d9 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/SetDocumentContentCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/SetDocumentContentCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/SetDocumentContentCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Page/SetDocumentContentCommandResponse.cs
index c9e2847..0e1e10d 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/SetDocumentContentCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/SetDocumentContentCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/SetDownloadBehaviorCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Page/SetDownloadBehaviorCommand.cs
new file mode 100644
index 0000000..8786b00
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/SetDownloadBehaviorCommand.cs
@@ -0,0 +1,25 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
+{
+	/// <summary>
+	/// Set the behavior when downloading a file.
+	/// </summary>
+	[Command(ProtocolName.Page.SetDownloadBehavior)]
+	[SupportedBy("Chrome")]
+	public class SetDownloadBehaviorCommand: ICommand<SetDownloadBehaviorCommandResponse>
+	{
+		/// <summary>
+		/// Gets or sets Whether to allow all or deny all download requests, or use default Chrome behavior if available (otherwise deny).
+		/// </summary>
+		public string Behavior { get; set; }
+		/// <summary>
+		/// Gets or sets The default path to save downloaded files to. This is requred if behavior is set to 'allow'
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string DownloadPath { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/SetDownloadBehaviorCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Page/SetDownloadBehaviorCommandResponse.cs
new file mode 100644
index 0000000..e181aab
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/SetDownloadBehaviorCommandResponse.cs
@@ -0,0 +1,16 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
+{
+	/// <summary>
+	/// Set the behavior when downloading a file.
+	/// </summary>
+	[CommandResponse(ProtocolName.Page.SetDownloadBehavior)]
+	[SupportedBy("Chrome")]
+	public class SetDownloadBehaviorCommandResponse
+	{
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/SetGeolocationOverrideCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Page/SetGeolocationOverrideCommand.cs
index ccae53f..67a1def 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/SetGeolocationOverrideCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/SetGeolocationOverrideCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/SetGeolocationOverrideCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Page/SetGeolocationOverrideCommandResponse.cs
index 2e75839..b1fba53 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/SetGeolocationOverrideCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/SetGeolocationOverrideCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/SetTouchEmulationEnabledCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Page/SetTouchEmulationEnabledCommand.cs
index 921e2f5..9fe2c08 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/SetTouchEmulationEnabledCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/SetTouchEmulationEnabledCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/SetTouchEmulationEnabledCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Page/SetTouchEmulationEnabledCommandResponse.cs
index 5b7d5cc..9c9694a 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/SetTouchEmulationEnabledCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/SetTouchEmulationEnabledCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/StartScreencastCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Page/StartScreencastCommand.cs
index 15ccdde..a836aaa 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/StartScreencastCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/StartScreencastCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/StartScreencastCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Page/StartScreencastCommandResponse.cs
index 6fa61b5..5574be6 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/StartScreencastCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/StartScreencastCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/StopLoadingCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Page/StopLoadingCommand.cs
index bcba50a..4a9c976 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/StopLoadingCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/StopLoadingCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/StopLoadingCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Page/StopLoadingCommandResponse.cs
index 9b41fa8..6a1332d 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/StopLoadingCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/StopLoadingCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/StopScreencastCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Page/StopScreencastCommand.cs
index 23c4a2c..4b77405 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/StopScreencastCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/StopScreencastCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/StopScreencastCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Page/StopScreencastCommandResponse.cs
index ffe0151..56743a4 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Page/StopScreencastCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/StopScreencastCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
diff --git a/source/ChromeDevTools/Protocol/Chrome/Page/Viewport.cs b/source/ChromeDevTools/Protocol/Chrome/Page/Viewport.cs
new file mode 100644
index 0000000..e6ce3cd
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Page/Viewport.cs
@@ -0,0 +1,34 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Page
+{
+	/// <summary>
+	/// Viewport for capturing screenshot.
+	/// </summary>
+	[SupportedBy("Chrome")]
+	public class Viewport
+	{
+		/// <summary>
+		/// Gets or sets X offset in CSS pixels.
+		/// </summary>
+		public double X { get; set; }
+		/// <summary>
+		/// Gets or sets Y offset in CSS pixels
+		/// </summary>
+		public double Y { get; set; }
+		/// <summary>
+		/// Gets or sets Rectangle width in CSS pixels
+		/// </summary>
+		public double Width { get; set; }
+		/// <summary>
+		/// Gets or sets Rectangle height in CSS pixels
+		/// </summary>
+		public double Height { get; set; }
+		/// <summary>
+		/// Gets or sets Page scale factor.
+		/// </summary>
+		public double Scale { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Performance/DisableCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Performance/DisableCommand.cs
new file mode 100644
index 0000000..0fc0d61
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Performance/DisableCommand.cs
@@ -0,0 +1,16 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Performance
+{
+	/// <summary>
+	/// Disable collecting and reporting metrics.
+	/// </summary>
+	[Command(ProtocolName.Performance.Disable)]
+	[SupportedBy("Chrome")]
+	public class DisableCommand: ICommand<DisableCommandResponse>
+	{
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Performance/DisableCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Performance/DisableCommandResponse.cs
new file mode 100644
index 0000000..dd0b27f
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Performance/DisableCommandResponse.cs
@@ -0,0 +1,16 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Performance
+{
+	/// <summary>
+	/// Disable collecting and reporting metrics.
+	/// </summary>
+	[CommandResponse(ProtocolName.Performance.Disable)]
+	[SupportedBy("Chrome")]
+	public class DisableCommandResponse
+	{
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Performance/EnableCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Performance/EnableCommand.cs
new file mode 100644
index 0000000..3bba6a5
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Performance/EnableCommand.cs
@@ -0,0 +1,16 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Performance
+{
+	/// <summary>
+	/// Enable collecting and reporting metrics.
+	/// </summary>
+	[Command(ProtocolName.Performance.Enable)]
+	[SupportedBy("Chrome")]
+	public class EnableCommand: ICommand<EnableCommandResponse>
+	{
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Performance/EnableCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Performance/EnableCommandResponse.cs
new file mode 100644
index 0000000..7d4ff04
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Performance/EnableCommandResponse.cs
@@ -0,0 +1,16 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Performance
+{
+	/// <summary>
+	/// Enable collecting and reporting metrics.
+	/// </summary>
+	[CommandResponse(ProtocolName.Performance.Enable)]
+	[SupportedBy("Chrome")]
+	public class EnableCommandResponse
+	{
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Performance/GetMetricsCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Performance/GetMetricsCommand.cs
new file mode 100644
index 0000000..a9bd7e8
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Performance/GetMetricsCommand.cs
@@ -0,0 +1,16 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Performance
+{
+	/// <summary>
+	/// Retrieve current values of run-time metrics.
+	/// </summary>
+	[Command(ProtocolName.Performance.GetMetrics)]
+	[SupportedBy("Chrome")]
+	public class GetMetricsCommand: ICommand<GetMetricsCommandResponse>
+	{
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Performance/GetMetricsCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Performance/GetMetricsCommandResponse.cs
new file mode 100644
index 0000000..02dd626
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Performance/GetMetricsCommandResponse.cs
@@ -0,0 +1,20 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Performance
+{
+	/// <summary>
+	/// Retrieve current values of run-time metrics.
+	/// </summary>
+	[CommandResponse(ProtocolName.Performance.GetMetrics)]
+	[SupportedBy("Chrome")]
+	public class GetMetricsCommandResponse
+	{
+		/// <summary>
+		/// Gets or sets Current values for run-time metrics.
+		/// </summary>
+		public Metric[] Metrics { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Performance/Metric.cs b/source/ChromeDevTools/Protocol/Chrome/Performance/Metric.cs
new file mode 100644
index 0000000..2314ebf
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Performance/Metric.cs
@@ -0,0 +1,22 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Performance
+{
+	/// <summary>
+	/// Run-time execution metric.
+	/// </summary>
+	[SupportedBy("Chrome")]
+	public class Metric
+	{
+		/// <summary>
+		/// Gets or sets Metric name.
+		/// </summary>
+		public string Name { get; set; }
+		/// <summary>
+		/// Gets or sets Metric value.
+		/// </summary>
+		public double Value { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Performance/MetricsEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Performance/MetricsEvent.cs
new file mode 100644
index 0000000..b4ec806
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Performance/MetricsEvent.cs
@@ -0,0 +1,23 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Performance
+{
+	/// <summary>
+	/// Current values of the metrics.
+	/// </summary>
+	[Event(ProtocolName.Performance.Metrics)]
+	[SupportedBy("Chrome")]
+	public class MetricsEvent
+	{
+		/// <summary>
+		/// Gets or sets Current values of the metrics.
+		/// </summary>
+		public Metric[] Metrics { get; set; }
+		/// <summary>
+		/// Gets or sets Timestamp title.
+		/// </summary>
+		public string Title { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Profiler/ConsoleProfileFinishedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Profiler/ConsoleProfileFinishedEvent.cs
index 2c15f13..16c898d 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Profiler/ConsoleProfileFinishedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Profiler/ConsoleProfileFinishedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Profiler
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Profiler/ConsoleProfileStartedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Profiler/ConsoleProfileStartedEvent.cs
index aa4da37..dbaa749 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Profiler/ConsoleProfileStartedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Profiler/ConsoleProfileStartedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Profiler
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Profiler/DisableCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Profiler/DisableCommand.cs
index aaa28a6..fcf254a 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Profiler/DisableCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Profiler/DisableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Profiler
diff --git a/source/ChromeDevTools/Protocol/Chrome/Profiler/DisableCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Profiler/DisableCommandResponse.cs
index 6b293e5..d26f5ac 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Profiler/DisableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Profiler/DisableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Profiler
diff --git a/source/ChromeDevTools/Protocol/Chrome/Profiler/EnableCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Profiler/EnableCommand.cs
index 16eae40..4d28926 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Profiler/EnableCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Profiler/EnableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Profiler
diff --git a/source/ChromeDevTools/Protocol/Chrome/Profiler/EnableCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Profiler/EnableCommandResponse.cs
index 2af7789..5ed2dd3 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Profiler/EnableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Profiler/EnableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Profiler
diff --git a/source/ChromeDevTools/Protocol/Chrome/Profiler/FunctionCoverage.cs b/source/ChromeDevTools/Protocol/Chrome/Profiler/FunctionCoverage.cs
index dfeba52..90c69f1 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Profiler/FunctionCoverage.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Profiler/FunctionCoverage.cs
@@ -18,5 +18,9 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Profiler
 		/// Gets or sets Source ranges inside the function with coverage data.
 		/// </summary>
 		public CoverageRange[] Ranges { get; set; }
+		/// <summary>
+		/// Gets or sets Whether coverage data for this function has block granularity.
+		/// </summary>
+		public bool IsBlockCoverage { get; set; }
 	}
 }
diff --git a/source/ChromeDevTools/Protocol/Chrome/Profiler/GetBestEffortCoverageCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Profiler/GetBestEffortCoverageCommand.cs
index 35af34f..bb2f7f1 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Profiler/GetBestEffortCoverageCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Profiler/GetBestEffortCoverageCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Profiler
diff --git a/source/ChromeDevTools/Protocol/Chrome/Profiler/GetBestEffortCoverageCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Profiler/GetBestEffortCoverageCommandResponse.cs
index b042b70..1be3bdc 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Profiler/GetBestEffortCoverageCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Profiler/GetBestEffortCoverageCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Profiler
diff --git a/source/ChromeDevTools/Protocol/Chrome/Profiler/SetSamplingIntervalCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Profiler/SetSamplingIntervalCommand.cs
index 2b8c688..18075bb 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Profiler/SetSamplingIntervalCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Profiler/SetSamplingIntervalCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Profiler
diff --git a/source/ChromeDevTools/Protocol/Chrome/Profiler/SetSamplingIntervalCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Profiler/SetSamplingIntervalCommandResponse.cs
index 2c713aa..c4f4487 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Profiler/SetSamplingIntervalCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Profiler/SetSamplingIntervalCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Profiler
diff --git a/source/ChromeDevTools/Protocol/Chrome/Profiler/StartCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Profiler/StartCommand.cs
index 1e103ab..a5b6cb1 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Profiler/StartCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Profiler/StartCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Profiler
diff --git a/source/ChromeDevTools/Protocol/Chrome/Profiler/StartCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Profiler/StartCommandResponse.cs
index ef64f59..3b711fd 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Profiler/StartCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Profiler/StartCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Profiler
diff --git a/source/ChromeDevTools/Protocol/Chrome/Profiler/StartPreciseCoverageCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Profiler/StartPreciseCoverageCommand.cs
index 6e9153a..b7056da 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Profiler/StartPreciseCoverageCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Profiler/StartPreciseCoverageCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Profiler
@@ -16,5 +17,10 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Profiler
 		/// </summary>
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
 		public bool? CallCount { get; set; }
+		/// <summary>
+		/// Gets or sets Collect block-based coverage.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public bool? Detailed { get; set; }
 	}
 }
diff --git a/source/ChromeDevTools/Protocol/Chrome/Profiler/StartPreciseCoverageCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Profiler/StartPreciseCoverageCommandResponse.cs
index a60aae6..5525307 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Profiler/StartPreciseCoverageCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Profiler/StartPreciseCoverageCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Profiler
diff --git a/source/ChromeDevTools/Protocol/Chrome/Profiler/StopCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Profiler/StopCommand.cs
index b5fd0c5..4c7ae37 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Profiler/StopCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Profiler/StopCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Profiler
diff --git a/source/ChromeDevTools/Protocol/Chrome/Profiler/StopCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Profiler/StopCommandResponse.cs
index 822efe7..ca3bb28 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Profiler/StopCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Profiler/StopCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Profiler
diff --git a/source/ChromeDevTools/Protocol/Chrome/Profiler/StopPreciseCoverageCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Profiler/StopPreciseCoverageCommand.cs
index 7072cee..e6d0f48 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Profiler/StopPreciseCoverageCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Profiler/StopPreciseCoverageCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Profiler
diff --git a/source/ChromeDevTools/Protocol/Chrome/Profiler/StopPreciseCoverageCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Profiler/StopPreciseCoverageCommandResponse.cs
index 8a99cc0..7ada032 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Profiler/StopPreciseCoverageCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Profiler/StopPreciseCoverageCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Profiler
diff --git a/source/ChromeDevTools/Protocol/Chrome/Profiler/TakePreciseCoverageCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Profiler/TakePreciseCoverageCommand.cs
index e2270db..5a6dafc 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Profiler/TakePreciseCoverageCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Profiler/TakePreciseCoverageCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Profiler
diff --git a/source/ChromeDevTools/Protocol/Chrome/Profiler/TakePreciseCoverageCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Profiler/TakePreciseCoverageCommandResponse.cs
index 549fd3d..af3f9df 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Profiler/TakePreciseCoverageCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Profiler/TakePreciseCoverageCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Profiler
diff --git a/source/ChromeDevTools/Protocol/Chrome/ProtocolName.cs b/source/ChromeDevTools/Protocol/Chrome/ProtocolName.cs
index b51f897..4ded09b 100644
--- a/source/ChromeDevTools/Protocol/Chrome/ProtocolName.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/ProtocolName.cs
@@ -24,6 +24,7 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome
 			public const string SetCustomObjectFormatterEnabled = "Runtime.setCustomObjectFormatterEnabled";
 			public const string CompileScript = "Runtime.compileScript";
 			public const string RunScript = "Runtime.runScript";
+			public const string QueryObjects = "Runtime.queryObjects";
 			public const string ExecutionContextCreated = "Runtime.executionContextCreated";
 			public const string ExecutionContextDestroyed = "Runtime.executionContextDestroyed";
 			public const string ExecutionContextsCleared = "Runtime.executionContextsCleared";
@@ -121,18 +122,30 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome
 		public static class Memory
 		{
 			public const string GetDOMCounters = "Memory.getDOMCounters";
+			public const string PrepareForLeakDetection = "Memory.prepareForLeakDetection";
 			public const string SetPressureNotificationsSuppressed = "Memory.setPressureNotificationsSuppressed";
 			public const string SimulatePressureNotification = "Memory.simulatePressureNotification";
 		}
 
+		public static class Performance
+		{
+			public const string Enable = "Performance.enable";
+			public const string Disable = "Performance.disable";
+			public const string GetMetrics = "Performance.getMetrics";
+			public const string Metrics = "Performance.metrics";
+		}
+
 		public static class Page
 		{
 			public const string Enable = "Page.enable";
 			public const string Disable = "Page.disable";
 			public const string AddScriptToEvaluateOnLoad = "Page.addScriptToEvaluateOnLoad";
 			public const string RemoveScriptToEvaluateOnLoad = "Page.removeScriptToEvaluateOnLoad";
+			public const string AddScriptToEvaluateOnNewDocument = "Page.addScriptToEvaluateOnNewDocument";
+			public const string RemoveScriptToEvaluateOnNewDocument = "Page.removeScriptToEvaluateOnNewDocument";
 			public const string SetAutoAttachToCreatedPages = "Page.setAutoAttachToCreatedPages";
 			public const string Reload = "Page.reload";
+			public const string SetAdBlockingEnabled = "Page.setAdBlockingEnabled";
 			public const string Navigate = "Page.navigate";
 			public const string StopLoading = "Page.stopLoading";
 			public const string GetNavigationHistory = "Page.getNavigationHistory";
@@ -158,12 +171,13 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome
 			public const string HandleJavaScriptDialog = "Page.handleJavaScriptDialog";
 			public const string GetAppManifest = "Page.getAppManifest";
 			public const string RequestAppBanner = "Page.requestAppBanner";
-			public const string SetControlNavigations = "Page.setControlNavigations";
-			public const string ProcessNavigation = "Page.processNavigation";
 			public const string GetLayoutMetrics = "Page.getLayoutMetrics";
 			public const string CreateIsolatedWorld = "Page.createIsolatedWorld";
+			public const string BringToFront = "Page.bringToFront";
+			public const string SetDownloadBehavior = "Page.setDownloadBehavior";
 			public const string DomContentEventFired = "Page.domContentEventFired";
 			public const string LoadEventFired = "Page.loadEventFired";
+			public const string LifecycleEvent = "Page.lifecycleEvent";
 			public const string FrameAttached = "Page.frameAttached";
 			public const string FrameNavigated = "Page.frameNavigated";
 			public const string FrameDetached = "Page.frameDetached";
@@ -178,7 +192,6 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome
 			public const string ScreencastVisibilityChanged = "Page.screencastVisibilityChanged";
 			public const string InterstitialShown = "Page.interstitialShown";
 			public const string InterstitialHidden = "Page.interstitialHidden";
-			public const string NavigationRequested = "Page.navigationRequested";
 		}
 
 		public static class Overlay
@@ -201,14 +214,13 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome
 			public const string GetHighlightObjectForTest = "Overlay.getHighlightObjectForTest";
 			public const string NodeHighlightRequested = "Overlay.nodeHighlightRequested";
 			public const string InspectNodeRequested = "Overlay.inspectNodeRequested";
+			public const string ScreenshotRequested = "Overlay.screenshotRequested";
 		}
 
 		public static class Emulation
 		{
 			public const string SetDeviceMetricsOverride = "Emulation.setDeviceMetricsOverride";
 			public const string ClearDeviceMetricsOverride = "Emulation.clearDeviceMetricsOverride";
-			public const string ForceViewport = "Emulation.forceViewport";
-			public const string ResetViewport = "Emulation.resetViewport";
 			public const string ResetPageScaleFactor = "Emulation.resetPageScaleFactor";
 			public const string SetPageScaleFactor = "Emulation.setPageScaleFactor";
 			public const string SetVisibleSize = "Emulation.setVisibleSize";
@@ -216,25 +228,31 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome
 			public const string SetGeolocationOverride = "Emulation.setGeolocationOverride";
 			public const string ClearGeolocationOverride = "Emulation.clearGeolocationOverride";
 			public const string SetTouchEmulationEnabled = "Emulation.setTouchEmulationEnabled";
+			public const string SetEmitTouchEventsForMouse = "Emulation.setEmitTouchEventsForMouse";
 			public const string SetEmulatedMedia = "Emulation.setEmulatedMedia";
 			public const string SetCPUThrottlingRate = "Emulation.setCPUThrottlingRate";
 			public const string CanEmulate = "Emulation.canEmulate";
 			public const string SetVirtualTimePolicy = "Emulation.setVirtualTimePolicy";
 			public const string SetDefaultBackgroundColorOverride = "Emulation.setDefaultBackgroundColorOverride";
 			public const string VirtualTimeBudgetExpired = "Emulation.virtualTimeBudgetExpired";
+			public const string VirtualTimePaused = "Emulation.virtualTimePaused";
 		}
 
 		public static class Security
 		{
 			public const string Enable = "Security.enable";
 			public const string Disable = "Security.disable";
-			public const string ShowCertificateViewer = "Security.showCertificateViewer";
 			public const string HandleCertificateError = "Security.handleCertificateError";
 			public const string SetOverrideCertificateErrors = "Security.setOverrideCertificateErrors";
 			public const string SecurityStateChanged = "Security.securityStateChanged";
 			public const string CertificateError = "Security.certificateError";
 		}
 
+		public static class Audits
+		{
+			public const string GetEncodedResponse = "Audits.getEncodedResponse";
+		}
+
 		public static class Network
 		{
 			public const string Enable = "Network.enable";
@@ -250,14 +268,17 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome
 			public const string ClearBrowserCookies = "Network.clearBrowserCookies";
 			public const string GetCookies = "Network.getCookies";
 			public const string GetAllCookies = "Network.getAllCookies";
-			public const string DeleteCookie = "Network.deleteCookie";
+			public const string DeleteCookies = "Network.deleteCookies";
 			public const string SetCookie = "Network.setCookie";
+			public const string SetCookies = "Network.setCookies";
 			public const string CanEmulateNetworkConditions = "Network.canEmulateNetworkConditions";
 			public const string EmulateNetworkConditions = "Network.emulateNetworkConditions";
 			public const string SetCacheDisabled = "Network.setCacheDisabled";
 			public const string SetBypassServiceWorker = "Network.setBypassServiceWorker";
 			public const string SetDataSizeLimitsForTest = "Network.setDataSizeLimitsForTest";
 			public const string GetCertificate = "Network.getCertificate";
+			public const string SetRequestInterceptionEnabled = "Network.setRequestInterceptionEnabled";
+			public const string ContinueInterceptedRequest = "Network.continueInterceptedRequest";
 			public const string ResourceChangedPriority = "Network.resourceChangedPriority";
 			public const string RequestWillBeSent = "Network.requestWillBeSent";
 			public const string RequestServedFromCache = "Network.requestServedFromCache";
@@ -273,6 +294,7 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome
 			public const string WebSocketFrameError = "Network.webSocketFrameError";
 			public const string WebSocketFrameSent = "Network.webSocketFrameSent";
 			public const string EventSourceMessageReceived = "Network.eventSourceMessageReceived";
+			public const string RequestIntercepted = "Network.requestIntercepted";
 		}
 
 		public static class Database
@@ -301,6 +323,7 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome
 			public const string RequestEntries = "CacheStorage.requestEntries";
 			public const string DeleteCache = "CacheStorage.deleteCache";
 			public const string DeleteEntry = "CacheStorage.deleteEntry";
+			public const string RequestCachedResponse = "CacheStorage.requestCachedResponse";
 		}
 
 		public static class DOMStorage
@@ -367,6 +390,7 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome
 			public const string GetBoxModel = "DOM.getBoxModel";
 			public const string GetNodeForLocation = "DOM.getNodeForLocation";
 			public const string GetRelayoutBoundary = "DOM.getRelayoutBoundary";
+			public const string DescribeNode = "DOM.describeNode";
 			public const string DocumentUpdated = "DOM.documentUpdated";
 			public const string SetChildNodes = "DOM.setChildNodes";
 			public const string AttributeModified = "DOM.attributeModified";
@@ -404,7 +428,6 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome
 			public const string GetMediaQueries = "CSS.getMediaQueries";
 			public const string SetEffectivePropertyValueForNode = "CSS.setEffectivePropertyValueForNode";
 			public const string GetBackgroundColors = "CSS.getBackgroundColors";
-			public const string GetLayoutTreeAndStyles = "CSS.getLayoutTreeAndStyles";
 			public const string StartRuleUsageTracking = "CSS.startRuleUsageTracking";
 			public const string TakeCoverageDelta = "CSS.takeCoverageDelta";
 			public const string StopRuleUsageTracking = "CSS.stopRuleUsageTracking";
@@ -415,10 +438,16 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome
 			public const string StyleSheetRemoved = "CSS.styleSheetRemoved";
 		}
 
+		public static class DOMSnapshot
+		{
+			public const string GetSnapshot = "DOMSnapshot.getSnapshot";
+		}
+
 		public static class IO
 		{
 			public const string Read = "IO.read";
 			public const string Close = "IO.close";
+			public const string ResolveBlob = "IO.resolveBlob";
 		}
 
 		public static class DOMDebugger
@@ -451,6 +480,7 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome
 			public const string CreateTarget = "Target.createTarget";
 			public const string GetTargets = "Target.getTargets";
 			public const string TargetCreated = "Target.targetCreated";
+			public const string TargetInfoChanged = "Target.targetInfoChanged";
 			public const string TargetDestroyed = "Target.targetDestroyed";
 			public const string AttachedToTarget = "Target.attachedToTarget";
 			public const string DetachedFromTarget = "Target.detachedFromTarget";
@@ -545,6 +575,11 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome
 		public static class Storage
 		{
 			public const string ClearDataForOrigin = "Storage.clearDataForOrigin";
+			public const string GetUsageAndQuota = "Storage.getUsageAndQuota";
+			public const string TrackCacheStorageForOrigin = "Storage.trackCacheStorageForOrigin";
+			public const string UntrackCacheStorageForOrigin = "Storage.untrackCacheStorageForOrigin";
+			public const string CacheStorageListUpdated = "Storage.cacheStorageListUpdated";
+			public const string CacheStorageContentUpdated = "Storage.cacheStorageContentUpdated";
 		}
 
 		public static class Log
@@ -572,6 +607,7 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome
 		public static class Browser
 		{
 			public const string GetWindowForTarget = "Browser.getWindowForTarget";
+			public const string GetVersion = "Browser.getVersion";
 			public const string SetWindowBounds = "Browser.setWindowBounds";
 			public const string GetWindowBounds = "Browser.getWindowBounds";
 		}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Runtime/AwaitPromiseCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Runtime/AwaitPromiseCommand.cs
index 5a9cd91..2b687bc 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Runtime/AwaitPromiseCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Runtime/AwaitPromiseCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
diff --git a/source/ChromeDevTools/Protocol/Chrome/Runtime/AwaitPromiseCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Runtime/AwaitPromiseCommandResponse.cs
index a9978d5..e096aa7 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Runtime/AwaitPromiseCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Runtime/AwaitPromiseCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
diff --git a/source/ChromeDevTools/Protocol/Chrome/Runtime/CallArgument.cs b/source/ChromeDevTools/Protocol/Chrome/Runtime/CallArgument.cs
index a015ba9..60472ae 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Runtime/CallArgument.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Runtime/CallArgument.cs
@@ -11,7 +11,7 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
 	public class CallArgument
 	{
 		/// <summary>
-		/// Gets or sets Primitive value.
+		/// Gets or sets Primitive value or serializable javascript object.
 		/// </summary>
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
 		public object Value { get; set; }
diff --git a/source/ChromeDevTools/Protocol/Chrome/Runtime/CallFunctionOnCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Runtime/CallFunctionOnCommand.cs
index 834a399..fb8b680 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Runtime/CallFunctionOnCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Runtime/CallFunctionOnCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
@@ -45,7 +46,7 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
 		public bool? UserGesture { get; set; }
 		/// <summary>
-		/// Gets or sets Whether execution should wait for promise to be resolved. If the result of evaluation is not a Promise, it's considered to be an error.
+		/// Gets or sets Whether execution should <code>await</code> for resulting value and return once awaited promise is resolved.
 		/// </summary>
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
 		public bool? AwaitPromise { get; set; }
diff --git a/source/ChromeDevTools/Protocol/Chrome/Runtime/CallFunctionOnCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Runtime/CallFunctionOnCommandResponse.cs
index 7bed517..1847153 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Runtime/CallFunctionOnCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Runtime/CallFunctionOnCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
diff --git a/source/ChromeDevTools/Protocol/Chrome/Runtime/CompileScriptCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Runtime/CompileScriptCommand.cs
index 896fc0f..3de5bf4 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Runtime/CompileScriptCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Runtime/CompileScriptCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
diff --git a/source/ChromeDevTools/Protocol/Chrome/Runtime/CompileScriptCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Runtime/CompileScriptCommandResponse.cs
index 4167c49..4f58494 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Runtime/CompileScriptCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Runtime/CompileScriptCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
diff --git a/source/ChromeDevTools/Protocol/Chrome/Runtime/ConsoleAPICalledEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Runtime/ConsoleAPICalledEvent.cs
index f1d70d3..1043b1e 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Runtime/ConsoleAPICalledEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Runtime/ConsoleAPICalledEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
 {
@@ -30,5 +32,10 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
 		/// </summary>
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
 		public StackTrace StackTrace { get; set; }
+		/// <summary>
+		/// Gets or sets Console context descriptor for calls on non-default console context (not console.*): 'anonymous#unique-logger-id' for call on unnamed context, 'name#unique-logger-id' for call on named context.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string Context { get; set; }
 	}
 }
diff --git a/source/ChromeDevTools/Protocol/Chrome/Runtime/CustomPreview.cs b/source/ChromeDevTools/Protocol/Chrome/Runtime/CustomPreview.cs
index 2da7ee7..f211a4b 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Runtime/CustomPreview.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Runtime/CustomPreview.cs
@@ -4,9 +4,6 @@ using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
 {
-	/// <summary>
-	/// 
-	/// </summary>
 	[SupportedBy("Chrome")]
 	public class CustomPreview
 	{
diff --git a/source/ChromeDevTools/Protocol/Chrome/Runtime/DisableCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Runtime/DisableCommand.cs
index e6e049c..3103fed 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Runtime/DisableCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Runtime/DisableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
diff --git a/source/ChromeDevTools/Protocol/Chrome/Runtime/DisableCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Runtime/DisableCommandResponse.cs
index 9ad2d97..9356e8c 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Runtime/DisableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Runtime/DisableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
diff --git a/source/ChromeDevTools/Protocol/Chrome/Runtime/DiscardConsoleEntriesCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Runtime/DiscardConsoleEntriesCommand.cs
index 9738281..7040e61 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Runtime/DiscardConsoleEntriesCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Runtime/DiscardConsoleEntriesCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
diff --git a/source/ChromeDevTools/Protocol/Chrome/Runtime/DiscardConsoleEntriesCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Runtime/DiscardConsoleEntriesCommandResponse.cs
index 3151e63..ec2429f 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Runtime/DiscardConsoleEntriesCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Runtime/DiscardConsoleEntriesCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
diff --git a/source/ChromeDevTools/Protocol/Chrome/Runtime/EnableCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Runtime/EnableCommand.cs
index 5d14738..19f7128 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Runtime/EnableCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Runtime/EnableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
diff --git a/source/ChromeDevTools/Protocol/Chrome/Runtime/EnableCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Runtime/EnableCommandResponse.cs
index 15b4749..5499856 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Runtime/EnableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Runtime/EnableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
diff --git a/source/ChromeDevTools/Protocol/Chrome/Runtime/EntryPreview.cs b/source/ChromeDevTools/Protocol/Chrome/Runtime/EntryPreview.cs
index 24cd89b..fca978d 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Runtime/EntryPreview.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Runtime/EntryPreview.cs
@@ -4,9 +4,6 @@ using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
 {
-	/// <summary>
-	/// 
-	/// </summary>
 	[SupportedBy("Chrome")]
 	public class EntryPreview
 	{
diff --git a/source/ChromeDevTools/Protocol/Chrome/Runtime/EvaluateCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Runtime/EvaluateCommand.cs
index 0eb6c82..521d297 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Runtime/EvaluateCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Runtime/EvaluateCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
@@ -51,7 +52,7 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
 		public bool? UserGesture { get; set; }
 		/// <summary>
-		/// Gets or sets Whether execution should wait for promise to be resolved. If the result of evaluation is not a Promise, it's considered to be an error.
+		/// Gets or sets Whether execution should <code>await</code> for resulting value and return once awaited promise is resolved.
 		/// </summary>
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
 		public bool? AwaitPromise { get; set; }
diff --git a/source/ChromeDevTools/Protocol/Chrome/Runtime/EvaluateCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Runtime/EvaluateCommandResponse.cs
index 1f7d767..4ff328a 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Runtime/EvaluateCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Runtime/EvaluateCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
diff --git a/source/ChromeDevTools/Protocol/Chrome/Runtime/ExceptionRevokedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Runtime/ExceptionRevokedEvent.cs
index 202cfcb..65a6a5e 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Runtime/ExceptionRevokedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Runtime/ExceptionRevokedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Runtime/ExceptionThrownEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Runtime/ExceptionThrownEvent.cs
index a695600..f932841 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Runtime/ExceptionThrownEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Runtime/ExceptionThrownEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Runtime/ExecutionContextCreatedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Runtime/ExecutionContextCreatedEvent.cs
index 53d76bb..6212970 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Runtime/ExecutionContextCreatedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Runtime/ExecutionContextCreatedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Runtime/ExecutionContextDestroyedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Runtime/ExecutionContextDestroyedEvent.cs
index 4d43bd4..115ad12 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Runtime/ExecutionContextDestroyedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Runtime/ExecutionContextDestroyedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Runtime/ExecutionContextsClearedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Runtime/ExecutionContextsClearedEvent.cs
index 8d4a8b3..caaec33 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Runtime/ExecutionContextsClearedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Runtime/ExecutionContextsClearedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Runtime/GetPropertiesCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Runtime/GetPropertiesCommand.cs
index 2d20d64..b769d13 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Runtime/GetPropertiesCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Runtime/GetPropertiesCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
diff --git a/source/ChromeDevTools/Protocol/Chrome/Runtime/GetPropertiesCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Runtime/GetPropertiesCommandResponse.cs
index db45ce6..e70eb4b 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Runtime/GetPropertiesCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Runtime/GetPropertiesCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
diff --git a/source/ChromeDevTools/Protocol/Chrome/Runtime/InspectRequestedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Runtime/InspectRequestedEvent.cs
index 4234047..5fa5108 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Runtime/InspectRequestedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Runtime/InspectRequestedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Runtime/PropertyPreview.cs b/source/ChromeDevTools/Protocol/Chrome/Runtime/PropertyPreview.cs
index c48da64..09d353b 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Runtime/PropertyPreview.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Runtime/PropertyPreview.cs
@@ -4,9 +4,6 @@ using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
 {
-	/// <summary>
-	/// 
-	/// </summary>
 	[SupportedBy("Chrome")]
 	public class PropertyPreview
 	{
diff --git a/source/ChromeDevTools/Protocol/Chrome/Runtime/QueryObjectsCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Runtime/QueryObjectsCommand.cs
new file mode 100644
index 0000000..4d0b979
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Runtime/QueryObjectsCommand.cs
@@ -0,0 +1,17 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
+{
+	[Command(ProtocolName.Runtime.QueryObjects)]
+	[SupportedBy("Chrome")]
+	public class QueryObjectsCommand: ICommand<QueryObjectsCommandResponse>
+	{
+		/// <summary>
+		/// Gets or sets Identifier of the prototype to return objects for.
+		/// </summary>
+		public string PrototypeObjectId { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Runtime/QueryObjectsCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Runtime/QueryObjectsCommandResponse.cs
new file mode 100644
index 0000000..9af51d8
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Runtime/QueryObjectsCommandResponse.cs
@@ -0,0 +1,17 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
+{
+	[CommandResponse(ProtocolName.Runtime.QueryObjects)]
+	[SupportedBy("Chrome")]
+	public class QueryObjectsCommandResponse
+	{
+		/// <summary>
+		/// Gets or sets Array with objects.
+		/// </summary>
+		public RemoteObject Objects { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Runtime/ReleaseObjectCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Runtime/ReleaseObjectCommand.cs
index a9bc1e6..d4cbcc0 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Runtime/ReleaseObjectCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Runtime/ReleaseObjectCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
diff --git a/source/ChromeDevTools/Protocol/Chrome/Runtime/ReleaseObjectCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Runtime/ReleaseObjectCommandResponse.cs
index 957e3f7..3690d97 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Runtime/ReleaseObjectCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Runtime/ReleaseObjectCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
diff --git a/source/ChromeDevTools/Protocol/Chrome/Runtime/ReleaseObjectGroupCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Runtime/ReleaseObjectGroupCommand.cs
index e8f12fd..f7fb8f8 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Runtime/ReleaseObjectGroupCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Runtime/ReleaseObjectGroupCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
diff --git a/source/ChromeDevTools/Protocol/Chrome/Runtime/ReleaseObjectGroupCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Runtime/ReleaseObjectGroupCommandResponse.cs
index 0f271c7..cd7a00c 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Runtime/ReleaseObjectGroupCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Runtime/ReleaseObjectGroupCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
diff --git a/source/ChromeDevTools/Protocol/Chrome/Runtime/RunIfWaitingForDebuggerCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Runtime/RunIfWaitingForDebuggerCommand.cs
index b88249c..6d5ce7a 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Runtime/RunIfWaitingForDebuggerCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Runtime/RunIfWaitingForDebuggerCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
diff --git a/source/ChromeDevTools/Protocol/Chrome/Runtime/RunIfWaitingForDebuggerCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Runtime/RunIfWaitingForDebuggerCommandResponse.cs
index 4d82cb0..3a4de4e 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Runtime/RunIfWaitingForDebuggerCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Runtime/RunIfWaitingForDebuggerCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
diff --git a/source/ChromeDevTools/Protocol/Chrome/Runtime/RunScriptCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Runtime/RunScriptCommand.cs
index cf0041b..37a2999 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Runtime/RunScriptCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Runtime/RunScriptCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
@@ -46,7 +47,7 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
 		public bool? GeneratePreview { get; set; }
 		/// <summary>
-		/// Gets or sets Whether execution should wait for promise to be resolved. If the result of evaluation is not a Promise, it's considered to be an error.
+		/// Gets or sets Whether execution should <code>await</code> for resulting value and return once awaited promise is resolved.
 		/// </summary>
 		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
 		public bool? AwaitPromise { get; set; }
diff --git a/source/ChromeDevTools/Protocol/Chrome/Runtime/RunScriptCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Runtime/RunScriptCommandResponse.cs
index 91a939a..0e80796 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Runtime/RunScriptCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Runtime/RunScriptCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
diff --git a/source/ChromeDevTools/Protocol/Chrome/Runtime/SetCustomObjectFormatterEnabledCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Runtime/SetCustomObjectFormatterEnabledCommand.cs
index ede82b6..d7512f5 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Runtime/SetCustomObjectFormatterEnabledCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Runtime/SetCustomObjectFormatterEnabledCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
diff --git a/source/ChromeDevTools/Protocol/Chrome/Runtime/SetCustomObjectFormatterEnabledCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Runtime/SetCustomObjectFormatterEnabledCommandResponse.cs
index 56749da..fadc5c7 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Runtime/SetCustomObjectFormatterEnabledCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Runtime/SetCustomObjectFormatterEnabledCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Runtime
diff --git a/source/ChromeDevTools/Protocol/Chrome/Schema/GetDomainsCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Schema/GetDomainsCommand.cs
index 63266ed..11885d3 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Schema/GetDomainsCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Schema/GetDomainsCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Schema
diff --git a/source/ChromeDevTools/Protocol/Chrome/Schema/GetDomainsCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Schema/GetDomainsCommandResponse.cs
index 44d411f..d2112c7 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Schema/GetDomainsCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Schema/GetDomainsCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Schema
diff --git a/source/ChromeDevTools/Protocol/Chrome/Security/CertificateErrorEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Security/CertificateErrorEvent.cs
index e6f8d20..1c22ef9 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Security/CertificateErrorEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Security/CertificateErrorEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Security
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Security/DisableCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Security/DisableCommand.cs
index 8cf8dff..155d80c 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Security/DisableCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Security/DisableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Security
diff --git a/source/ChromeDevTools/Protocol/Chrome/Security/DisableCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Security/DisableCommandResponse.cs
index 1bdd9b4..2f0125f 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Security/DisableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Security/DisableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Security
diff --git a/source/ChromeDevTools/Protocol/Chrome/Security/EnableCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Security/EnableCommand.cs
index 308eaf7..a38e005 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Security/EnableCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Security/EnableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Security
diff --git a/source/ChromeDevTools/Protocol/Chrome/Security/EnableCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Security/EnableCommandResponse.cs
index 4163246..517ae0d 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Security/EnableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Security/EnableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Security
diff --git a/source/ChromeDevTools/Protocol/Chrome/Security/HandleCertificateErrorCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Security/HandleCertificateErrorCommand.cs
index 204335b..f518fed 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Security/HandleCertificateErrorCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Security/HandleCertificateErrorCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Security
diff --git a/source/ChromeDevTools/Protocol/Chrome/Security/HandleCertificateErrorCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Security/HandleCertificateErrorCommandResponse.cs
index c89f256..f1fcb3a 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Security/HandleCertificateErrorCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Security/HandleCertificateErrorCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Security
diff --git a/source/ChromeDevTools/Protocol/Chrome/Security/MixedContentType.cs b/source/ChromeDevTools/Protocol/Chrome/Security/MixedContentType.cs
new file mode 100644
index 0000000..b8e1db0
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Security/MixedContentType.cs
@@ -0,0 +1,19 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using Newtonsoft.Json.Converters;
+using System.Runtime.Serialization;
+
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Security{
+	/// <summary>
+	/// A description of mixed content (HTTP resources on HTTPS pages), as defined by https://www.w3.org/TR/mixed-content/#categories
+	/// </summary>
+	[JsonConverter(typeof(StringEnumConverter))]
+	public enum MixedContentType
+	{
+			Blockable,
+			[EnumMember(Value = "optionally-blockable")]
+			Optionally_blockable,
+			None,
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Security/SecurityState.cs b/source/ChromeDevTools/Protocol/Chrome/Security/SecurityState.cs
index 50c3a00..d4936a2 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Security/SecurityState.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Security/SecurityState.cs
@@ -14,7 +14,6 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Security{
 			Unknown,
 			Neutral,
 			Insecure,
-			Warning,
 			Secure,
 			Info,
 	}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Security/SecurityStateChangedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Security/SecurityStateChangedEvent.cs
index 607b782..138ecf9 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Security/SecurityStateChangedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Security/SecurityStateChangedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Security
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Security/SecurityStateExplanation.cs b/source/ChromeDevTools/Protocol/Chrome/Security/SecurityStateExplanation.cs
index 6ca684a..05e1cbb 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Security/SecurityStateExplanation.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Security/SecurityStateExplanation.cs
@@ -23,8 +23,12 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Security
 		/// </summary>
 		public string Description { get; set; }
 		/// <summary>
-		/// Gets or sets True if the page has a certificate.
+		/// Gets or sets The type of mixed content described by the explanation.
 		/// </summary>
-		public bool HasCertificate { get; set; }
+		public MixedContentType MixedContentType { get; set; }
+		/// <summary>
+		/// Gets or sets Page certificate.
+		/// </summary>
+		public string[] Certificate { get; set; }
 	}
 }
diff --git a/source/ChromeDevTools/Protocol/Chrome/Security/SetOverrideCertificateErrorsCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Security/SetOverrideCertificateErrorsCommand.cs
index 809a72b..d007ca0 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Security/SetOverrideCertificateErrorsCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Security/SetOverrideCertificateErrorsCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Security
diff --git a/source/ChromeDevTools/Protocol/Chrome/Security/SetOverrideCertificateErrorsCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Security/SetOverrideCertificateErrorsCommandResponse.cs
index fd90815..2fb348a 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Security/SetOverrideCertificateErrorsCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Security/SetOverrideCertificateErrorsCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Security
diff --git a/source/ChromeDevTools/Protocol/Chrome/Security/ShowCertificateViewerCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Security/ShowCertificateViewerCommand.cs
deleted file mode 100644
index 9ca0f7e..0000000
--- a/source/ChromeDevTools/Protocol/Chrome/Security/ShowCertificateViewerCommand.cs
+++ /dev/null
@@ -1,15 +0,0 @@
-using MasterDevs.ChromeDevTools;
-using Newtonsoft.Json;
-using System.Collections.Generic;
-
-namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Security
-{
-	/// <summary>
-	/// Displays native dialog with the certificate details.
-	/// </summary>
-	[Command(ProtocolName.Security.ShowCertificateViewer)]
-	[SupportedBy("Chrome")]
-	public class ShowCertificateViewerCommand: ICommand<ShowCertificateViewerCommandResponse>
-	{
-	}
-}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Security/ShowCertificateViewerCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Security/ShowCertificateViewerCommandResponse.cs
deleted file mode 100644
index 0f5b7f4..0000000
--- a/source/ChromeDevTools/Protocol/Chrome/Security/ShowCertificateViewerCommandResponse.cs
+++ /dev/null
@@ -1,15 +0,0 @@
-using MasterDevs.ChromeDevTools;
-using Newtonsoft.Json;
-using System.Collections.Generic;
-
-namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Security
-{
-	/// <summary>
-	/// Displays native dialog with the certificate details.
-	/// </summary>
-	[CommandResponse(ProtocolName.Security.ShowCertificateViewer)]
-	[SupportedBy("Chrome")]
-	public class ShowCertificateViewerCommandResponse
-	{
-	}
-}
diff --git a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/DeliverPushMessageCommand.cs b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/DeliverPushMessageCommand.cs
index d3d68d7..bd527cb 100644
--- a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/DeliverPushMessageCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/DeliverPushMessageCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.ServiceWorker
diff --git a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/DeliverPushMessageCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/DeliverPushMessageCommandResponse.cs
index 71a8762..3420c55 100644
--- a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/DeliverPushMessageCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/DeliverPushMessageCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.ServiceWorker
diff --git a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/DisableCommand.cs b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/DisableCommand.cs
index 70bee32..a2feee5 100644
--- a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/DisableCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/DisableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.ServiceWorker
diff --git a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/DisableCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/DisableCommandResponse.cs
index 699bba1..0dca158 100644
--- a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/DisableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/DisableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.ServiceWorker
diff --git a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/DispatchSyncEventCommand.cs b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/DispatchSyncEventCommand.cs
index d042e3e..9106d13 100644
--- a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/DispatchSyncEventCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/DispatchSyncEventCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.ServiceWorker
diff --git a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/DispatchSyncEventCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/DispatchSyncEventCommandResponse.cs
index 483a304..8574d74 100644
--- a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/DispatchSyncEventCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/DispatchSyncEventCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.ServiceWorker
diff --git a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/EnableCommand.cs b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/EnableCommand.cs
index a6e8b07..2916f10 100644
--- a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/EnableCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/EnableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.ServiceWorker
diff --git a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/EnableCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/EnableCommandResponse.cs
index e46132f..9f0b48c 100644
--- a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/EnableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/EnableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.ServiceWorker
diff --git a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/InspectWorkerCommand.cs b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/InspectWorkerCommand.cs
index 97860a8..bccc93e 100644
--- a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/InspectWorkerCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/InspectWorkerCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.ServiceWorker
diff --git a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/InspectWorkerCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/InspectWorkerCommandResponse.cs
index bec06cc..e5c912d 100644
--- a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/InspectWorkerCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/InspectWorkerCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.ServiceWorker
diff --git a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/SetForceUpdateOnPageLoadCommand.cs b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/SetForceUpdateOnPageLoadCommand.cs
index 4c3056e..916c3cf 100644
--- a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/SetForceUpdateOnPageLoadCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/SetForceUpdateOnPageLoadCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.ServiceWorker
diff --git a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/SetForceUpdateOnPageLoadCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/SetForceUpdateOnPageLoadCommandResponse.cs
index b03940c..db65c7a 100644
--- a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/SetForceUpdateOnPageLoadCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/SetForceUpdateOnPageLoadCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.ServiceWorker
diff --git a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/SkipWaitingCommand.cs b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/SkipWaitingCommand.cs
index 12e9430..79d2e6d 100644
--- a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/SkipWaitingCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/SkipWaitingCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.ServiceWorker
diff --git a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/SkipWaitingCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/SkipWaitingCommandResponse.cs
index a69e2a9..1f8265c 100644
--- a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/SkipWaitingCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/SkipWaitingCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.ServiceWorker
diff --git a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/StartWorkerCommand.cs b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/StartWorkerCommand.cs
index 70ddebe..3418217 100644
--- a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/StartWorkerCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/StartWorkerCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.ServiceWorker
diff --git a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/StartWorkerCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/StartWorkerCommandResponse.cs
index b0cd3b4..e4e6a9c 100644
--- a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/StartWorkerCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/StartWorkerCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.ServiceWorker
diff --git a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/StopWorkerCommand.cs b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/StopWorkerCommand.cs
index b96299c..6fa188b 100644
--- a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/StopWorkerCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/StopWorkerCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.ServiceWorker
diff --git a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/StopWorkerCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/StopWorkerCommandResponse.cs
index 0779737..c55f1c9 100644
--- a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/StopWorkerCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/StopWorkerCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.ServiceWorker
diff --git a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/UnregisterCommand.cs b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/UnregisterCommand.cs
index c48a4fd..71f7775 100644
--- a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/UnregisterCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/UnregisterCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.ServiceWorker
diff --git a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/UnregisterCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/UnregisterCommandResponse.cs
index 121b0e1..3070899 100644
--- a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/UnregisterCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/UnregisterCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.ServiceWorker
diff --git a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/UpdateRegistrationCommand.cs b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/UpdateRegistrationCommand.cs
index 14a8fcb..52480da 100644
--- a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/UpdateRegistrationCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/UpdateRegistrationCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.ServiceWorker
diff --git a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/UpdateRegistrationCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/UpdateRegistrationCommandResponse.cs
index 369893c..a86d7a8 100644
--- a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/UpdateRegistrationCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/UpdateRegistrationCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.ServiceWorker
diff --git a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/WorkerErrorReportedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/WorkerErrorReportedEvent.cs
index 592c4ea..e81f454 100644
--- a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/WorkerErrorReportedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/WorkerErrorReportedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.ServiceWorker
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/WorkerRegistrationUpdatedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/WorkerRegistrationUpdatedEvent.cs
index aa89ac8..d46400e 100644
--- a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/WorkerRegistrationUpdatedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/WorkerRegistrationUpdatedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.ServiceWorker
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/WorkerVersionUpdatedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/WorkerVersionUpdatedEvent.cs
index 3aec55e..53e9a91 100644
--- a/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/WorkerVersionUpdatedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/ServiceWorker/WorkerVersionUpdatedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.ServiceWorker
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Storage/CacheStorageContentUpdatedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Storage/CacheStorageContentUpdatedEvent.cs
new file mode 100644
index 0000000..7d0d21f
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Storage/CacheStorageContentUpdatedEvent.cs
@@ -0,0 +1,23 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Storage
+{
+	/// <summary>
+	/// A cache's contents have been modified.
+	/// </summary>
+	[Event(ProtocolName.Storage.CacheStorageContentUpdated)]
+	[SupportedBy("Chrome")]
+	public class CacheStorageContentUpdatedEvent
+	{
+		/// <summary>
+		/// Gets or sets Origin to update.
+		/// </summary>
+		public string Origin { get; set; }
+		/// <summary>
+		/// Gets or sets Name of cache in origin.
+		/// </summary>
+		public string CacheName { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Storage/CacheStorageListUpdatedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Storage/CacheStorageListUpdatedEvent.cs
new file mode 100644
index 0000000..bd622a4
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Storage/CacheStorageListUpdatedEvent.cs
@@ -0,0 +1,19 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Storage
+{
+	/// <summary>
+	/// A cache has been added/deleted.
+	/// </summary>
+	[Event(ProtocolName.Storage.CacheStorageListUpdated)]
+	[SupportedBy("Chrome")]
+	public class CacheStorageListUpdatedEvent
+	{
+		/// <summary>
+		/// Gets or sets Origin to update.
+		/// </summary>
+		public string Origin { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Storage/ClearDataForOriginCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Storage/ClearDataForOriginCommand.cs
index 4d3ff77..085a3d6 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Storage/ClearDataForOriginCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Storage/ClearDataForOriginCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Storage
diff --git a/source/ChromeDevTools/Protocol/Chrome/Storage/ClearDataForOriginCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Storage/ClearDataForOriginCommandResponse.cs
index 8820401..c4d1217 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Storage/ClearDataForOriginCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Storage/ClearDataForOriginCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Storage
diff --git a/source/ChromeDevTools/Protocol/Chrome/Storage/GetUsageAndQuotaCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Storage/GetUsageAndQuotaCommand.cs
new file mode 100644
index 0000000..0755b90
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Storage/GetUsageAndQuotaCommand.cs
@@ -0,0 +1,20 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Storage
+{
+	/// <summary>
+	/// Returns usage and quota in bytes.
+	/// </summary>
+	[Command(ProtocolName.Storage.GetUsageAndQuota)]
+	[SupportedBy("Chrome")]
+	public class GetUsageAndQuotaCommand: ICommand<GetUsageAndQuotaCommandResponse>
+	{
+		/// <summary>
+		/// Gets or sets Security origin.
+		/// </summary>
+		public string Origin { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Storage/GetUsageAndQuotaCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Storage/GetUsageAndQuotaCommandResponse.cs
new file mode 100644
index 0000000..52466e9
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Storage/GetUsageAndQuotaCommandResponse.cs
@@ -0,0 +1,28 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Storage
+{
+	/// <summary>
+	/// Returns usage and quota in bytes.
+	/// </summary>
+	[CommandResponse(ProtocolName.Storage.GetUsageAndQuota)]
+	[SupportedBy("Chrome")]
+	public class GetUsageAndQuotaCommandResponse
+	{
+		/// <summary>
+		/// Gets or sets Storage usage (bytes).
+		/// </summary>
+		public double Usage { get; set; }
+		/// <summary>
+		/// Gets or sets Storage quota (bytes).
+		/// </summary>
+		public double Quota { get; set; }
+		/// <summary>
+		/// Gets or sets Storage usage per type (bytes).
+		/// </summary>
+		public UsageForType[] UsageBreakdown { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Storage/StorageType.cs b/source/ChromeDevTools/Protocol/Chrome/Storage/StorageType.cs
index 3193656..928e2a6 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Storage/StorageType.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Storage/StorageType.cs
@@ -21,5 +21,6 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Storage{
 			Service_workers,
 			Cache_storage,
 			All,
+			Other,
 	}
 }
diff --git a/source/ChromeDevTools/Protocol/Chrome/Storage/TrackCacheStorageForOriginCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Storage/TrackCacheStorageForOriginCommand.cs
new file mode 100644
index 0000000..8ead90d
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Storage/TrackCacheStorageForOriginCommand.cs
@@ -0,0 +1,20 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Storage
+{
+	/// <summary>
+	/// Registers origin to be notified when an update occurs to its cache storage list.
+	/// </summary>
+	[Command(ProtocolName.Storage.TrackCacheStorageForOrigin)]
+	[SupportedBy("Chrome")]
+	public class TrackCacheStorageForOriginCommand: ICommand<TrackCacheStorageForOriginCommandResponse>
+	{
+		/// <summary>
+		/// Gets or sets Security origin.
+		/// </summary>
+		public string Origin { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Storage/TrackCacheStorageForOriginCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Storage/TrackCacheStorageForOriginCommandResponse.cs
new file mode 100644
index 0000000..04e4983
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Storage/TrackCacheStorageForOriginCommandResponse.cs
@@ -0,0 +1,16 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Storage
+{
+	/// <summary>
+	/// Registers origin to be notified when an update occurs to its cache storage list.
+	/// </summary>
+	[CommandResponse(ProtocolName.Storage.TrackCacheStorageForOrigin)]
+	[SupportedBy("Chrome")]
+	public class TrackCacheStorageForOriginCommandResponse
+	{
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Storage/UntrackCacheStorageForOriginCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Storage/UntrackCacheStorageForOriginCommand.cs
new file mode 100644
index 0000000..6460202
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Storage/UntrackCacheStorageForOriginCommand.cs
@@ -0,0 +1,20 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Storage
+{
+	/// <summary>
+	/// Unregisters origin from receiving notifications for cache storage.
+	/// </summary>
+	[Command(ProtocolName.Storage.UntrackCacheStorageForOrigin)]
+	[SupportedBy("Chrome")]
+	public class UntrackCacheStorageForOriginCommand: ICommand<UntrackCacheStorageForOriginCommandResponse>
+	{
+		/// <summary>
+		/// Gets or sets Security origin.
+		/// </summary>
+		public string Origin { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Storage/UntrackCacheStorageForOriginCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Storage/UntrackCacheStorageForOriginCommandResponse.cs
new file mode 100644
index 0000000..767801c
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Storage/UntrackCacheStorageForOriginCommandResponse.cs
@@ -0,0 +1,16 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Storage
+{
+	/// <summary>
+	/// Unregisters origin from receiving notifications for cache storage.
+	/// </summary>
+	[CommandResponse(ProtocolName.Storage.UntrackCacheStorageForOrigin)]
+	[SupportedBy("Chrome")]
+	public class UntrackCacheStorageForOriginCommandResponse
+	{
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Storage/UsageForType.cs b/source/ChromeDevTools/Protocol/Chrome/Storage/UsageForType.cs
new file mode 100644
index 0000000..5e7211c
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Storage/UsageForType.cs
@@ -0,0 +1,22 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Storage
+{
+	/// <summary>
+	/// Usage for a storage type.
+	/// </summary>
+	[SupportedBy("Chrome")]
+	public class UsageForType
+	{
+		/// <summary>
+		/// Gets or sets Name of storage type.
+		/// </summary>
+		public StorageType StorageType { get; set; }
+		/// <summary>
+		/// Gets or sets Storage usage (bytes).
+		/// </summary>
+		public double Usage { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/SystemInfo/GetInfoCommand.cs b/source/ChromeDevTools/Protocol/Chrome/SystemInfo/GetInfoCommand.cs
index 0bbf654..9c36c9c 100644
--- a/source/ChromeDevTools/Protocol/Chrome/SystemInfo/GetInfoCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/SystemInfo/GetInfoCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.SystemInfo
diff --git a/source/ChromeDevTools/Protocol/Chrome/SystemInfo/GetInfoCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/SystemInfo/GetInfoCommandResponse.cs
index f0c22ea..f68e700 100644
--- a/source/ChromeDevTools/Protocol/Chrome/SystemInfo/GetInfoCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/SystemInfo/GetInfoCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.SystemInfo
diff --git a/source/ChromeDevTools/Protocol/Chrome/Target/ActivateTargetCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Target/ActivateTargetCommand.cs
index 0b64ed8..d3825f7 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Target/ActivateTargetCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Target/ActivateTargetCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Target
diff --git a/source/ChromeDevTools/Protocol/Chrome/Target/ActivateTargetCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Target/ActivateTargetCommandResponse.cs
index 998f61f..9dd5a69 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Target/ActivateTargetCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Target/ActivateTargetCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Target
diff --git a/source/ChromeDevTools/Protocol/Chrome/Target/AttachToTargetCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Target/AttachToTargetCommand.cs
index dee1b73..69a64e6 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Target/AttachToTargetCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Target/AttachToTargetCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Target
diff --git a/source/ChromeDevTools/Protocol/Chrome/Target/AttachToTargetCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Target/AttachToTargetCommandResponse.cs
index 954dfeb..7e50232 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Target/AttachToTargetCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Target/AttachToTargetCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Target
@@ -12,8 +13,8 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Target
 	public class AttachToTargetCommandResponse
 	{
 		/// <summary>
-		/// Gets or sets Whether attach succeeded.
+		/// Gets or sets Id assigned to the session.
 		/// </summary>
-		public bool Success { get; set; }
+		public string SessionId { get; set; }
 	}
 }
diff --git a/source/ChromeDevTools/Protocol/Chrome/Target/AttachedToTargetEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Target/AttachedToTargetEvent.cs
index f8f3bd2..351bb3e 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Target/AttachedToTargetEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Target/AttachedToTargetEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Target
 {
@@ -9,6 +11,10 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Target
 	[SupportedBy("Chrome")]
 	public class AttachedToTargetEvent
 	{
+		/// <summary>
+		/// Gets or sets Identifier assigned to the session used to send/receive messages.
+		/// </summary>
+		public string SessionId { get; set; }
 		/// <summary>
 		/// Gets or sets TargetInfo
 		/// </summary>
diff --git a/source/ChromeDevTools/Protocol/Chrome/Target/CloseTargetCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Target/CloseTargetCommand.cs
index a12dfbb..d17b430 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Target/CloseTargetCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Target/CloseTargetCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Target
diff --git a/source/ChromeDevTools/Protocol/Chrome/Target/CloseTargetCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Target/CloseTargetCommandResponse.cs
index d6020d1..d658ab4 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Target/CloseTargetCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Target/CloseTargetCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Target
diff --git a/source/ChromeDevTools/Protocol/Chrome/Target/CreateBrowserContextCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Target/CreateBrowserContextCommand.cs
index c5e80c6..490a509 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Target/CreateBrowserContextCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Target/CreateBrowserContextCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Target
diff --git a/source/ChromeDevTools/Protocol/Chrome/Target/CreateBrowserContextCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Target/CreateBrowserContextCommandResponse.cs
index d3b8d61..d07dc58 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Target/CreateBrowserContextCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Target/CreateBrowserContextCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Target
diff --git a/source/ChromeDevTools/Protocol/Chrome/Target/CreateTargetCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Target/CreateTargetCommand.cs
index 6fdf50b..1724817 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Target/CreateTargetCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Target/CreateTargetCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Target
diff --git a/source/ChromeDevTools/Protocol/Chrome/Target/CreateTargetCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Target/CreateTargetCommandResponse.cs
index 0a34bf5..7e06abf 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Target/CreateTargetCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Target/CreateTargetCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Target
diff --git a/source/ChromeDevTools/Protocol/Chrome/Target/DetachFromTargetCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Target/DetachFromTargetCommand.cs
index 087e57d..6fcc3f8 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Target/DetachFromTargetCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Target/DetachFromTargetCommand.cs
@@ -1,19 +1,26 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Target
 {
 	/// <summary>
-	/// Detaches from the target with given id.
+	/// Detaches session with given id.
 	/// </summary>
 	[Command(ProtocolName.Target.DetachFromTarget)]
 	[SupportedBy("Chrome")]
 	public class DetachFromTargetCommand: ICommand<DetachFromTargetCommandResponse>
 	{
 		/// <summary>
-		/// Gets or sets TargetId
+		/// Gets or sets Session to detach.
 		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string SessionId { get; set; }
+		/// <summary>
+		/// Gets or sets Deprecated.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
 		public string TargetId { get; set; }
 	}
 }
diff --git a/source/ChromeDevTools/Protocol/Chrome/Target/DetachFromTargetCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Target/DetachFromTargetCommandResponse.cs
index 0efd4f9..0f612bb 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Target/DetachFromTargetCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Target/DetachFromTargetCommandResponse.cs
@@ -1,11 +1,12 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Target
 {
 	/// <summary>
-	/// Detaches from the target with given id.
+	/// Detaches session with given id.
 	/// </summary>
 	[CommandResponse(ProtocolName.Target.DetachFromTarget)]
 	[SupportedBy("Chrome")]
diff --git a/source/ChromeDevTools/Protocol/Chrome/Target/DetachedFromTargetEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Target/DetachedFromTargetEvent.cs
index ceca8bd..6f49445 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Target/DetachedFromTargetEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Target/DetachedFromTargetEvent.cs
@@ -1,17 +1,24 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Target
 {
 	/// <summary>
-	/// Issued when detached from target for any reason (including <code>detachFromTarget</code> command).
+	/// Issued when detached from target for any reason (including <code>detachFromTarget</code> command). Can be issued multiple times per target if multiple sessions have been attached to it.
 	/// </summary>
 	[Event(ProtocolName.Target.DetachedFromTarget)]
 	[SupportedBy("Chrome")]
 	public class DetachedFromTargetEvent
 	{
 		/// <summary>
-		/// Gets or sets TargetId
+		/// Gets or sets Detached session identifier.
 		/// </summary>
+		public string SessionId { get; set; }
+		/// <summary>
+		/// Gets or sets Deprecated.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
 		public string TargetId { get; set; }
 	}
 }
diff --git a/source/ChromeDevTools/Protocol/Chrome/Target/DisposeBrowserContextCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Target/DisposeBrowserContextCommand.cs
index 4cea500..78ae3d6 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Target/DisposeBrowserContextCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Target/DisposeBrowserContextCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Target
diff --git a/source/ChromeDevTools/Protocol/Chrome/Target/DisposeBrowserContextCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Target/DisposeBrowserContextCommandResponse.cs
index 638b2a7..7b925cf 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Target/DisposeBrowserContextCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Target/DisposeBrowserContextCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Target
diff --git a/source/ChromeDevTools/Protocol/Chrome/Target/GetTargetInfoCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Target/GetTargetInfoCommand.cs
index ed6ac59..7a5527a 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Target/GetTargetInfoCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Target/GetTargetInfoCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Target
diff --git a/source/ChromeDevTools/Protocol/Chrome/Target/GetTargetInfoCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Target/GetTargetInfoCommandResponse.cs
index 9501d12..e2e80e7 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Target/GetTargetInfoCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Target/GetTargetInfoCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Target
diff --git a/source/ChromeDevTools/Protocol/Chrome/Target/GetTargetsCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Target/GetTargetsCommand.cs
index 00b00c1..d6e658d 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Target/GetTargetsCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Target/GetTargetsCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Target
diff --git a/source/ChromeDevTools/Protocol/Chrome/Target/GetTargetsCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Target/GetTargetsCommandResponse.cs
index 815149c..0094ec4 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Target/GetTargetsCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Target/GetTargetsCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Target
diff --git a/source/ChromeDevTools/Protocol/Chrome/Target/ReceivedMessageFromTargetEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Target/ReceivedMessageFromTargetEvent.cs
index fc71fe5..1723eb6 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Target/ReceivedMessageFromTargetEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Target/ReceivedMessageFromTargetEvent.cs
@@ -1,21 +1,28 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Target
 {
 	/// <summary>
-	/// Notifies about new protocol message from attached target.
+	/// Notifies about a new protocol message received from the session (as reported in <code>attachedToTarget</code> event).
 	/// </summary>
 	[Event(ProtocolName.Target.ReceivedMessageFromTarget)]
 	[SupportedBy("Chrome")]
 	public class ReceivedMessageFromTargetEvent
 	{
 		/// <summary>
-		/// Gets or sets TargetId
+		/// Gets or sets Identifier of a session which sends a message.
 		/// </summary>
-		public string TargetId { get; set; }
+		public string SessionId { get; set; }
 		/// <summary>
 		/// Gets or sets Message
 		/// </summary>
 		public string Message { get; set; }
+		/// <summary>
+		/// Gets or sets Deprecated.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string TargetId { get; set; }
 	}
 }
diff --git a/source/ChromeDevTools/Protocol/Chrome/Target/RemoteLocation.cs b/source/ChromeDevTools/Protocol/Chrome/Target/RemoteLocation.cs
index c33bc2e..4636eac 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Target/RemoteLocation.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Target/RemoteLocation.cs
@@ -4,9 +4,6 @@ using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Target
 {
-	/// <summary>
-	/// 
-	/// </summary>
 	[SupportedBy("Chrome")]
 	public class RemoteLocation
 	{
diff --git a/source/ChromeDevTools/Protocol/Chrome/Target/SendMessageToTargetCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Target/SendMessageToTargetCommand.cs
index 036c507..47d4b25 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Target/SendMessageToTargetCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Target/SendMessageToTargetCommand.cs
@@ -1,23 +1,30 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Target
 {
 	/// <summary>
-	/// Sends protocol message to the target with given id.
+	/// Sends protocol message over session with given id.
 	/// </summary>
 	[Command(ProtocolName.Target.SendMessageToTarget)]
 	[SupportedBy("Chrome")]
 	public class SendMessageToTargetCommand: ICommand<SendMessageToTargetCommandResponse>
 	{
-		/// <summary>
-		/// Gets or sets TargetId
-		/// </summary>
-		public string TargetId { get; set; }
 		/// <summary>
 		/// Gets or sets Message
 		/// </summary>
 		public string Message { get; set; }
+		/// <summary>
+		/// Gets or sets Identifier of the session.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string SessionId { get; set; }
+		/// <summary>
+		/// Gets or sets Deprecated.
+		/// </summary>
+		[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
+		public string TargetId { get; set; }
 	}
 }
diff --git a/source/ChromeDevTools/Protocol/Chrome/Target/SendMessageToTargetCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Target/SendMessageToTargetCommandResponse.cs
index 2e25cd3..0943275 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Target/SendMessageToTargetCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Target/SendMessageToTargetCommandResponse.cs
@@ -1,11 +1,12 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Target
 {
 	/// <summary>
-	/// Sends protocol message to the target with given id.
+	/// Sends protocol message over session with given id.
 	/// </summary>
 	[CommandResponse(ProtocolName.Target.SendMessageToTarget)]
 	[SupportedBy("Chrome")]
diff --git a/source/ChromeDevTools/Protocol/Chrome/Target/SetAttachToFramesCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Target/SetAttachToFramesCommand.cs
index 1a63593..e4c2195 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Target/SetAttachToFramesCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Target/SetAttachToFramesCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Target
diff --git a/source/ChromeDevTools/Protocol/Chrome/Target/SetAttachToFramesCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Target/SetAttachToFramesCommandResponse.cs
index 2a3de22..a81b02d 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Target/SetAttachToFramesCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Target/SetAttachToFramesCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Target
diff --git a/source/ChromeDevTools/Protocol/Chrome/Target/SetAutoAttachCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Target/SetAutoAttachCommand.cs
index d17ac37..c02bf1d 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Target/SetAutoAttachCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Target/SetAutoAttachCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Target
diff --git a/source/ChromeDevTools/Protocol/Chrome/Target/SetAutoAttachCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Target/SetAutoAttachCommandResponse.cs
index 43d78e9..9a37a61 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Target/SetAutoAttachCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Target/SetAutoAttachCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Target
diff --git a/source/ChromeDevTools/Protocol/Chrome/Target/SetDiscoverTargetsCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Target/SetDiscoverTargetsCommand.cs
index ff6f875..74d6fc2 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Target/SetDiscoverTargetsCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Target/SetDiscoverTargetsCommand.cs
@@ -1,11 +1,12 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Target
 {
 	/// <summary>
-	/// Controls whether to discover available targets and notify via <code>targetCreated/targetDestroyed</code> events.
+	/// Controls whether to discover available targets and notify via <code>targetCreated/targetInfoChanged/targetDestroyed</code> events.
 	/// </summary>
 	[Command(ProtocolName.Target.SetDiscoverTargets)]
 	[SupportedBy("Chrome")]
diff --git a/source/ChromeDevTools/Protocol/Chrome/Target/SetDiscoverTargetsCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Target/SetDiscoverTargetsCommandResponse.cs
index 3f1315c..c0e4b4f 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Target/SetDiscoverTargetsCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Target/SetDiscoverTargetsCommandResponse.cs
@@ -1,11 +1,12 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Target
 {
 	/// <summary>
-	/// Controls whether to discover available targets and notify via <code>targetCreated/targetDestroyed</code> events.
+	/// Controls whether to discover available targets and notify via <code>targetCreated/targetInfoChanged/targetDestroyed</code> events.
 	/// </summary>
 	[CommandResponse(ProtocolName.Target.SetDiscoverTargets)]
 	[SupportedBy("Chrome")]
diff --git a/source/ChromeDevTools/Protocol/Chrome/Target/SetRemoteLocationsCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Target/SetRemoteLocationsCommand.cs
index db9e29f..f89a02b 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Target/SetRemoteLocationsCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Target/SetRemoteLocationsCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Target
diff --git a/source/ChromeDevTools/Protocol/Chrome/Target/SetRemoteLocationsCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Target/SetRemoteLocationsCommandResponse.cs
index 0d5052d..1fcc846 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Target/SetRemoteLocationsCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Target/SetRemoteLocationsCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Target
diff --git a/source/ChromeDevTools/Protocol/Chrome/Target/TargetCreatedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Target/TargetCreatedEvent.cs
index 29084c4..c4f431d 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Target/TargetCreatedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Target/TargetCreatedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Target
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Target/TargetDestroyedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Target/TargetDestroyedEvent.cs
index da09f06..ea4d288 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Target/TargetDestroyedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Target/TargetDestroyedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Target
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Target/TargetInfo.cs b/source/ChromeDevTools/Protocol/Chrome/Target/TargetInfo.cs
index 1a167d5..e335f5e 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Target/TargetInfo.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Target/TargetInfo.cs
@@ -4,9 +4,6 @@ using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Target
 {
-	/// <summary>
-	/// 
-	/// </summary>
 	[SupportedBy("Chrome")]
 	public class TargetInfo
 	{
@@ -26,5 +23,9 @@ namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Target
 		/// Gets or sets Url
 		/// </summary>
 		public string Url { get; set; }
+		/// <summary>
+		/// Gets or sets Whether the target has an attached client.
+		/// </summary>
+		public bool Attached { get; set; }
 	}
 }
diff --git a/source/ChromeDevTools/Protocol/Chrome/Target/TargetInfoChangedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Target/TargetInfoChangedEvent.cs
new file mode 100644
index 0000000..7af6cb2
--- /dev/null
+++ b/source/ChromeDevTools/Protocol/Chrome/Target/TargetInfoChangedEvent.cs
@@ -0,0 +1,19 @@
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
+
+namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Target
+{
+	/// <summary>
+	/// Issued when some information about a target has changed. This only happens between <code>targetCreated</code> and <code>targetDestroyed</code>.
+	/// </summary>
+	[Event(ProtocolName.Target.TargetInfoChanged)]
+	[SupportedBy("Chrome")]
+	public class TargetInfoChangedEvent
+	{
+		/// <summary>
+		/// Gets or sets TargetInfo
+		/// </summary>
+		public TargetInfo TargetInfo { get; set; }
+	}
+}
diff --git a/source/ChromeDevTools/Protocol/Chrome/Tethering/AcceptedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Tethering/AcceptedEvent.cs
index 41b9f8a..9e427bf 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Tethering/AcceptedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Tethering/AcceptedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Tethering
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Tethering/BindCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Tethering/BindCommand.cs
index 094412b..57e5af6 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Tethering/BindCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Tethering/BindCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Tethering
diff --git a/source/ChromeDevTools/Protocol/Chrome/Tethering/BindCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Tethering/BindCommandResponse.cs
index 7fd279c..7e7e515 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Tethering/BindCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Tethering/BindCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Tethering
diff --git a/source/ChromeDevTools/Protocol/Chrome/Tethering/UnbindCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Tethering/UnbindCommand.cs
index 79c2ef4..900ca41 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Tethering/UnbindCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Tethering/UnbindCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Tethering
diff --git a/source/ChromeDevTools/Protocol/Chrome/Tethering/UnbindCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Tethering/UnbindCommandResponse.cs
index 2040cf3..82e2bc8 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Tethering/UnbindCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Tethering/UnbindCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Tethering
diff --git a/source/ChromeDevTools/Protocol/Chrome/Tracing/BufferUsageEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Tracing/BufferUsageEvent.cs
index 3fedd1b..3e30336 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Tracing/BufferUsageEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Tracing/BufferUsageEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Tracing
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Tracing/DataCollectedEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Tracing/DataCollectedEvent.cs
index 884b630..e4bf759 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Tracing/DataCollectedEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Tracing/DataCollectedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Tracing
 {
diff --git a/source/ChromeDevTools/Protocol/Chrome/Tracing/EndCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Tracing/EndCommand.cs
index 330c5fe..18eb0b3 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Tracing/EndCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Tracing/EndCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Tracing
diff --git a/source/ChromeDevTools/Protocol/Chrome/Tracing/EndCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Tracing/EndCommandResponse.cs
index ff23381..1e429fb 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Tracing/EndCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Tracing/EndCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Tracing
diff --git a/source/ChromeDevTools/Protocol/Chrome/Tracing/GetCategoriesCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Tracing/GetCategoriesCommand.cs
index e2bcaab..06a1154 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Tracing/GetCategoriesCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Tracing/GetCategoriesCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Tracing
diff --git a/source/ChromeDevTools/Protocol/Chrome/Tracing/GetCategoriesCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Tracing/GetCategoriesCommandResponse.cs
index 241e2dc..79d5c9a 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Tracing/GetCategoriesCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Tracing/GetCategoriesCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Tracing
diff --git a/source/ChromeDevTools/Protocol/Chrome/Tracing/RecordClockSyncMarkerCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Tracing/RecordClockSyncMarkerCommand.cs
index 35d8d3b..cfed315 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Tracing/RecordClockSyncMarkerCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Tracing/RecordClockSyncMarkerCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Tracing
diff --git a/source/ChromeDevTools/Protocol/Chrome/Tracing/RecordClockSyncMarkerCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Tracing/RecordClockSyncMarkerCommandResponse.cs
index 24b34e2..bb2d837 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Tracing/RecordClockSyncMarkerCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Tracing/RecordClockSyncMarkerCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Tracing
diff --git a/source/ChromeDevTools/Protocol/Chrome/Tracing/RequestMemoryDumpCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Tracing/RequestMemoryDumpCommand.cs
index 9f78a43..7dde36c 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Tracing/RequestMemoryDumpCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Tracing/RequestMemoryDumpCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Tracing
diff --git a/source/ChromeDevTools/Protocol/Chrome/Tracing/RequestMemoryDumpCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Tracing/RequestMemoryDumpCommandResponse.cs
index 5bdb135..4832ec2 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Tracing/RequestMemoryDumpCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Tracing/RequestMemoryDumpCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Tracing
diff --git a/source/ChromeDevTools/Protocol/Chrome/Tracing/StartCommand.cs b/source/ChromeDevTools/Protocol/Chrome/Tracing/StartCommand.cs
index 8280732..f11e682 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Tracing/StartCommand.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Tracing/StartCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Tracing
diff --git a/source/ChromeDevTools/Protocol/Chrome/Tracing/StartCommandResponse.cs b/source/ChromeDevTools/Protocol/Chrome/Tracing/StartCommandResponse.cs
index 7846f5d..5ac316e 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Tracing/StartCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Tracing/StartCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Tracing
diff --git a/source/ChromeDevTools/Protocol/Chrome/Tracing/TraceConfig.cs b/source/ChromeDevTools/Protocol/Chrome/Tracing/TraceConfig.cs
index 64f74d3..93c9f34 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Tracing/TraceConfig.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Tracing/TraceConfig.cs
@@ -4,9 +4,6 @@ using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Tracing
 {
-	/// <summary>
-	/// 
-	/// </summary>
 	[SupportedBy("Chrome")]
 	public class TraceConfig
 	{
diff --git a/source/ChromeDevTools/Protocol/Chrome/Tracing/TracingCompleteEvent.cs b/source/ChromeDevTools/Protocol/Chrome/Tracing/TracingCompleteEvent.cs
index ddf0a7d..cde8578 100644
--- a/source/ChromeDevTools/Protocol/Chrome/Tracing/TracingCompleteEvent.cs
+++ b/source/ChromeDevTools/Protocol/Chrome/Tracing/TracingCompleteEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.Chrome.Tracing
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/ApplicationCache/ApplicationCacheStatusUpdatedEvent.cs b/source/ChromeDevTools/Protocol/iOS/ApplicationCache/ApplicationCacheStatusUpdatedEvent.cs
index 4ee381a..975adaa 100644
--- a/source/ChromeDevTools/Protocol/iOS/ApplicationCache/ApplicationCacheStatusUpdatedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/ApplicationCache/ApplicationCacheStatusUpdatedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.ApplicationCache
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/ApplicationCache/EnableCommand.cs b/source/ChromeDevTools/Protocol/iOS/ApplicationCache/EnableCommand.cs
index 44b7633..c4ef650 100644
--- a/source/ChromeDevTools/Protocol/iOS/ApplicationCache/EnableCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/ApplicationCache/EnableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.ApplicationCache
diff --git a/source/ChromeDevTools/Protocol/iOS/ApplicationCache/EnableCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/ApplicationCache/EnableCommandResponse.cs
index a0147c6..ebf0d76 100644
--- a/source/ChromeDevTools/Protocol/iOS/ApplicationCache/EnableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/ApplicationCache/EnableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.ApplicationCache
diff --git a/source/ChromeDevTools/Protocol/iOS/ApplicationCache/GetApplicationCacheForFrameCommand.cs b/source/ChromeDevTools/Protocol/iOS/ApplicationCache/GetApplicationCacheForFrameCommand.cs
index a1ab344..9062671 100644
--- a/source/ChromeDevTools/Protocol/iOS/ApplicationCache/GetApplicationCacheForFrameCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/ApplicationCache/GetApplicationCacheForFrameCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.ApplicationCache
diff --git a/source/ChromeDevTools/Protocol/iOS/ApplicationCache/GetApplicationCacheForFrameCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/ApplicationCache/GetApplicationCacheForFrameCommandResponse.cs
index 4354557..c5430f0 100644
--- a/source/ChromeDevTools/Protocol/iOS/ApplicationCache/GetApplicationCacheForFrameCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/ApplicationCache/GetApplicationCacheForFrameCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.ApplicationCache
diff --git a/source/ChromeDevTools/Protocol/iOS/ApplicationCache/GetFramesWithManifestsCommand.cs b/source/ChromeDevTools/Protocol/iOS/ApplicationCache/GetFramesWithManifestsCommand.cs
index 91f349b..cb0df07 100644
--- a/source/ChromeDevTools/Protocol/iOS/ApplicationCache/GetFramesWithManifestsCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/ApplicationCache/GetFramesWithManifestsCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.ApplicationCache
diff --git a/source/ChromeDevTools/Protocol/iOS/ApplicationCache/GetFramesWithManifestsCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/ApplicationCache/GetFramesWithManifestsCommandResponse.cs
index 7029b3a..604961e 100644
--- a/source/ChromeDevTools/Protocol/iOS/ApplicationCache/GetFramesWithManifestsCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/ApplicationCache/GetFramesWithManifestsCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.ApplicationCache
diff --git a/source/ChromeDevTools/Protocol/iOS/ApplicationCache/GetManifestForFrameCommand.cs b/source/ChromeDevTools/Protocol/iOS/ApplicationCache/GetManifestForFrameCommand.cs
index cc8f222..6b48b15 100644
--- a/source/ChromeDevTools/Protocol/iOS/ApplicationCache/GetManifestForFrameCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/ApplicationCache/GetManifestForFrameCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.ApplicationCache
diff --git a/source/ChromeDevTools/Protocol/iOS/ApplicationCache/GetManifestForFrameCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/ApplicationCache/GetManifestForFrameCommandResponse.cs
index 2d0a85f..cdf80c5 100644
--- a/source/ChromeDevTools/Protocol/iOS/ApplicationCache/GetManifestForFrameCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/ApplicationCache/GetManifestForFrameCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.ApplicationCache
diff --git a/source/ChromeDevTools/Protocol/iOS/ApplicationCache/NetworkStateUpdatedEvent.cs b/source/ChromeDevTools/Protocol/iOS/ApplicationCache/NetworkStateUpdatedEvent.cs
index 9e72267..3511794 100644
--- a/source/ChromeDevTools/Protocol/iOS/ApplicationCache/NetworkStateUpdatedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/ApplicationCache/NetworkStateUpdatedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.ApplicationCache
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/AddRuleCommand.cs b/source/ChromeDevTools/Protocol/iOS/CSS/AddRuleCommand.cs
index baeb145..884e83d 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/AddRuleCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/AddRuleCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/AddRuleCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/CSS/AddRuleCommandResponse.cs
index d302d0f..07102b3 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/AddRuleCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/AddRuleCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/CSSComputedStyleProperty.cs b/source/ChromeDevTools/Protocol/iOS/CSS/CSSComputedStyleProperty.cs
index ea54958..c6a31bf 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/CSSComputedStyleProperty.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/CSSComputedStyleProperty.cs
@@ -4,9 +4,6 @@ using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
 {
-	/// <summary>
-	/// 
-	/// </summary>
 	[SupportedBy("iOS")]
 	public class CSSComputedStyleProperty
 	{
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/CSSPropertyInfo.cs b/source/ChromeDevTools/Protocol/iOS/CSS/CSSPropertyInfo.cs
index 43fcd62..58b8217 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/CSSPropertyInfo.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/CSSPropertyInfo.cs
@@ -4,9 +4,6 @@ using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
 {
-	/// <summary>
-	/// 
-	/// </summary>
 	[SupportedBy("iOS")]
 	public class CSSPropertyInfo
 	{
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/CreateStyleSheetCommand.cs b/source/ChromeDevTools/Protocol/iOS/CSS/CreateStyleSheetCommand.cs
index 794b005..3ff09a8 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/CreateStyleSheetCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/CreateStyleSheetCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/CreateStyleSheetCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/CSS/CreateStyleSheetCommandResponse.cs
index e08594f..4d90f00 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/CreateStyleSheetCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/CreateStyleSheetCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/DisableCommand.cs b/source/ChromeDevTools/Protocol/iOS/CSS/DisableCommand.cs
index b1a884d..078cbb8 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/DisableCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/DisableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/DisableCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/CSS/DisableCommandResponse.cs
index b637d72..cbfd4b4 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/DisableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/DisableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/EnableCommand.cs b/source/ChromeDevTools/Protocol/iOS/CSS/EnableCommand.cs
index 06b97c0..1278701 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/EnableCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/EnableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/EnableCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/CSS/EnableCommandResponse.cs
index e714935..42bd293 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/EnableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/EnableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/ForcePseudoStateCommand.cs b/source/ChromeDevTools/Protocol/iOS/CSS/ForcePseudoStateCommand.cs
index 54cc23d..42e99f1 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/ForcePseudoStateCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/ForcePseudoStateCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/ForcePseudoStateCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/CSS/ForcePseudoStateCommandResponse.cs
index 9006b32..a706d81 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/ForcePseudoStateCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/ForcePseudoStateCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/GetAllStyleSheetsCommand.cs b/source/ChromeDevTools/Protocol/iOS/CSS/GetAllStyleSheetsCommand.cs
index d63598d..f6dd119 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/GetAllStyleSheetsCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/GetAllStyleSheetsCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/GetAllStyleSheetsCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/CSS/GetAllStyleSheetsCommandResponse.cs
index 8db852e..3b315ba 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/GetAllStyleSheetsCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/GetAllStyleSheetsCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/GetComputedStyleForNodeCommand.cs b/source/ChromeDevTools/Protocol/iOS/CSS/GetComputedStyleForNodeCommand.cs
index 4058868..9417fd3 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/GetComputedStyleForNodeCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/GetComputedStyleForNodeCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/GetComputedStyleForNodeCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/CSS/GetComputedStyleForNodeCommandResponse.cs
index 59267f3..bf6629d 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/GetComputedStyleForNodeCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/GetComputedStyleForNodeCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/GetInlineStylesForNodeCommand.cs b/source/ChromeDevTools/Protocol/iOS/CSS/GetInlineStylesForNodeCommand.cs
index 3ec503b..96e97a9 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/GetInlineStylesForNodeCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/GetInlineStylesForNodeCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/GetInlineStylesForNodeCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/CSS/GetInlineStylesForNodeCommandResponse.cs
index 85f3dec..181c215 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/GetInlineStylesForNodeCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/GetInlineStylesForNodeCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/GetMatchedStylesForNodeCommand.cs b/source/ChromeDevTools/Protocol/iOS/CSS/GetMatchedStylesForNodeCommand.cs
index 9746864..93e034a 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/GetMatchedStylesForNodeCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/GetMatchedStylesForNodeCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/GetMatchedStylesForNodeCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/CSS/GetMatchedStylesForNodeCommandResponse.cs
index 782e45c..47c35a8 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/GetMatchedStylesForNodeCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/GetMatchedStylesForNodeCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/GetNamedFlowCollectionCommand.cs b/source/ChromeDevTools/Protocol/iOS/CSS/GetNamedFlowCollectionCommand.cs
index 91ee886..668334a 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/GetNamedFlowCollectionCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/GetNamedFlowCollectionCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/GetNamedFlowCollectionCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/CSS/GetNamedFlowCollectionCommandResponse.cs
index 8b01af7..ec3585c 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/GetNamedFlowCollectionCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/GetNamedFlowCollectionCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/GetStyleSheetCommand.cs b/source/ChromeDevTools/Protocol/iOS/CSS/GetStyleSheetCommand.cs
index a055150..fc5146b 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/GetStyleSheetCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/GetStyleSheetCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/GetStyleSheetCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/CSS/GetStyleSheetCommandResponse.cs
index f043151..f2c280b 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/GetStyleSheetCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/GetStyleSheetCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/GetStyleSheetTextCommand.cs b/source/ChromeDevTools/Protocol/iOS/CSS/GetStyleSheetTextCommand.cs
index 6f5ec6b..e50be07 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/GetStyleSheetTextCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/GetStyleSheetTextCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/GetStyleSheetTextCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/CSS/GetStyleSheetTextCommandResponse.cs
index 37d8695..87fc15b 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/GetStyleSheetTextCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/GetStyleSheetTextCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/GetSupportedCSSPropertiesCommand.cs b/source/ChromeDevTools/Protocol/iOS/CSS/GetSupportedCSSPropertiesCommand.cs
index 01d71ed..b52acba 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/GetSupportedCSSPropertiesCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/GetSupportedCSSPropertiesCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/GetSupportedCSSPropertiesCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/CSS/GetSupportedCSSPropertiesCommandResponse.cs
index 705e90b..3a8fbf2 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/GetSupportedCSSPropertiesCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/GetSupportedCSSPropertiesCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/GetSupportedSystemFontFamilyNamesCommand.cs b/source/ChromeDevTools/Protocol/iOS/CSS/GetSupportedSystemFontFamilyNamesCommand.cs
index 4aa2467..d3ffaef 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/GetSupportedSystemFontFamilyNamesCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/GetSupportedSystemFontFamilyNamesCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/GetSupportedSystemFontFamilyNamesCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/CSS/GetSupportedSystemFontFamilyNamesCommandResponse.cs
index 124c502..411f88b 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/GetSupportedSystemFontFamilyNamesCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/GetSupportedSystemFontFamilyNamesCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/MediaQueryResultChangedEvent.cs b/source/ChromeDevTools/Protocol/iOS/CSS/MediaQueryResultChangedEvent.cs
index 292ebbe..46e396b 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/MediaQueryResultChangedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/MediaQueryResultChangedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/NamedFlowCreatedEvent.cs b/source/ChromeDevTools/Protocol/iOS/CSS/NamedFlowCreatedEvent.cs
index 04187f3..8af9bb3 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/NamedFlowCreatedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/NamedFlowCreatedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/NamedFlowRemovedEvent.cs b/source/ChromeDevTools/Protocol/iOS/CSS/NamedFlowRemovedEvent.cs
index 5215dd8..6c92fb4 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/NamedFlowRemovedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/NamedFlowRemovedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/RegionOversetChangedEvent.cs b/source/ChromeDevTools/Protocol/iOS/CSS/RegionOversetChangedEvent.cs
index 3bc0674..653b0d2 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/RegionOversetChangedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/RegionOversetChangedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/RegisteredNamedFlowContentElementEvent.cs b/source/ChromeDevTools/Protocol/iOS/CSS/RegisteredNamedFlowContentElementEvent.cs
index 79549f4..c72024e 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/RegisteredNamedFlowContentElementEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/RegisteredNamedFlowContentElementEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/SetRuleSelectorCommand.cs b/source/ChromeDevTools/Protocol/iOS/CSS/SetRuleSelectorCommand.cs
index 8b6de45..3962e5a 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/SetRuleSelectorCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/SetRuleSelectorCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/SetRuleSelectorCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/CSS/SetRuleSelectorCommandResponse.cs
index 0eab994..bf6f4e1 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/SetRuleSelectorCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/SetRuleSelectorCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/SetStyleSheetTextCommand.cs b/source/ChromeDevTools/Protocol/iOS/CSS/SetStyleSheetTextCommand.cs
index a87ab40..87a9fdd 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/SetStyleSheetTextCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/SetStyleSheetTextCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/SetStyleSheetTextCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/CSS/SetStyleSheetTextCommandResponse.cs
index 210ce74..98c41b7 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/SetStyleSheetTextCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/SetStyleSheetTextCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/SetStyleTextCommand.cs b/source/ChromeDevTools/Protocol/iOS/CSS/SetStyleTextCommand.cs
index 1af16b0..dfc96eb 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/SetStyleTextCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/SetStyleTextCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/SetStyleTextCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/CSS/SetStyleTextCommandResponse.cs
index 7caea7a..52bb358 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/SetStyleTextCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/SetStyleTextCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/ShorthandEntry.cs b/source/ChromeDevTools/Protocol/iOS/CSS/ShorthandEntry.cs
index a5e3573..54d556b 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/ShorthandEntry.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/ShorthandEntry.cs
@@ -4,9 +4,6 @@ using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
 {
-	/// <summary>
-	/// 
-	/// </summary>
 	[SupportedBy("iOS")]
 	public class ShorthandEntry
 	{
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/StyleSheetAddedEvent.cs b/source/ChromeDevTools/Protocol/iOS/CSS/StyleSheetAddedEvent.cs
index 633ed6f..fb4bc82 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/StyleSheetAddedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/StyleSheetAddedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/StyleSheetChangedEvent.cs b/source/ChromeDevTools/Protocol/iOS/CSS/StyleSheetChangedEvent.cs
index af1a6d1..2450fbc 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/StyleSheetChangedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/StyleSheetChangedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/StyleSheetRemovedEvent.cs b/source/ChromeDevTools/Protocol/iOS/CSS/StyleSheetRemovedEvent.cs
index 4848075..2909ebb 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/StyleSheetRemovedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/StyleSheetRemovedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/CSS/UnregisteredNamedFlowContentElementEvent.cs b/source/ChromeDevTools/Protocol/iOS/CSS/UnregisteredNamedFlowContentElementEvent.cs
index dc26cb1..dff2d7a 100644
--- a/source/ChromeDevTools/Protocol/iOS/CSS/UnregisteredNamedFlowContentElementEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/CSS/UnregisteredNamedFlowContentElementEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.CSS
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Console/AddInspectedNodeCommand.cs b/source/ChromeDevTools/Protocol/iOS/Console/AddInspectedNodeCommand.cs
index 722e5e3..080b7d9 100644
--- a/source/ChromeDevTools/Protocol/iOS/Console/AddInspectedNodeCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Console/AddInspectedNodeCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Console
diff --git a/source/ChromeDevTools/Protocol/iOS/Console/AddInspectedNodeCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Console/AddInspectedNodeCommandResponse.cs
index c64cbe1..227b162 100644
--- a/source/ChromeDevTools/Protocol/iOS/Console/AddInspectedNodeCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Console/AddInspectedNodeCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Console
diff --git a/source/ChromeDevTools/Protocol/iOS/Console/ClearMessagesCommand.cs b/source/ChromeDevTools/Protocol/iOS/Console/ClearMessagesCommand.cs
index f242939..410a4d3 100644
--- a/source/ChromeDevTools/Protocol/iOS/Console/ClearMessagesCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Console/ClearMessagesCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Console
diff --git a/source/ChromeDevTools/Protocol/iOS/Console/ClearMessagesCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Console/ClearMessagesCommandResponse.cs
index 28e0344..7a94d35 100644
--- a/source/ChromeDevTools/Protocol/iOS/Console/ClearMessagesCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Console/ClearMessagesCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Console
diff --git a/source/ChromeDevTools/Protocol/iOS/Console/DisableCommand.cs b/source/ChromeDevTools/Protocol/iOS/Console/DisableCommand.cs
index c0de9be..7acd138 100644
--- a/source/ChromeDevTools/Protocol/iOS/Console/DisableCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Console/DisableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Console
diff --git a/source/ChromeDevTools/Protocol/iOS/Console/DisableCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Console/DisableCommandResponse.cs
index 33d69b8..3c6ae80 100644
--- a/source/ChromeDevTools/Protocol/iOS/Console/DisableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Console/DisableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Console
diff --git a/source/ChromeDevTools/Protocol/iOS/Console/EnableCommand.cs b/source/ChromeDevTools/Protocol/iOS/Console/EnableCommand.cs
index a51e2f7..4f52ad1 100644
--- a/source/ChromeDevTools/Protocol/iOS/Console/EnableCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Console/EnableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Console
diff --git a/source/ChromeDevTools/Protocol/iOS/Console/EnableCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Console/EnableCommandResponse.cs
index d76690e..556cf7e 100644
--- a/source/ChromeDevTools/Protocol/iOS/Console/EnableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Console/EnableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Console
diff --git a/source/ChromeDevTools/Protocol/iOS/Console/MessageAddedEvent.cs b/source/ChromeDevTools/Protocol/iOS/Console/MessageAddedEvent.cs
index 00353df..36173f4 100644
--- a/source/ChromeDevTools/Protocol/iOS/Console/MessageAddedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Console/MessageAddedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Console
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Console/MessageRepeatCountUpdatedEvent.cs b/source/ChromeDevTools/Protocol/iOS/Console/MessageRepeatCountUpdatedEvent.cs
index e71d794..658c005 100644
--- a/source/ChromeDevTools/Protocol/iOS/Console/MessageRepeatCountUpdatedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Console/MessageRepeatCountUpdatedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Console
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Console/MessagesClearedEvent.cs b/source/ChromeDevTools/Protocol/iOS/Console/MessagesClearedEvent.cs
index a75d201..3e5fc71 100644
--- a/source/ChromeDevTools/Protocol/iOS/Console/MessagesClearedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Console/MessagesClearedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Console
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Console/SetMonitoringXHREnabledCommand.cs b/source/ChromeDevTools/Protocol/iOS/Console/SetMonitoringXHREnabledCommand.cs
index b821465..ca65324 100644
--- a/source/ChromeDevTools/Protocol/iOS/Console/SetMonitoringXHREnabledCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Console/SetMonitoringXHREnabledCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Console
diff --git a/source/ChromeDevTools/Protocol/iOS/Console/SetMonitoringXHREnabledCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Console/SetMonitoringXHREnabledCommandResponse.cs
index 7d3ea1e..fa51652 100644
--- a/source/ChromeDevTools/Protocol/iOS/Console/SetMonitoringXHREnabledCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Console/SetMonitoringXHREnabledCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Console
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/AttributeModifiedEvent.cs b/source/ChromeDevTools/Protocol/iOS/DOM/AttributeModifiedEvent.cs
index 88a039f..00cbdeb 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/AttributeModifiedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/AttributeModifiedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/AttributeRemovedEvent.cs b/source/ChromeDevTools/Protocol/iOS/DOM/AttributeRemovedEvent.cs
index 020b5f4..fab29ae 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/AttributeRemovedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/AttributeRemovedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/CharacterDataModifiedEvent.cs b/source/ChromeDevTools/Protocol/iOS/DOM/CharacterDataModifiedEvent.cs
index d46030b..d4eba12 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/CharacterDataModifiedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/CharacterDataModifiedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/ChildNodeCountUpdatedEvent.cs b/source/ChromeDevTools/Protocol/iOS/DOM/ChildNodeCountUpdatedEvent.cs
index b6662bb..1fe9717 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/ChildNodeCountUpdatedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/ChildNodeCountUpdatedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/ChildNodeInsertedEvent.cs b/source/ChromeDevTools/Protocol/iOS/DOM/ChildNodeInsertedEvent.cs
index 798cb12..e97cb4d 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/ChildNodeInsertedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/ChildNodeInsertedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/ChildNodeRemovedEvent.cs b/source/ChromeDevTools/Protocol/iOS/DOM/ChildNodeRemovedEvent.cs
index afc8b70..107eb62 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/ChildNodeRemovedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/ChildNodeRemovedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/DiscardSearchResultsCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOM/DiscardSearchResultsCommand.cs
index 6e8a3ee..3b40072 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/DiscardSearchResultsCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/DiscardSearchResultsCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/DiscardSearchResultsCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOM/DiscardSearchResultsCommandResponse.cs
index 555fa29..2509e81 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/DiscardSearchResultsCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/DiscardSearchResultsCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/DocumentUpdatedEvent.cs b/source/ChromeDevTools/Protocol/iOS/DOM/DocumentUpdatedEvent.cs
index 0754fc6..740223e 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/DocumentUpdatedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/DocumentUpdatedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/FocusCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOM/FocusCommand.cs
index ec82e84..b4492e4 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/FocusCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/FocusCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/FocusCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOM/FocusCommandResponse.cs
index 59fa14a..4d76eea 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/FocusCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/FocusCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/GetAccessibilityPropertiesForNodeCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOM/GetAccessibilityPropertiesForNodeCommand.cs
index 9fe6c7a..e1bca20 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/GetAccessibilityPropertiesForNodeCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/GetAccessibilityPropertiesForNodeCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/GetAccessibilityPropertiesForNodeCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOM/GetAccessibilityPropertiesForNodeCommandResponse.cs
index 8c37d3a..bb2a00f 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/GetAccessibilityPropertiesForNodeCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/GetAccessibilityPropertiesForNodeCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/GetAttributesCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOM/GetAttributesCommand.cs
index 03adcd0..5170c29 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/GetAttributesCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/GetAttributesCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/GetAttributesCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOM/GetAttributesCommandResponse.cs
index 46bc22c..c7deb52 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/GetAttributesCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/GetAttributesCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/GetDocumentCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOM/GetDocumentCommand.cs
index e444760..0a50703 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/GetDocumentCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/GetDocumentCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/GetDocumentCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOM/GetDocumentCommandResponse.cs
index 33abd8f..c5a88a8 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/GetDocumentCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/GetDocumentCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/GetEventListenersForNodeCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOM/GetEventListenersForNodeCommand.cs
index 173e705..9648dfa 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/GetEventListenersForNodeCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/GetEventListenersForNodeCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/GetEventListenersForNodeCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOM/GetEventListenersForNodeCommandResponse.cs
index a2bc9ba..1657204 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/GetEventListenersForNodeCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/GetEventListenersForNodeCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/GetOuterHTMLCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOM/GetOuterHTMLCommand.cs
index 7c748f0..4d21050 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/GetOuterHTMLCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/GetOuterHTMLCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/GetOuterHTMLCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOM/GetOuterHTMLCommandResponse.cs
index 7a19d74..a9abd97 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/GetOuterHTMLCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/GetOuterHTMLCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/GetSearchResultsCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOM/GetSearchResultsCommand.cs
index d0451bc..3605835 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/GetSearchResultsCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/GetSearchResultsCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/GetSearchResultsCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOM/GetSearchResultsCommandResponse.cs
index 6531648..13a0f86 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/GetSearchResultsCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/GetSearchResultsCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/HideHighlightCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOM/HideHighlightCommand.cs
index 35dcc63..934617a 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/HideHighlightCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/HideHighlightCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/HideHighlightCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOM/HideHighlightCommandResponse.cs
index 5383313..6525332 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/HideHighlightCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/HideHighlightCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/HighlightFrameCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOM/HighlightFrameCommand.cs
index c325633..77f7ccf 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/HighlightFrameCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/HighlightFrameCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/HighlightFrameCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOM/HighlightFrameCommandResponse.cs
index 805ac35..26c3798 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/HighlightFrameCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/HighlightFrameCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/HighlightNodeCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOM/HighlightNodeCommand.cs
index 0d45ca2..03465ec 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/HighlightNodeCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/HighlightNodeCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/HighlightNodeCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOM/HighlightNodeCommandResponse.cs
index 1efabd0..a6f4abf 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/HighlightNodeCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/HighlightNodeCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/HighlightQuadCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOM/HighlightQuadCommand.cs
index 6c63ea4..6373b32 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/HighlightQuadCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/HighlightQuadCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/HighlightQuadCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOM/HighlightQuadCommandResponse.cs
index 2c1be17..e5e6847 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/HighlightQuadCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/HighlightQuadCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/HighlightRectCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOM/HighlightRectCommand.cs
index bc4c848..a6c89b0 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/HighlightRectCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/HighlightRectCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/HighlightRectCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOM/HighlightRectCommandResponse.cs
index d5b61dd..5b183db 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/HighlightRectCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/HighlightRectCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/HighlightSelectorCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOM/HighlightSelectorCommand.cs
index d897677..0e00347 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/HighlightSelectorCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/HighlightSelectorCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/HighlightSelectorCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOM/HighlightSelectorCommandResponse.cs
index a72cc6f..ae949ac 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/HighlightSelectorCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/HighlightSelectorCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/InlineStyleInvalidatedEvent.cs b/source/ChromeDevTools/Protocol/iOS/DOM/InlineStyleInvalidatedEvent.cs
index 404e89b..2765f56 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/InlineStyleInvalidatedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/InlineStyleInvalidatedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/MarkUndoableStateCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOM/MarkUndoableStateCommand.cs
index f8de1f8..7c5ddd8 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/MarkUndoableStateCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/MarkUndoableStateCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/MarkUndoableStateCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOM/MarkUndoableStateCommandResponse.cs
index d919036..2a1c240 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/MarkUndoableStateCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/MarkUndoableStateCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/MoveToCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOM/MoveToCommand.cs
index 8799238..25ee2e5 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/MoveToCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/MoveToCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/MoveToCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOM/MoveToCommandResponse.cs
index 434d3df..ef039f1 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/MoveToCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/MoveToCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/PerformSearchCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOM/PerformSearchCommand.cs
index 527e2f3..9282ff0 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/PerformSearchCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/PerformSearchCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/PerformSearchCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOM/PerformSearchCommandResponse.cs
index 3ad5db4..7ed78df 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/PerformSearchCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/PerformSearchCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/PseudoElementAddedEvent.cs b/source/ChromeDevTools/Protocol/iOS/DOM/PseudoElementAddedEvent.cs
index d86098c..22cf208 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/PseudoElementAddedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/PseudoElementAddedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/PseudoElementRemovedEvent.cs b/source/ChromeDevTools/Protocol/iOS/DOM/PseudoElementRemovedEvent.cs
index d052959..f0d5aa9 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/PseudoElementRemovedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/PseudoElementRemovedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/PushNodeByBackendIdToFrontendCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOM/PushNodeByBackendIdToFrontendCommand.cs
index 96413af..3efd0c8 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/PushNodeByBackendIdToFrontendCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/PushNodeByBackendIdToFrontendCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/PushNodeByBackendIdToFrontendCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOM/PushNodeByBackendIdToFrontendCommandResponse.cs
index 2ed18d5..32e4cf9 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/PushNodeByBackendIdToFrontendCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/PushNodeByBackendIdToFrontendCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/PushNodeByPathToFrontendCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOM/PushNodeByPathToFrontendCommand.cs
index 2bc986d..2491b5e 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/PushNodeByPathToFrontendCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/PushNodeByPathToFrontendCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/PushNodeByPathToFrontendCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOM/PushNodeByPathToFrontendCommandResponse.cs
index 63a0fd7..4f0cb9a 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/PushNodeByPathToFrontendCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/PushNodeByPathToFrontendCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/QuerySelectorAllCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOM/QuerySelectorAllCommand.cs
index 828f2a9..e4def6d 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/QuerySelectorAllCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/QuerySelectorAllCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/QuerySelectorAllCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOM/QuerySelectorAllCommandResponse.cs
index 6c61541..132e658 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/QuerySelectorAllCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/QuerySelectorAllCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/QuerySelectorCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOM/QuerySelectorCommand.cs
index 387d576..eb8ff32 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/QuerySelectorCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/QuerySelectorCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/QuerySelectorCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOM/QuerySelectorCommandResponse.cs
index 5f9091f..315e8c4 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/QuerySelectorCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/QuerySelectorCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/RedoCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOM/RedoCommand.cs
index 8aad43d..6b4fc46 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/RedoCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/RedoCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/RedoCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOM/RedoCommandResponse.cs
index c1c25ee..39d7685 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/RedoCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/RedoCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/ReleaseBackendNodeIdsCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOM/ReleaseBackendNodeIdsCommand.cs
index 3b65504..8f18af5 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/ReleaseBackendNodeIdsCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/ReleaseBackendNodeIdsCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/ReleaseBackendNodeIdsCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOM/ReleaseBackendNodeIdsCommandResponse.cs
index 1308b65..847aedf 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/ReleaseBackendNodeIdsCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/ReleaseBackendNodeIdsCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/RemoveAttributeCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOM/RemoveAttributeCommand.cs
index a232cb6..8ab97cf 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/RemoveAttributeCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/RemoveAttributeCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/RemoveAttributeCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOM/RemoveAttributeCommandResponse.cs
index b7475b4..910ee3b 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/RemoveAttributeCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/RemoveAttributeCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/RemoveNodeCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOM/RemoveNodeCommand.cs
index 31c6056..68de591 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/RemoveNodeCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/RemoveNodeCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/RemoveNodeCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOM/RemoveNodeCommandResponse.cs
index 0ad495e..b11a8af 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/RemoveNodeCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/RemoveNodeCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/RequestChildNodesCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOM/RequestChildNodesCommand.cs
index f4283d5..9fc22e9 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/RequestChildNodesCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/RequestChildNodesCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/RequestChildNodesCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOM/RequestChildNodesCommandResponse.cs
index 419699e..fdeaee5 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/RequestChildNodesCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/RequestChildNodesCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/RequestNodeCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOM/RequestNodeCommand.cs
index bb2a003..0d3bf85 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/RequestNodeCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/RequestNodeCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/RequestNodeCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOM/RequestNodeCommandResponse.cs
index 7ba033d..4056daa 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/RequestNodeCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/RequestNodeCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/ResolveNodeCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOM/ResolveNodeCommand.cs
index 74eafbd..757f014 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/ResolveNodeCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/ResolveNodeCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/ResolveNodeCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOM/ResolveNodeCommandResponse.cs
index f98b517..47e8f88 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/ResolveNodeCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/ResolveNodeCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/SetAttributeValueCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOM/SetAttributeValueCommand.cs
index 31b97da..961c33b 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/SetAttributeValueCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/SetAttributeValueCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/SetAttributeValueCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOM/SetAttributeValueCommandResponse.cs
index 440225d..cc9939f 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/SetAttributeValueCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/SetAttributeValueCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/SetAttributesAsTextCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOM/SetAttributesAsTextCommand.cs
index 89c81ed..d11b8cc 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/SetAttributesAsTextCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/SetAttributesAsTextCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/SetAttributesAsTextCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOM/SetAttributesAsTextCommandResponse.cs
index 0ca7a85..4f1b0fb 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/SetAttributesAsTextCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/SetAttributesAsTextCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/SetChildNodesEvent.cs b/source/ChromeDevTools/Protocol/iOS/DOM/SetChildNodesEvent.cs
index e4f9e14..dd90c11 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/SetChildNodesEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/SetChildNodesEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/SetInspectModeEnabledCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOM/SetInspectModeEnabledCommand.cs
index aed2676..23c4786 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/SetInspectModeEnabledCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/SetInspectModeEnabledCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/SetInspectModeEnabledCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOM/SetInspectModeEnabledCommandResponse.cs
index be9bd5e..ed2f50e 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/SetInspectModeEnabledCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/SetInspectModeEnabledCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/SetNodeNameCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOM/SetNodeNameCommand.cs
index 1ce9a9d..2b721d9 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/SetNodeNameCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/SetNodeNameCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/SetNodeNameCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOM/SetNodeNameCommandResponse.cs
index 741f1d0..52919c2 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/SetNodeNameCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/SetNodeNameCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/SetNodeValueCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOM/SetNodeValueCommand.cs
index b1ca848..c6185d7 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/SetNodeValueCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/SetNodeValueCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/SetNodeValueCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOM/SetNodeValueCommandResponse.cs
index f809522..8e7bb23 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/SetNodeValueCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/SetNodeValueCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/SetOuterHTMLCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOM/SetOuterHTMLCommand.cs
index adbb79c..b2e2665 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/SetOuterHTMLCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/SetOuterHTMLCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/SetOuterHTMLCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOM/SetOuterHTMLCommandResponse.cs
index 44a6abc..73963f2 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/SetOuterHTMLCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/SetOuterHTMLCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/ShadowRootPoppedEvent.cs b/source/ChromeDevTools/Protocol/iOS/DOM/ShadowRootPoppedEvent.cs
index 19bbf9a..e54eded 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/ShadowRootPoppedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/ShadowRootPoppedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/ShadowRootPushedEvent.cs b/source/ChromeDevTools/Protocol/iOS/DOM/ShadowRootPushedEvent.cs
index c3bc653..6d94541 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/ShadowRootPushedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/ShadowRootPushedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/UndoCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOM/UndoCommand.cs
index 901d61c..2014d02 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/UndoCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/UndoCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOM/UndoCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOM/UndoCommandResponse.cs
index ce0739f..1e60296 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOM/UndoCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOM/UndoCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOM
diff --git a/source/ChromeDevTools/Protocol/iOS/DOMDebugger/RemoveDOMBreakpointCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOMDebugger/RemoveDOMBreakpointCommand.cs
index c58bbfe..409a6aa 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOMDebugger/RemoveDOMBreakpointCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOMDebugger/RemoveDOMBreakpointCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOMDebugger
diff --git a/source/ChromeDevTools/Protocol/iOS/DOMDebugger/RemoveDOMBreakpointCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOMDebugger/RemoveDOMBreakpointCommandResponse.cs
index 94e1362..d6b45d8 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOMDebugger/RemoveDOMBreakpointCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOMDebugger/RemoveDOMBreakpointCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOMDebugger
diff --git a/source/ChromeDevTools/Protocol/iOS/DOMDebugger/RemoveEventListenerBreakpointCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOMDebugger/RemoveEventListenerBreakpointCommand.cs
index 5bba664..0d90d78 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOMDebugger/RemoveEventListenerBreakpointCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOMDebugger/RemoveEventListenerBreakpointCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOMDebugger
diff --git a/source/ChromeDevTools/Protocol/iOS/DOMDebugger/RemoveEventListenerBreakpointCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOMDebugger/RemoveEventListenerBreakpointCommandResponse.cs
index 2141d62..7ea7e21 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOMDebugger/RemoveEventListenerBreakpointCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOMDebugger/RemoveEventListenerBreakpointCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOMDebugger
diff --git a/source/ChromeDevTools/Protocol/iOS/DOMDebugger/RemoveInstrumentationBreakpointCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOMDebugger/RemoveInstrumentationBreakpointCommand.cs
index 255e265..b8e7d9e 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOMDebugger/RemoveInstrumentationBreakpointCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOMDebugger/RemoveInstrumentationBreakpointCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOMDebugger
diff --git a/source/ChromeDevTools/Protocol/iOS/DOMDebugger/RemoveInstrumentationBreakpointCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOMDebugger/RemoveInstrumentationBreakpointCommandResponse.cs
index ccf8809..6f907f5 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOMDebugger/RemoveInstrumentationBreakpointCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOMDebugger/RemoveInstrumentationBreakpointCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOMDebugger
diff --git a/source/ChromeDevTools/Protocol/iOS/DOMDebugger/RemoveXHRBreakpointCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOMDebugger/RemoveXHRBreakpointCommand.cs
index 10db6b6..0519d68 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOMDebugger/RemoveXHRBreakpointCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOMDebugger/RemoveXHRBreakpointCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOMDebugger
diff --git a/source/ChromeDevTools/Protocol/iOS/DOMDebugger/RemoveXHRBreakpointCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOMDebugger/RemoveXHRBreakpointCommandResponse.cs
index f61a31d..db398aa 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOMDebugger/RemoveXHRBreakpointCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOMDebugger/RemoveXHRBreakpointCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOMDebugger
diff --git a/source/ChromeDevTools/Protocol/iOS/DOMDebugger/SetDOMBreakpointCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOMDebugger/SetDOMBreakpointCommand.cs
index fdabcd0..f5482cb 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOMDebugger/SetDOMBreakpointCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOMDebugger/SetDOMBreakpointCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOMDebugger
diff --git a/source/ChromeDevTools/Protocol/iOS/DOMDebugger/SetDOMBreakpointCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOMDebugger/SetDOMBreakpointCommandResponse.cs
index 57a3ebf..e9236cd 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOMDebugger/SetDOMBreakpointCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOMDebugger/SetDOMBreakpointCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOMDebugger
diff --git a/source/ChromeDevTools/Protocol/iOS/DOMDebugger/SetEventListenerBreakpointCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOMDebugger/SetEventListenerBreakpointCommand.cs
index f6a111e..db2519e 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOMDebugger/SetEventListenerBreakpointCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOMDebugger/SetEventListenerBreakpointCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOMDebugger
diff --git a/source/ChromeDevTools/Protocol/iOS/DOMDebugger/SetEventListenerBreakpointCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOMDebugger/SetEventListenerBreakpointCommandResponse.cs
index d082516..254dce1 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOMDebugger/SetEventListenerBreakpointCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOMDebugger/SetEventListenerBreakpointCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOMDebugger
diff --git a/source/ChromeDevTools/Protocol/iOS/DOMDebugger/SetInstrumentationBreakpointCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOMDebugger/SetInstrumentationBreakpointCommand.cs
index 94fb34f..d29e340 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOMDebugger/SetInstrumentationBreakpointCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOMDebugger/SetInstrumentationBreakpointCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOMDebugger
diff --git a/source/ChromeDevTools/Protocol/iOS/DOMDebugger/SetInstrumentationBreakpointCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOMDebugger/SetInstrumentationBreakpointCommandResponse.cs
index a7bbbe2..ee7ecc1 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOMDebugger/SetInstrumentationBreakpointCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOMDebugger/SetInstrumentationBreakpointCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOMDebugger
diff --git a/source/ChromeDevTools/Protocol/iOS/DOMDebugger/SetXHRBreakpointCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOMDebugger/SetXHRBreakpointCommand.cs
index 6091414..f5183e9 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOMDebugger/SetXHRBreakpointCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOMDebugger/SetXHRBreakpointCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOMDebugger
diff --git a/source/ChromeDevTools/Protocol/iOS/DOMDebugger/SetXHRBreakpointCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOMDebugger/SetXHRBreakpointCommandResponse.cs
index 298e800..c52d6b2 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOMDebugger/SetXHRBreakpointCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOMDebugger/SetXHRBreakpointCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOMDebugger
diff --git a/source/ChromeDevTools/Protocol/iOS/DOMStorage/DisableCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOMStorage/DisableCommand.cs
index 4efd139..67b3248 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOMStorage/DisableCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOMStorage/DisableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOMStorage
diff --git a/source/ChromeDevTools/Protocol/iOS/DOMStorage/DisableCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOMStorage/DisableCommandResponse.cs
index 755a8e6..c5cbcc3 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOMStorage/DisableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOMStorage/DisableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOMStorage
diff --git a/source/ChromeDevTools/Protocol/iOS/DOMStorage/DomStorageItemAddedEvent.cs b/source/ChromeDevTools/Protocol/iOS/DOMStorage/DomStorageItemAddedEvent.cs
index ba348ee..2f97856 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOMStorage/DomStorageItemAddedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOMStorage/DomStorageItemAddedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOMStorage
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/DOMStorage/DomStorageItemRemovedEvent.cs b/source/ChromeDevTools/Protocol/iOS/DOMStorage/DomStorageItemRemovedEvent.cs
index 09615c5..32fcaf4 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOMStorage/DomStorageItemRemovedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOMStorage/DomStorageItemRemovedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOMStorage
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/DOMStorage/DomStorageItemUpdatedEvent.cs b/source/ChromeDevTools/Protocol/iOS/DOMStorage/DomStorageItemUpdatedEvent.cs
index 5a7cf31..6646f29 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOMStorage/DomStorageItemUpdatedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOMStorage/DomStorageItemUpdatedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOMStorage
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/DOMStorage/DomStorageItemsClearedEvent.cs b/source/ChromeDevTools/Protocol/iOS/DOMStorage/DomStorageItemsClearedEvent.cs
index f72f277..b119934 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOMStorage/DomStorageItemsClearedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOMStorage/DomStorageItemsClearedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOMStorage
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/DOMStorage/EnableCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOMStorage/EnableCommand.cs
index 490846f..05a4cf3 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOMStorage/EnableCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOMStorage/EnableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOMStorage
diff --git a/source/ChromeDevTools/Protocol/iOS/DOMStorage/EnableCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOMStorage/EnableCommandResponse.cs
index 064a512..e9437ae 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOMStorage/EnableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOMStorage/EnableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOMStorage
diff --git a/source/ChromeDevTools/Protocol/iOS/DOMStorage/GetDOMStorageItemsCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOMStorage/GetDOMStorageItemsCommand.cs
index 800f25a..9775e32 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOMStorage/GetDOMStorageItemsCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOMStorage/GetDOMStorageItemsCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOMStorage
diff --git a/source/ChromeDevTools/Protocol/iOS/DOMStorage/GetDOMStorageItemsCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOMStorage/GetDOMStorageItemsCommandResponse.cs
index cd6bbbe..0422690 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOMStorage/GetDOMStorageItemsCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOMStorage/GetDOMStorageItemsCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOMStorage
diff --git a/source/ChromeDevTools/Protocol/iOS/DOMStorage/RemoveDOMStorageItemCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOMStorage/RemoveDOMStorageItemCommand.cs
index bfb1444..ba35db5 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOMStorage/RemoveDOMStorageItemCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOMStorage/RemoveDOMStorageItemCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOMStorage
diff --git a/source/ChromeDevTools/Protocol/iOS/DOMStorage/RemoveDOMStorageItemCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOMStorage/RemoveDOMStorageItemCommandResponse.cs
index 33932ac..213aafb 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOMStorage/RemoveDOMStorageItemCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOMStorage/RemoveDOMStorageItemCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOMStorage
diff --git a/source/ChromeDevTools/Protocol/iOS/DOMStorage/SetDOMStorageItemCommand.cs b/source/ChromeDevTools/Protocol/iOS/DOMStorage/SetDOMStorageItemCommand.cs
index d5bfe99..319598a 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOMStorage/SetDOMStorageItemCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOMStorage/SetDOMStorageItemCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOMStorage
diff --git a/source/ChromeDevTools/Protocol/iOS/DOMStorage/SetDOMStorageItemCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/DOMStorage/SetDOMStorageItemCommandResponse.cs
index ac21ff3..195f880 100644
--- a/source/ChromeDevTools/Protocol/iOS/DOMStorage/SetDOMStorageItemCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/DOMStorage/SetDOMStorageItemCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.DOMStorage
diff --git a/source/ChromeDevTools/Protocol/iOS/Database/AddDatabaseEvent.cs b/source/ChromeDevTools/Protocol/iOS/Database/AddDatabaseEvent.cs
index 5754ba1..4aa92d7 100644
--- a/source/ChromeDevTools/Protocol/iOS/Database/AddDatabaseEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Database/AddDatabaseEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Database
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Database/DisableCommand.cs b/source/ChromeDevTools/Protocol/iOS/Database/DisableCommand.cs
index 4eb7168..b3824b8 100644
--- a/source/ChromeDevTools/Protocol/iOS/Database/DisableCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Database/DisableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Database
diff --git a/source/ChromeDevTools/Protocol/iOS/Database/DisableCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Database/DisableCommandResponse.cs
index 5930c88..7b7a25e 100644
--- a/source/ChromeDevTools/Protocol/iOS/Database/DisableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Database/DisableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Database
diff --git a/source/ChromeDevTools/Protocol/iOS/Database/EnableCommand.cs b/source/ChromeDevTools/Protocol/iOS/Database/EnableCommand.cs
index fb927af..5f8026a 100644
--- a/source/ChromeDevTools/Protocol/iOS/Database/EnableCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Database/EnableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Database
diff --git a/source/ChromeDevTools/Protocol/iOS/Database/EnableCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Database/EnableCommandResponse.cs
index 95737bc..3b27a60 100644
--- a/source/ChromeDevTools/Protocol/iOS/Database/EnableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Database/EnableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Database
diff --git a/source/ChromeDevTools/Protocol/iOS/Database/ExecuteSQLCommand.cs b/source/ChromeDevTools/Protocol/iOS/Database/ExecuteSQLCommand.cs
index 051d0bf..dbfc037 100644
--- a/source/ChromeDevTools/Protocol/iOS/Database/ExecuteSQLCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Database/ExecuteSQLCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Database
diff --git a/source/ChromeDevTools/Protocol/iOS/Database/ExecuteSQLCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Database/ExecuteSQLCommandResponse.cs
index bdee8d3..9895d49 100644
--- a/source/ChromeDevTools/Protocol/iOS/Database/ExecuteSQLCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Database/ExecuteSQLCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Database
diff --git a/source/ChromeDevTools/Protocol/iOS/Database/GetDatabaseTableNamesCommand.cs b/source/ChromeDevTools/Protocol/iOS/Database/GetDatabaseTableNamesCommand.cs
index 59370cb..fa98dfa 100644
--- a/source/ChromeDevTools/Protocol/iOS/Database/GetDatabaseTableNamesCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Database/GetDatabaseTableNamesCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Database
diff --git a/source/ChromeDevTools/Protocol/iOS/Database/GetDatabaseTableNamesCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Database/GetDatabaseTableNamesCommandResponse.cs
index ba4524e..476381b 100644
--- a/source/ChromeDevTools/Protocol/iOS/Database/GetDatabaseTableNamesCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Database/GetDatabaseTableNamesCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Database
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/BreakpointResolvedEvent.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/BreakpointResolvedEvent.cs
index d44cf46..52cce94 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/BreakpointResolvedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/BreakpointResolvedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/ContinueToLocationCommand.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/ContinueToLocationCommand.cs
index 28a2a90..1cadee5 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/ContinueToLocationCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/ContinueToLocationCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/ContinueToLocationCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/ContinueToLocationCommandResponse.cs
index ce1f7e5..539dd99 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/ContinueToLocationCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/ContinueToLocationCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/DidSampleProbeEvent.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/DidSampleProbeEvent.cs
index 3386169..d11c128 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/DidSampleProbeEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/DidSampleProbeEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/DisableCommand.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/DisableCommand.cs
index 41785e1..143d04c 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/DisableCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/DisableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/DisableCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/DisableCommandResponse.cs
index e219bb0..e46c1ec 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/DisableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/DisableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/EnableCommand.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/EnableCommand.cs
index 1312c35..ce6fab8 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/EnableCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/EnableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/EnableCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/EnableCommandResponse.cs
index 5054b73..54eb3d7 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/EnableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/EnableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/EvaluateOnCallFrameCommand.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/EvaluateOnCallFrameCommand.cs
index f073d13..f5117cb 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/EvaluateOnCallFrameCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/EvaluateOnCallFrameCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/EvaluateOnCallFrameCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/EvaluateOnCallFrameCommandResponse.cs
index 3c2cfb3..ccd284f 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/EvaluateOnCallFrameCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/EvaluateOnCallFrameCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/GetFunctionDetailsCommand.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/GetFunctionDetailsCommand.cs
index e658f4a..1962f38 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/GetFunctionDetailsCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/GetFunctionDetailsCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/GetFunctionDetailsCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/GetFunctionDetailsCommandResponse.cs
index 2848400..3fe2327 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/GetFunctionDetailsCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/GetFunctionDetailsCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/GetScriptSourceCommand.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/GetScriptSourceCommand.cs
index 198c957..161b069 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/GetScriptSourceCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/GetScriptSourceCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/GetScriptSourceCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/GetScriptSourceCommandResponse.cs
index 7359f77..d2526bb 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/GetScriptSourceCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/GetScriptSourceCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/GlobalObjectClearedEvent.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/GlobalObjectClearedEvent.cs
index e91acf4..91da484 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/GlobalObjectClearedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/GlobalObjectClearedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/PauseCommand.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/PauseCommand.cs
index 4f0465b..53288fe 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/PauseCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/PauseCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/PauseCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/PauseCommandResponse.cs
index 42f1c85..1240433 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/PauseCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/PauseCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/PausedEvent.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/PausedEvent.cs
index 544b4fd..0aa97a8 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/PausedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/PausedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/PlayBreakpointActionSoundEvent.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/PlayBreakpointActionSoundEvent.cs
index f6931a7..aa66da3 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/PlayBreakpointActionSoundEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/PlayBreakpointActionSoundEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/RemoveBreakpointCommand.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/RemoveBreakpointCommand.cs
index bbc0512..903c92a 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/RemoveBreakpointCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/RemoveBreakpointCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/RemoveBreakpointCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/RemoveBreakpointCommandResponse.cs
index 61afec3..b59c9d0 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/RemoveBreakpointCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/RemoveBreakpointCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/ResumeCommand.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/ResumeCommand.cs
index 0201f94..cc96069 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/ResumeCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/ResumeCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/ResumeCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/ResumeCommandResponse.cs
index 065b4bf..ed56cf6 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/ResumeCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/ResumeCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/ResumedEvent.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/ResumedEvent.cs
index b91fa4a..f2efe79 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/ResumedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/ResumedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/ScriptFailedToParseEvent.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/ScriptFailedToParseEvent.cs
index 90e2d72..c2c8a10 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/ScriptFailedToParseEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/ScriptFailedToParseEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/ScriptParsedEvent.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/ScriptParsedEvent.cs
index 3c02cea..ac58817 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/ScriptParsedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/ScriptParsedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/SearchInContentCommand.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/SearchInContentCommand.cs
index c241e66..5c880c8 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/SearchInContentCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/SearchInContentCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/SearchInContentCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/SearchInContentCommandResponse.cs
index f00b988..88ad76c 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/SearchInContentCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/SearchInContentCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/SetBreakpointByUrlCommand.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/SetBreakpointByUrlCommand.cs
index 6e3d2f1..d5718d7 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/SetBreakpointByUrlCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/SetBreakpointByUrlCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/SetBreakpointByUrlCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/SetBreakpointByUrlCommandResponse.cs
index 0b34718..a71edf7 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/SetBreakpointByUrlCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/SetBreakpointByUrlCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/SetBreakpointCommand.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/SetBreakpointCommand.cs
index c19c69a..3e25006 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/SetBreakpointCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/SetBreakpointCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/SetBreakpointCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/SetBreakpointCommandResponse.cs
index bbd36d0..8c30af7 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/SetBreakpointCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/SetBreakpointCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/SetBreakpointsActiveCommand.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/SetBreakpointsActiveCommand.cs
index 717e211..e6e121d 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/SetBreakpointsActiveCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/SetBreakpointsActiveCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/SetBreakpointsActiveCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/SetBreakpointsActiveCommandResponse.cs
index ffba3ac..df0bca3 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/SetBreakpointsActiveCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/SetBreakpointsActiveCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/SetOverlayMessageCommand.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/SetOverlayMessageCommand.cs
index bac986a..a936bb5 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/SetOverlayMessageCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/SetOverlayMessageCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/SetOverlayMessageCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/SetOverlayMessageCommandResponse.cs
index b64cc21..f53e404 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/SetOverlayMessageCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/SetOverlayMessageCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/SetPauseOnExceptionsCommand.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/SetPauseOnExceptionsCommand.cs
index 40b09b3..054db03 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/SetPauseOnExceptionsCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/SetPauseOnExceptionsCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/SetPauseOnExceptionsCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/SetPauseOnExceptionsCommandResponse.cs
index 918aa61..f2827e3 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/SetPauseOnExceptionsCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/SetPauseOnExceptionsCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/StepIntoCommand.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/StepIntoCommand.cs
index ce5bf21..35453e1 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/StepIntoCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/StepIntoCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/StepIntoCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/StepIntoCommandResponse.cs
index 574f141..cf413a8 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/StepIntoCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/StepIntoCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/StepOutCommand.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/StepOutCommand.cs
index 9927546..0bf0106 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/StepOutCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/StepOutCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/StepOutCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/StepOutCommandResponse.cs
index 9d7f106..c533add 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/StepOutCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/StepOutCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/StepOverCommand.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/StepOverCommand.cs
index 34aa564..487579b 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/StepOverCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/StepOverCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
diff --git a/source/ChromeDevTools/Protocol/iOS/Debugger/StepOverCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Debugger/StepOverCommandResponse.cs
index 938fed8..baa0550 100644
--- a/source/ChromeDevTools/Protocol/iOS/Debugger/StepOverCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Debugger/StepOverCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Debugger
diff --git a/source/ChromeDevTools/Protocol/iOS/IndexedDB/ClearObjectStoreCommand.cs b/source/ChromeDevTools/Protocol/iOS/IndexedDB/ClearObjectStoreCommand.cs
index 5ce57af..8d916f8 100644
--- a/source/ChromeDevTools/Protocol/iOS/IndexedDB/ClearObjectStoreCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/IndexedDB/ClearObjectStoreCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.IndexedDB
diff --git a/source/ChromeDevTools/Protocol/iOS/IndexedDB/ClearObjectStoreCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/IndexedDB/ClearObjectStoreCommandResponse.cs
index 38acf51..abb1b2c 100644
--- a/source/ChromeDevTools/Protocol/iOS/IndexedDB/ClearObjectStoreCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/IndexedDB/ClearObjectStoreCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.IndexedDB
diff --git a/source/ChromeDevTools/Protocol/iOS/IndexedDB/DisableCommand.cs b/source/ChromeDevTools/Protocol/iOS/IndexedDB/DisableCommand.cs
index 4459331..dbcccf7 100644
--- a/source/ChromeDevTools/Protocol/iOS/IndexedDB/DisableCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/IndexedDB/DisableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.IndexedDB
diff --git a/source/ChromeDevTools/Protocol/iOS/IndexedDB/DisableCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/IndexedDB/DisableCommandResponse.cs
index a0856d0..2b03cda 100644
--- a/source/ChromeDevTools/Protocol/iOS/IndexedDB/DisableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/IndexedDB/DisableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.IndexedDB
diff --git a/source/ChromeDevTools/Protocol/iOS/IndexedDB/EnableCommand.cs b/source/ChromeDevTools/Protocol/iOS/IndexedDB/EnableCommand.cs
index bc92b7b..197baa2 100644
--- a/source/ChromeDevTools/Protocol/iOS/IndexedDB/EnableCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/IndexedDB/EnableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.IndexedDB
diff --git a/source/ChromeDevTools/Protocol/iOS/IndexedDB/EnableCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/IndexedDB/EnableCommandResponse.cs
index fe2518c..ff47741 100644
--- a/source/ChromeDevTools/Protocol/iOS/IndexedDB/EnableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/IndexedDB/EnableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.IndexedDB
diff --git a/source/ChromeDevTools/Protocol/iOS/IndexedDB/RequestDataCommand.cs b/source/ChromeDevTools/Protocol/iOS/IndexedDB/RequestDataCommand.cs
index c117efa..7cd6e76 100644
--- a/source/ChromeDevTools/Protocol/iOS/IndexedDB/RequestDataCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/IndexedDB/RequestDataCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.IndexedDB
diff --git a/source/ChromeDevTools/Protocol/iOS/IndexedDB/RequestDataCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/IndexedDB/RequestDataCommandResponse.cs
index c357c7b..4b36ee2 100644
--- a/source/ChromeDevTools/Protocol/iOS/IndexedDB/RequestDataCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/IndexedDB/RequestDataCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.IndexedDB
diff --git a/source/ChromeDevTools/Protocol/iOS/IndexedDB/RequestDatabaseCommand.cs b/source/ChromeDevTools/Protocol/iOS/IndexedDB/RequestDatabaseCommand.cs
index 2cdd919..107c76f 100644
--- a/source/ChromeDevTools/Protocol/iOS/IndexedDB/RequestDatabaseCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/IndexedDB/RequestDatabaseCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.IndexedDB
diff --git a/source/ChromeDevTools/Protocol/iOS/IndexedDB/RequestDatabaseCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/IndexedDB/RequestDatabaseCommandResponse.cs
index eaa2494..f05901c 100644
--- a/source/ChromeDevTools/Protocol/iOS/IndexedDB/RequestDatabaseCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/IndexedDB/RequestDatabaseCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.IndexedDB
diff --git a/source/ChromeDevTools/Protocol/iOS/IndexedDB/RequestDatabaseNamesCommand.cs b/source/ChromeDevTools/Protocol/iOS/IndexedDB/RequestDatabaseNamesCommand.cs
index e83ad4e..f50899d 100644
--- a/source/ChromeDevTools/Protocol/iOS/IndexedDB/RequestDatabaseNamesCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/IndexedDB/RequestDatabaseNamesCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.IndexedDB
diff --git a/source/ChromeDevTools/Protocol/iOS/IndexedDB/RequestDatabaseNamesCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/IndexedDB/RequestDatabaseNamesCommandResponse.cs
index c407260..0a0c3c1 100644
--- a/source/ChromeDevTools/Protocol/iOS/IndexedDB/RequestDatabaseNamesCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/IndexedDB/RequestDatabaseNamesCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.IndexedDB
diff --git a/source/ChromeDevTools/Protocol/iOS/Inspector/ActivateExtraDomainsEvent.cs b/source/ChromeDevTools/Protocol/iOS/Inspector/ActivateExtraDomainsEvent.cs
index 94adcec..63b5b30 100644
--- a/source/ChromeDevTools/Protocol/iOS/Inspector/ActivateExtraDomainsEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Inspector/ActivateExtraDomainsEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Inspector
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Inspector/DetachedEvent.cs b/source/ChromeDevTools/Protocol/iOS/Inspector/DetachedEvent.cs
index dec75d5..97221c4 100644
--- a/source/ChromeDevTools/Protocol/iOS/Inspector/DetachedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Inspector/DetachedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Inspector
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Inspector/DisableCommand.cs b/source/ChromeDevTools/Protocol/iOS/Inspector/DisableCommand.cs
index f0605f1..0f73eb2 100644
--- a/source/ChromeDevTools/Protocol/iOS/Inspector/DisableCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Inspector/DisableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Inspector
diff --git a/source/ChromeDevTools/Protocol/iOS/Inspector/DisableCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Inspector/DisableCommandResponse.cs
index c4e456a..45dd36b 100644
--- a/source/ChromeDevTools/Protocol/iOS/Inspector/DisableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Inspector/DisableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Inspector
diff --git a/source/ChromeDevTools/Protocol/iOS/Inspector/EnableCommand.cs b/source/ChromeDevTools/Protocol/iOS/Inspector/EnableCommand.cs
index 7dc8987..f464557 100644
--- a/source/ChromeDevTools/Protocol/iOS/Inspector/EnableCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Inspector/EnableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Inspector
diff --git a/source/ChromeDevTools/Protocol/iOS/Inspector/EnableCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Inspector/EnableCommandResponse.cs
index 5b571e3..9e85c11 100644
--- a/source/ChromeDevTools/Protocol/iOS/Inspector/EnableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Inspector/EnableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Inspector
diff --git a/source/ChromeDevTools/Protocol/iOS/Inspector/EvaluateForTestInFrontendEvent.cs b/source/ChromeDevTools/Protocol/iOS/Inspector/EvaluateForTestInFrontendEvent.cs
index e23932a..1562221 100644
--- a/source/ChromeDevTools/Protocol/iOS/Inspector/EvaluateForTestInFrontendEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Inspector/EvaluateForTestInFrontendEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Inspector
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Inspector/InitializedCommand.cs b/source/ChromeDevTools/Protocol/iOS/Inspector/InitializedCommand.cs
index 6871c1a..8f2a711 100644
--- a/source/ChromeDevTools/Protocol/iOS/Inspector/InitializedCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Inspector/InitializedCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Inspector
diff --git a/source/ChromeDevTools/Protocol/iOS/Inspector/InitializedCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Inspector/InitializedCommandResponse.cs
index 7c5f50b..6efcee1 100644
--- a/source/ChromeDevTools/Protocol/iOS/Inspector/InitializedCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Inspector/InitializedCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Inspector
diff --git a/source/ChromeDevTools/Protocol/iOS/Inspector/InspectEvent.cs b/source/ChromeDevTools/Protocol/iOS/Inspector/InspectEvent.cs
index 518829a..483117b 100644
--- a/source/ChromeDevTools/Protocol/iOS/Inspector/InspectEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Inspector/InspectEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Inspector
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Inspector/TargetCrashedEvent.cs b/source/ChromeDevTools/Protocol/iOS/Inspector/TargetCrashedEvent.cs
index cebe54a..1c8f2b2 100644
--- a/source/ChromeDevTools/Protocol/iOS/Inspector/TargetCrashedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Inspector/TargetCrashedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Inspector
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/LayerTree/DisableCommand.cs b/source/ChromeDevTools/Protocol/iOS/LayerTree/DisableCommand.cs
index 26f2420..25a3b90 100644
--- a/source/ChromeDevTools/Protocol/iOS/LayerTree/DisableCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/LayerTree/DisableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.LayerTree
diff --git a/source/ChromeDevTools/Protocol/iOS/LayerTree/DisableCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/LayerTree/DisableCommandResponse.cs
index ca01f99..085a0d2 100644
--- a/source/ChromeDevTools/Protocol/iOS/LayerTree/DisableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/LayerTree/DisableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.LayerTree
diff --git a/source/ChromeDevTools/Protocol/iOS/LayerTree/EnableCommand.cs b/source/ChromeDevTools/Protocol/iOS/LayerTree/EnableCommand.cs
index 3cc9d00..948b222 100644
--- a/source/ChromeDevTools/Protocol/iOS/LayerTree/EnableCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/LayerTree/EnableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.LayerTree
diff --git a/source/ChromeDevTools/Protocol/iOS/LayerTree/EnableCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/LayerTree/EnableCommandResponse.cs
index 8cca24e..62bcfc7 100644
--- a/source/ChromeDevTools/Protocol/iOS/LayerTree/EnableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/LayerTree/EnableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.LayerTree
diff --git a/source/ChromeDevTools/Protocol/iOS/LayerTree/LayerTreeDidChangeEvent.cs b/source/ChromeDevTools/Protocol/iOS/LayerTree/LayerTreeDidChangeEvent.cs
index 3d6ec16..842ecda 100644
--- a/source/ChromeDevTools/Protocol/iOS/LayerTree/LayerTreeDidChangeEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/LayerTree/LayerTreeDidChangeEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.LayerTree
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/LayerTree/LayersForNodeCommand.cs b/source/ChromeDevTools/Protocol/iOS/LayerTree/LayersForNodeCommand.cs
index 643ebdb..7ae8b50 100644
--- a/source/ChromeDevTools/Protocol/iOS/LayerTree/LayersForNodeCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/LayerTree/LayersForNodeCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.LayerTree
diff --git a/source/ChromeDevTools/Protocol/iOS/LayerTree/LayersForNodeCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/LayerTree/LayersForNodeCommandResponse.cs
index bfcb625..702a176 100644
--- a/source/ChromeDevTools/Protocol/iOS/LayerTree/LayersForNodeCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/LayerTree/LayersForNodeCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.LayerTree
diff --git a/source/ChromeDevTools/Protocol/iOS/LayerTree/ReasonsForCompositingLayerCommand.cs b/source/ChromeDevTools/Protocol/iOS/LayerTree/ReasonsForCompositingLayerCommand.cs
index f0060a4..a2d63b1 100644
--- a/source/ChromeDevTools/Protocol/iOS/LayerTree/ReasonsForCompositingLayerCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/LayerTree/ReasonsForCompositingLayerCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.LayerTree
diff --git a/source/ChromeDevTools/Protocol/iOS/LayerTree/ReasonsForCompositingLayerCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/LayerTree/ReasonsForCompositingLayerCommandResponse.cs
index 31d760d..4551957 100644
--- a/source/ChromeDevTools/Protocol/iOS/LayerTree/ReasonsForCompositingLayerCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/LayerTree/ReasonsForCompositingLayerCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.LayerTree
diff --git a/source/ChromeDevTools/Protocol/iOS/Network/CanClearBrowserCacheCommand.cs b/source/ChromeDevTools/Protocol/iOS/Network/CanClearBrowserCacheCommand.cs
index 4d4fb38..0adf9c7 100644
--- a/source/ChromeDevTools/Protocol/iOS/Network/CanClearBrowserCacheCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Network/CanClearBrowserCacheCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Network
diff --git a/source/ChromeDevTools/Protocol/iOS/Network/CanClearBrowserCacheCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Network/CanClearBrowserCacheCommandResponse.cs
index 2140ba0..629ff5f 100644
--- a/source/ChromeDevTools/Protocol/iOS/Network/CanClearBrowserCacheCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Network/CanClearBrowserCacheCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Network
diff --git a/source/ChromeDevTools/Protocol/iOS/Network/CanClearBrowserCookiesCommand.cs b/source/ChromeDevTools/Protocol/iOS/Network/CanClearBrowserCookiesCommand.cs
index d3f67eb..07a05b2 100644
--- a/source/ChromeDevTools/Protocol/iOS/Network/CanClearBrowserCookiesCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Network/CanClearBrowserCookiesCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Network
diff --git a/source/ChromeDevTools/Protocol/iOS/Network/CanClearBrowserCookiesCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Network/CanClearBrowserCookiesCommandResponse.cs
index ed98407..9feffb3 100644
--- a/source/ChromeDevTools/Protocol/iOS/Network/CanClearBrowserCookiesCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Network/CanClearBrowserCookiesCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Network
diff --git a/source/ChromeDevTools/Protocol/iOS/Network/ClearBrowserCacheCommand.cs b/source/ChromeDevTools/Protocol/iOS/Network/ClearBrowserCacheCommand.cs
index 1956573..2f2a16f 100644
--- a/source/ChromeDevTools/Protocol/iOS/Network/ClearBrowserCacheCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Network/ClearBrowserCacheCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Network
diff --git a/source/ChromeDevTools/Protocol/iOS/Network/ClearBrowserCacheCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Network/ClearBrowserCacheCommandResponse.cs
index 1651fe9..3491ecc 100644
--- a/source/ChromeDevTools/Protocol/iOS/Network/ClearBrowserCacheCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Network/ClearBrowserCacheCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Network
diff --git a/source/ChromeDevTools/Protocol/iOS/Network/ClearBrowserCookiesCommand.cs b/source/ChromeDevTools/Protocol/iOS/Network/ClearBrowserCookiesCommand.cs
index bf871b5..8f15e82 100644
--- a/source/ChromeDevTools/Protocol/iOS/Network/ClearBrowserCookiesCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Network/ClearBrowserCookiesCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Network
diff --git a/source/ChromeDevTools/Protocol/iOS/Network/ClearBrowserCookiesCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Network/ClearBrowserCookiesCommandResponse.cs
index e510c5e..a8f6ae7 100644
--- a/source/ChromeDevTools/Protocol/iOS/Network/ClearBrowserCookiesCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Network/ClearBrowserCookiesCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Network
diff --git a/source/ChromeDevTools/Protocol/iOS/Network/DataReceivedEvent.cs b/source/ChromeDevTools/Protocol/iOS/Network/DataReceivedEvent.cs
index 5bd8105..edc538d 100644
--- a/source/ChromeDevTools/Protocol/iOS/Network/DataReceivedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Network/DataReceivedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Network
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Network/DisableCommand.cs b/source/ChromeDevTools/Protocol/iOS/Network/DisableCommand.cs
index 81fd875..37191a7 100644
--- a/source/ChromeDevTools/Protocol/iOS/Network/DisableCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Network/DisableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Network
diff --git a/source/ChromeDevTools/Protocol/iOS/Network/DisableCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Network/DisableCommandResponse.cs
index eec5808..afe64bf 100644
--- a/source/ChromeDevTools/Protocol/iOS/Network/DisableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Network/DisableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Network
diff --git a/source/ChromeDevTools/Protocol/iOS/Network/EnableCommand.cs b/source/ChromeDevTools/Protocol/iOS/Network/EnableCommand.cs
index 9c7a2d3..3ca9375 100644
--- a/source/ChromeDevTools/Protocol/iOS/Network/EnableCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Network/EnableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Network
diff --git a/source/ChromeDevTools/Protocol/iOS/Network/EnableCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Network/EnableCommandResponse.cs
index 4eb86f4..f97a4b9 100644
--- a/source/ChromeDevTools/Protocol/iOS/Network/EnableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Network/EnableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Network
diff --git a/source/ChromeDevTools/Protocol/iOS/Network/GetResponseBodyCommand.cs b/source/ChromeDevTools/Protocol/iOS/Network/GetResponseBodyCommand.cs
index cdc602d..0897d28 100644
--- a/source/ChromeDevTools/Protocol/iOS/Network/GetResponseBodyCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Network/GetResponseBodyCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Network
diff --git a/source/ChromeDevTools/Protocol/iOS/Network/GetResponseBodyCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Network/GetResponseBodyCommandResponse.cs
index 6c6874e..b5a8291 100644
--- a/source/ChromeDevTools/Protocol/iOS/Network/GetResponseBodyCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Network/GetResponseBodyCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Network
diff --git a/source/ChromeDevTools/Protocol/iOS/Network/LoadResourceCommand.cs b/source/ChromeDevTools/Protocol/iOS/Network/LoadResourceCommand.cs
index 189fdde..6f844b8 100644
--- a/source/ChromeDevTools/Protocol/iOS/Network/LoadResourceCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Network/LoadResourceCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Network
diff --git a/source/ChromeDevTools/Protocol/iOS/Network/LoadResourceCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Network/LoadResourceCommandResponse.cs
index a1aec18..cf321f7 100644
--- a/source/ChromeDevTools/Protocol/iOS/Network/LoadResourceCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Network/LoadResourceCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Network
diff --git a/source/ChromeDevTools/Protocol/iOS/Network/LoadingFailedEvent.cs b/source/ChromeDevTools/Protocol/iOS/Network/LoadingFailedEvent.cs
index 2a575b5..7626700 100644
--- a/source/ChromeDevTools/Protocol/iOS/Network/LoadingFailedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Network/LoadingFailedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Network
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Network/LoadingFinishedEvent.cs b/source/ChromeDevTools/Protocol/iOS/Network/LoadingFinishedEvent.cs
index 5af9f44..4b79146 100644
--- a/source/ChromeDevTools/Protocol/iOS/Network/LoadingFinishedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Network/LoadingFinishedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Network
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Network/RequestServedFromCacheEvent.cs b/source/ChromeDevTools/Protocol/iOS/Network/RequestServedFromCacheEvent.cs
index 6bfccf3..29ddaab 100644
--- a/source/ChromeDevTools/Protocol/iOS/Network/RequestServedFromCacheEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Network/RequestServedFromCacheEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Network
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Network/RequestServedFromMemoryCacheEvent.cs b/source/ChromeDevTools/Protocol/iOS/Network/RequestServedFromMemoryCacheEvent.cs
index 00f8c0e..460c299 100644
--- a/source/ChromeDevTools/Protocol/iOS/Network/RequestServedFromMemoryCacheEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Network/RequestServedFromMemoryCacheEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Network
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Network/RequestWillBeSentEvent.cs b/source/ChromeDevTools/Protocol/iOS/Network/RequestWillBeSentEvent.cs
index fea37cd..3d9e889 100644
--- a/source/ChromeDevTools/Protocol/iOS/Network/RequestWillBeSentEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Network/RequestWillBeSentEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Network
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Network/ResponseReceivedEvent.cs b/source/ChromeDevTools/Protocol/iOS/Network/ResponseReceivedEvent.cs
index 99ce230..753ffd1 100644
--- a/source/ChromeDevTools/Protocol/iOS/Network/ResponseReceivedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Network/ResponseReceivedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Network
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Network/SetCacheDisabledCommand.cs b/source/ChromeDevTools/Protocol/iOS/Network/SetCacheDisabledCommand.cs
index 3000784..0804ab7 100644
--- a/source/ChromeDevTools/Protocol/iOS/Network/SetCacheDisabledCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Network/SetCacheDisabledCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Network
diff --git a/source/ChromeDevTools/Protocol/iOS/Network/SetCacheDisabledCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Network/SetCacheDisabledCommandResponse.cs
index 9d1907e..25b35bc 100644
--- a/source/ChromeDevTools/Protocol/iOS/Network/SetCacheDisabledCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Network/SetCacheDisabledCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Network
diff --git a/source/ChromeDevTools/Protocol/iOS/Network/SetExtraHTTPHeadersCommand.cs b/source/ChromeDevTools/Protocol/iOS/Network/SetExtraHTTPHeadersCommand.cs
index 18e4a93..a24f696 100644
--- a/source/ChromeDevTools/Protocol/iOS/Network/SetExtraHTTPHeadersCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Network/SetExtraHTTPHeadersCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Network
diff --git a/source/ChromeDevTools/Protocol/iOS/Network/SetExtraHTTPHeadersCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Network/SetExtraHTTPHeadersCommandResponse.cs
index f9d5558..6abd30e 100644
--- a/source/ChromeDevTools/Protocol/iOS/Network/SetExtraHTTPHeadersCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Network/SetExtraHTTPHeadersCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Network
diff --git a/source/ChromeDevTools/Protocol/iOS/Network/WebSocketClosedEvent.cs b/source/ChromeDevTools/Protocol/iOS/Network/WebSocketClosedEvent.cs
index 0123942..e2facc8 100644
--- a/source/ChromeDevTools/Protocol/iOS/Network/WebSocketClosedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Network/WebSocketClosedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Network
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Network/WebSocketCreatedEvent.cs b/source/ChromeDevTools/Protocol/iOS/Network/WebSocketCreatedEvent.cs
index ec9e054..a9d5b85 100644
--- a/source/ChromeDevTools/Protocol/iOS/Network/WebSocketCreatedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Network/WebSocketCreatedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Network
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Network/WebSocketFrameErrorEvent.cs b/source/ChromeDevTools/Protocol/iOS/Network/WebSocketFrameErrorEvent.cs
index df7135c..c862340 100644
--- a/source/ChromeDevTools/Protocol/iOS/Network/WebSocketFrameErrorEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Network/WebSocketFrameErrorEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Network
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Network/WebSocketFrameReceivedEvent.cs b/source/ChromeDevTools/Protocol/iOS/Network/WebSocketFrameReceivedEvent.cs
index ec65ec2..c2930ac 100644
--- a/source/ChromeDevTools/Protocol/iOS/Network/WebSocketFrameReceivedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Network/WebSocketFrameReceivedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Network
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Network/WebSocketFrameSentEvent.cs b/source/ChromeDevTools/Protocol/iOS/Network/WebSocketFrameSentEvent.cs
index abd67f4..9269a17 100644
--- a/source/ChromeDevTools/Protocol/iOS/Network/WebSocketFrameSentEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Network/WebSocketFrameSentEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Network
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Network/WebSocketHandshakeResponseReceivedEvent.cs b/source/ChromeDevTools/Protocol/iOS/Network/WebSocketHandshakeResponseReceivedEvent.cs
index 0ca4924..4be5067 100644
--- a/source/ChromeDevTools/Protocol/iOS/Network/WebSocketHandshakeResponseReceivedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Network/WebSocketHandshakeResponseReceivedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Network
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Network/WebSocketWillSendHandshakeRequestEvent.cs b/source/ChromeDevTools/Protocol/iOS/Network/WebSocketWillSendHandshakeRequestEvent.cs
index a919624..34fd1e8 100644
--- a/source/ChromeDevTools/Protocol/iOS/Network/WebSocketWillSendHandshakeRequestEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Network/WebSocketWillSendHandshakeRequestEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Network
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/OverlayTypes/ContentFlowData.cs b/source/ChromeDevTools/Protocol/iOS/OverlayTypes/ContentFlowData.cs
index 9a18a34..b9d0616 100644
--- a/source/ChromeDevTools/Protocol/iOS/OverlayTypes/ContentFlowData.cs
+++ b/source/ChromeDevTools/Protocol/iOS/OverlayTypes/ContentFlowData.cs
@@ -4,9 +4,6 @@ using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.OverlayTypes
 {
-	/// <summary>
-	/// 
-	/// </summary>
 	[SupportedBy("iOS")]
 	public class ContentFlowData
 	{
diff --git a/source/ChromeDevTools/Protocol/iOS/OverlayTypes/Point.cs b/source/ChromeDevTools/Protocol/iOS/OverlayTypes/Point.cs
index 6ab9b65..2042d0e 100644
--- a/source/ChromeDevTools/Protocol/iOS/OverlayTypes/Point.cs
+++ b/source/ChromeDevTools/Protocol/iOS/OverlayTypes/Point.cs
@@ -4,9 +4,6 @@ using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.OverlayTypes
 {
-	/// <summary>
-	/// 
-	/// </summary>
 	[SupportedBy("iOS")]
 	public class Point
 	{
diff --git a/source/ChromeDevTools/Protocol/iOS/OverlayTypes/RegionFlowData.cs b/source/ChromeDevTools/Protocol/iOS/OverlayTypes/RegionFlowData.cs
index 961be56..9171f16 100644
--- a/source/ChromeDevTools/Protocol/iOS/OverlayTypes/RegionFlowData.cs
+++ b/source/ChromeDevTools/Protocol/iOS/OverlayTypes/RegionFlowData.cs
@@ -4,9 +4,6 @@ using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.OverlayTypes
 {
-	/// <summary>
-	/// 
-	/// </summary>
 	[SupportedBy("iOS")]
 	public class RegionFlowData
 	{
diff --git a/source/ChromeDevTools/Protocol/iOS/OverlayTypes/ShapeOutsideData.cs b/source/ChromeDevTools/Protocol/iOS/OverlayTypes/ShapeOutsideData.cs
index 7633477..1391f5b 100644
--- a/source/ChromeDevTools/Protocol/iOS/OverlayTypes/ShapeOutsideData.cs
+++ b/source/ChromeDevTools/Protocol/iOS/OverlayTypes/ShapeOutsideData.cs
@@ -4,9 +4,6 @@ using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.OverlayTypes
 {
-	/// <summary>
-	/// 
-	/// </summary>
 	[SupportedBy("iOS")]
 	public class ShapeOutsideData
 	{
diff --git a/source/ChromeDevTools/Protocol/iOS/OverlayTypes/Size.cs b/source/ChromeDevTools/Protocol/iOS/OverlayTypes/Size.cs
index ce7342a..1c89077 100644
--- a/source/ChromeDevTools/Protocol/iOS/OverlayTypes/Size.cs
+++ b/source/ChromeDevTools/Protocol/iOS/OverlayTypes/Size.cs
@@ -4,9 +4,6 @@ using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.OverlayTypes
 {
-	/// <summary>
-	/// 
-	/// </summary>
 	[SupportedBy("iOS")]
 	public class Size
 	{
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/AddScriptToEvaluateOnLoadCommand.cs b/source/ChromeDevTools/Protocol/iOS/Page/AddScriptToEvaluateOnLoadCommand.cs
index 1d2b2cf..e4df6d8 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/AddScriptToEvaluateOnLoadCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/AddScriptToEvaluateOnLoadCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/AddScriptToEvaluateOnLoadCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Page/AddScriptToEvaluateOnLoadCommandResponse.cs
index f77398e..174f569 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/AddScriptToEvaluateOnLoadCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/AddScriptToEvaluateOnLoadCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/ArchiveCommand.cs b/source/ChromeDevTools/Protocol/iOS/Page/ArchiveCommand.cs
index 64002de..fff7449 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/ArchiveCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/ArchiveCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/ArchiveCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Page/ArchiveCommandResponse.cs
index 3b8817c..de892fa 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/ArchiveCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/ArchiveCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/DeleteCookieCommand.cs b/source/ChromeDevTools/Protocol/iOS/Page/DeleteCookieCommand.cs
index ae893cd..7efb555 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/DeleteCookieCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/DeleteCookieCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/DeleteCookieCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Page/DeleteCookieCommandResponse.cs
index 7cf3abf..29602ff 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/DeleteCookieCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/DeleteCookieCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/DisableCommand.cs b/source/ChromeDevTools/Protocol/iOS/Page/DisableCommand.cs
index 7c7c482..25ff006 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/DisableCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/DisableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/DisableCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Page/DisableCommandResponse.cs
index d2fa938..0cb4feb 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/DisableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/DisableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/DomContentEventFiredEvent.cs b/source/ChromeDevTools/Protocol/iOS/Page/DomContentEventFiredEvent.cs
index 36b86f8..202dc19 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/DomContentEventFiredEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/DomContentEventFiredEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/EnableCommand.cs b/source/ChromeDevTools/Protocol/iOS/Page/EnableCommand.cs
index 9247529..2d06f05 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/EnableCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/EnableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/EnableCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Page/EnableCommandResponse.cs
index 3f264da..818c1c7 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/EnableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/EnableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/FrameClearedScheduledNavigationEvent.cs b/source/ChromeDevTools/Protocol/iOS/Page/FrameClearedScheduledNavigationEvent.cs
index edf340e..873e347 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/FrameClearedScheduledNavigationEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/FrameClearedScheduledNavigationEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/FrameDetachedEvent.cs b/source/ChromeDevTools/Protocol/iOS/Page/FrameDetachedEvent.cs
index 9a1feac..e57c209 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/FrameDetachedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/FrameDetachedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/FrameNavigatedEvent.cs b/source/ChromeDevTools/Protocol/iOS/Page/FrameNavigatedEvent.cs
index eb04031..a1492f0 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/FrameNavigatedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/FrameNavigatedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/FrameResource.cs b/source/ChromeDevTools/Protocol/iOS/Page/FrameResource.cs
index 6e78d38..8dd775a 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/FrameResource.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/FrameResource.cs
@@ -4,9 +4,6 @@ using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
 {
-	/// <summary>
-	/// 
-	/// </summary>
 	[SupportedBy("iOS")]
 	public class FrameResource
 	{
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/FrameScheduledNavigationEvent.cs b/source/ChromeDevTools/Protocol/iOS/Page/FrameScheduledNavigationEvent.cs
index 6420fa2..ffb8cb3 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/FrameScheduledNavigationEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/FrameScheduledNavigationEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/FrameStartedLoadingEvent.cs b/source/ChromeDevTools/Protocol/iOS/Page/FrameStartedLoadingEvent.cs
index 7bb6075..78a5473 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/FrameStartedLoadingEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/FrameStartedLoadingEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/FrameStoppedLoadingEvent.cs b/source/ChromeDevTools/Protocol/iOS/Page/FrameStoppedLoadingEvent.cs
index 8ac36de..6c1f02e 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/FrameStoppedLoadingEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/FrameStoppedLoadingEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/GetCompositingBordersVisibleCommand.cs b/source/ChromeDevTools/Protocol/iOS/Page/GetCompositingBordersVisibleCommand.cs
index 09e50eb..d9b11eb 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/GetCompositingBordersVisibleCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/GetCompositingBordersVisibleCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/GetCompositingBordersVisibleCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Page/GetCompositingBordersVisibleCommandResponse.cs
index 38dca5a..d913e75 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/GetCompositingBordersVisibleCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/GetCompositingBordersVisibleCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/GetCookiesCommand.cs b/source/ChromeDevTools/Protocol/iOS/Page/GetCookiesCommand.cs
index b1992ba..b2d4860 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/GetCookiesCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/GetCookiesCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/GetCookiesCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Page/GetCookiesCommandResponse.cs
index aaf6e86..93ccd00 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/GetCookiesCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/GetCookiesCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/GetResourceContentCommand.cs b/source/ChromeDevTools/Protocol/iOS/Page/GetResourceContentCommand.cs
index e68c17a..5084dc4 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/GetResourceContentCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/GetResourceContentCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/GetResourceContentCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Page/GetResourceContentCommandResponse.cs
index 19c1882..bfbb2cc 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/GetResourceContentCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/GetResourceContentCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/GetResourceTreeCommand.cs b/source/ChromeDevTools/Protocol/iOS/Page/GetResourceTreeCommand.cs
index 304febd..9ea3b34 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/GetResourceTreeCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/GetResourceTreeCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/GetResourceTreeCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Page/GetResourceTreeCommandResponse.cs
index 9b2459f..8d09142 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/GetResourceTreeCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/GetResourceTreeCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/GetScriptExecutionStatusCommand.cs b/source/ChromeDevTools/Protocol/iOS/Page/GetScriptExecutionStatusCommand.cs
index 4e3f289..b0b92e6 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/GetScriptExecutionStatusCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/GetScriptExecutionStatusCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/GetScriptExecutionStatusCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Page/GetScriptExecutionStatusCommandResponse.cs
index df849ed..99f1881 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/GetScriptExecutionStatusCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/GetScriptExecutionStatusCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/HandleJavaScriptDialogCommand.cs b/source/ChromeDevTools/Protocol/iOS/Page/HandleJavaScriptDialogCommand.cs
index c750f78..053ee9e 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/HandleJavaScriptDialogCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/HandleJavaScriptDialogCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/HandleJavaScriptDialogCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Page/HandleJavaScriptDialogCommandResponse.cs
index 0d54eb2..ec44d60 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/HandleJavaScriptDialogCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/HandleJavaScriptDialogCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/JavascriptDialogClosedEvent.cs b/source/ChromeDevTools/Protocol/iOS/Page/JavascriptDialogClosedEvent.cs
index 38940dd..11cf0f6 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/JavascriptDialogClosedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/JavascriptDialogClosedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/JavascriptDialogOpeningEvent.cs b/source/ChromeDevTools/Protocol/iOS/Page/JavascriptDialogOpeningEvent.cs
index db46317..d3e831b 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/JavascriptDialogOpeningEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/JavascriptDialogOpeningEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/LoadEventFiredEvent.cs b/source/ChromeDevTools/Protocol/iOS/Page/LoadEventFiredEvent.cs
index f65baea..18b0af4 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/LoadEventFiredEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/LoadEventFiredEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/NavigateCommand.cs b/source/ChromeDevTools/Protocol/iOS/Page/NavigateCommand.cs
index 790061f..f7d0c21 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/NavigateCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/NavigateCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/NavigateCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Page/NavigateCommandResponse.cs
index 9f19066..cec0701 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/NavigateCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/NavigateCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/ReloadCommand.cs b/source/ChromeDevTools/Protocol/iOS/Page/ReloadCommand.cs
index a2dceb4..4cd6387 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/ReloadCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/ReloadCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/ReloadCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Page/ReloadCommandResponse.cs
index c6e61e1..d7813da 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/ReloadCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/ReloadCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/RemoveScriptToEvaluateOnLoadCommand.cs b/source/ChromeDevTools/Protocol/iOS/Page/RemoveScriptToEvaluateOnLoadCommand.cs
index f06abc3..800e8fd 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/RemoveScriptToEvaluateOnLoadCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/RemoveScriptToEvaluateOnLoadCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/RemoveScriptToEvaluateOnLoadCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Page/RemoveScriptToEvaluateOnLoadCommandResponse.cs
index 2d027f4..2f396a6 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/RemoveScriptToEvaluateOnLoadCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/RemoveScriptToEvaluateOnLoadCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/ScriptsEnabledEvent.cs b/source/ChromeDevTools/Protocol/iOS/Page/ScriptsEnabledEvent.cs
index 38cdbc9..9ab36f2 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/ScriptsEnabledEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/ScriptsEnabledEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/SearchInResourceCommand.cs b/source/ChromeDevTools/Protocol/iOS/Page/SearchInResourceCommand.cs
index f40f6cd..42bbe91 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/SearchInResourceCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/SearchInResourceCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/SearchInResourceCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Page/SearchInResourceCommandResponse.cs
index 0ee9a25..3f6a3bf 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/SearchInResourceCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/SearchInResourceCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/SearchInResourcesCommand.cs b/source/ChromeDevTools/Protocol/iOS/Page/SearchInResourcesCommand.cs
index 9662dd4..b7550c0 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/SearchInResourcesCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/SearchInResourcesCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/SearchInResourcesCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Page/SearchInResourcesCommandResponse.cs
index 92510a5..0d09432 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/SearchInResourcesCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/SearchInResourcesCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/SetCompositingBordersVisibleCommand.cs b/source/ChromeDevTools/Protocol/iOS/Page/SetCompositingBordersVisibleCommand.cs
index 9167291..0ccb50a 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/SetCompositingBordersVisibleCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/SetCompositingBordersVisibleCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/SetCompositingBordersVisibleCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Page/SetCompositingBordersVisibleCommandResponse.cs
index 01e7468..9bd84f6 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/SetCompositingBordersVisibleCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/SetCompositingBordersVisibleCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/SetDocumentContentCommand.cs b/source/ChromeDevTools/Protocol/iOS/Page/SetDocumentContentCommand.cs
index d228ab7..8e3bb87 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/SetDocumentContentCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/SetDocumentContentCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/SetDocumentContentCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Page/SetDocumentContentCommandResponse.cs
index 21cdb62..4fb1a5a 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/SetDocumentContentCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/SetDocumentContentCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/SetEmulatedMediaCommand.cs b/source/ChromeDevTools/Protocol/iOS/Page/SetEmulatedMediaCommand.cs
index 1f3fd90..eb0b687 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/SetEmulatedMediaCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/SetEmulatedMediaCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/SetEmulatedMediaCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Page/SetEmulatedMediaCommandResponse.cs
index 962a038..b2c1c2e 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/SetEmulatedMediaCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/SetEmulatedMediaCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/SetScriptExecutionDisabledCommand.cs b/source/ChromeDevTools/Protocol/iOS/Page/SetScriptExecutionDisabledCommand.cs
index f3306dc..2589ef1 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/SetScriptExecutionDisabledCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/SetScriptExecutionDisabledCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/SetScriptExecutionDisabledCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Page/SetScriptExecutionDisabledCommandResponse.cs
index 1efee9b..4001e22 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/SetScriptExecutionDisabledCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/SetScriptExecutionDisabledCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/SetShowPaintRectsCommand.cs b/source/ChromeDevTools/Protocol/iOS/Page/SetShowPaintRectsCommand.cs
index 1c42969..7d76860 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/SetShowPaintRectsCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/SetShowPaintRectsCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/SetShowPaintRectsCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Page/SetShowPaintRectsCommandResponse.cs
index 27ef286..55a187d 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/SetShowPaintRectsCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/SetShowPaintRectsCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/SetTouchEmulationEnabledCommand.cs b/source/ChromeDevTools/Protocol/iOS/Page/SetTouchEmulationEnabledCommand.cs
index 22d1b74..7078136 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/SetTouchEmulationEnabledCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/SetTouchEmulationEnabledCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/SetTouchEmulationEnabledCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Page/SetTouchEmulationEnabledCommandResponse.cs
index 67c6629..5caa1b2 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/SetTouchEmulationEnabledCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/SetTouchEmulationEnabledCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/SnapshotNodeCommand.cs b/source/ChromeDevTools/Protocol/iOS/Page/SnapshotNodeCommand.cs
index 292c9ca..02a0e62 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/SnapshotNodeCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/SnapshotNodeCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/SnapshotNodeCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Page/SnapshotNodeCommandResponse.cs
index 87afcf5..d821683 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/SnapshotNodeCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/SnapshotNodeCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/SnapshotRectCommand.cs b/source/ChromeDevTools/Protocol/iOS/Page/SnapshotRectCommand.cs
index cde292c..466044d 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/SnapshotRectCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/SnapshotRectCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Page/SnapshotRectCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Page/SnapshotRectCommandResponse.cs
index 59fa675..8398526 100644
--- a/source/ChromeDevTools/Protocol/iOS/Page/SnapshotRectCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Page/SnapshotRectCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Page
diff --git a/source/ChromeDevTools/Protocol/iOS/Runtime/CallFunctionOnCommand.cs b/source/ChromeDevTools/Protocol/iOS/Runtime/CallFunctionOnCommand.cs
index 144825f..fe2c301 100644
--- a/source/ChromeDevTools/Protocol/iOS/Runtime/CallFunctionOnCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Runtime/CallFunctionOnCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Runtime
diff --git a/source/ChromeDevTools/Protocol/iOS/Runtime/CallFunctionOnCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Runtime/CallFunctionOnCommandResponse.cs
index 219e448..6b7f896 100644
--- a/source/ChromeDevTools/Protocol/iOS/Runtime/CallFunctionOnCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Runtime/CallFunctionOnCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Runtime
diff --git a/source/ChromeDevTools/Protocol/iOS/Runtime/CollectionEntry.cs b/source/ChromeDevTools/Protocol/iOS/Runtime/CollectionEntry.cs
index 8f36977..44b9834 100644
--- a/source/ChromeDevTools/Protocol/iOS/Runtime/CollectionEntry.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Runtime/CollectionEntry.cs
@@ -4,9 +4,6 @@ using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Runtime
 {
-	/// <summary>
-	/// 
-	/// </summary>
 	[SupportedBy("iOS")]
 	public class CollectionEntry
 	{
diff --git a/source/ChromeDevTools/Protocol/iOS/Runtime/DisableCommand.cs b/source/ChromeDevTools/Protocol/iOS/Runtime/DisableCommand.cs
index 37e9ced..f8316a2 100644
--- a/source/ChromeDevTools/Protocol/iOS/Runtime/DisableCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Runtime/DisableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Runtime
diff --git a/source/ChromeDevTools/Protocol/iOS/Runtime/DisableCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Runtime/DisableCommandResponse.cs
index 9738629..4d1e566 100644
--- a/source/ChromeDevTools/Protocol/iOS/Runtime/DisableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Runtime/DisableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Runtime
diff --git a/source/ChromeDevTools/Protocol/iOS/Runtime/DisableTypeProfilerCommand.cs b/source/ChromeDevTools/Protocol/iOS/Runtime/DisableTypeProfilerCommand.cs
index ee67619..3e42d33 100644
--- a/source/ChromeDevTools/Protocol/iOS/Runtime/DisableTypeProfilerCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Runtime/DisableTypeProfilerCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Runtime
diff --git a/source/ChromeDevTools/Protocol/iOS/Runtime/DisableTypeProfilerCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Runtime/DisableTypeProfilerCommandResponse.cs
index 28b1cc0..b5bdf39 100644
--- a/source/ChromeDevTools/Protocol/iOS/Runtime/DisableTypeProfilerCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Runtime/DisableTypeProfilerCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Runtime
diff --git a/source/ChromeDevTools/Protocol/iOS/Runtime/EnableCommand.cs b/source/ChromeDevTools/Protocol/iOS/Runtime/EnableCommand.cs
index b4e58c7..f2321a8 100644
--- a/source/ChromeDevTools/Protocol/iOS/Runtime/EnableCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Runtime/EnableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Runtime
diff --git a/source/ChromeDevTools/Protocol/iOS/Runtime/EnableCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Runtime/EnableCommandResponse.cs
index 851762d..34b866d 100644
--- a/source/ChromeDevTools/Protocol/iOS/Runtime/EnableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Runtime/EnableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Runtime
diff --git a/source/ChromeDevTools/Protocol/iOS/Runtime/EnableTypeProfilerCommand.cs b/source/ChromeDevTools/Protocol/iOS/Runtime/EnableTypeProfilerCommand.cs
index 00a7f51..2153b8b 100644
--- a/source/ChromeDevTools/Protocol/iOS/Runtime/EnableTypeProfilerCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Runtime/EnableTypeProfilerCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Runtime
diff --git a/source/ChromeDevTools/Protocol/iOS/Runtime/EnableTypeProfilerCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Runtime/EnableTypeProfilerCommandResponse.cs
index b662b2f..4ae99f5 100644
--- a/source/ChromeDevTools/Protocol/iOS/Runtime/EnableTypeProfilerCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Runtime/EnableTypeProfilerCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Runtime
diff --git a/source/ChromeDevTools/Protocol/iOS/Runtime/EntryPreview.cs b/source/ChromeDevTools/Protocol/iOS/Runtime/EntryPreview.cs
index 9c0017c..f9e6f3b 100644
--- a/source/ChromeDevTools/Protocol/iOS/Runtime/EntryPreview.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Runtime/EntryPreview.cs
@@ -4,9 +4,6 @@ using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Runtime
 {
-	/// <summary>
-	/// 
-	/// </summary>
 	[SupportedBy("iOS")]
 	public class EntryPreview
 	{
diff --git a/source/ChromeDevTools/Protocol/iOS/Runtime/EvaluateCommand.cs b/source/ChromeDevTools/Protocol/iOS/Runtime/EvaluateCommand.cs
index bfaed60..335a856 100644
--- a/source/ChromeDevTools/Protocol/iOS/Runtime/EvaluateCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Runtime/EvaluateCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Runtime
diff --git a/source/ChromeDevTools/Protocol/iOS/Runtime/EvaluateCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Runtime/EvaluateCommandResponse.cs
index 0fc9eb0..2c949a3 100644
--- a/source/ChromeDevTools/Protocol/iOS/Runtime/EvaluateCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Runtime/EvaluateCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Runtime
diff --git a/source/ChromeDevTools/Protocol/iOS/Runtime/ExecutionContextCreatedEvent.cs b/source/ChromeDevTools/Protocol/iOS/Runtime/ExecutionContextCreatedEvent.cs
index ec3fc32..3733425 100644
--- a/source/ChromeDevTools/Protocol/iOS/Runtime/ExecutionContextCreatedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Runtime/ExecutionContextCreatedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Runtime
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Runtime/GetBasicBlocksCommand.cs b/source/ChromeDevTools/Protocol/iOS/Runtime/GetBasicBlocksCommand.cs
index 371ac0f..958df59 100644
--- a/source/ChromeDevTools/Protocol/iOS/Runtime/GetBasicBlocksCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Runtime/GetBasicBlocksCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Runtime
diff --git a/source/ChromeDevTools/Protocol/iOS/Runtime/GetBasicBlocksCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Runtime/GetBasicBlocksCommandResponse.cs
index 955510c..cd5c13a 100644
--- a/source/ChromeDevTools/Protocol/iOS/Runtime/GetBasicBlocksCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Runtime/GetBasicBlocksCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Runtime
diff --git a/source/ChromeDevTools/Protocol/iOS/Runtime/GetCollectionEntriesCommand.cs b/source/ChromeDevTools/Protocol/iOS/Runtime/GetCollectionEntriesCommand.cs
index d65253f..34323bf 100644
--- a/source/ChromeDevTools/Protocol/iOS/Runtime/GetCollectionEntriesCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Runtime/GetCollectionEntriesCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Runtime
diff --git a/source/ChromeDevTools/Protocol/iOS/Runtime/GetCollectionEntriesCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Runtime/GetCollectionEntriesCommandResponse.cs
index 95610cd..72a4137 100644
--- a/source/ChromeDevTools/Protocol/iOS/Runtime/GetCollectionEntriesCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Runtime/GetCollectionEntriesCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Runtime
diff --git a/source/ChromeDevTools/Protocol/iOS/Runtime/GetDisplayablePropertiesCommand.cs b/source/ChromeDevTools/Protocol/iOS/Runtime/GetDisplayablePropertiesCommand.cs
index c20aefc..3ef36eb 100644
--- a/source/ChromeDevTools/Protocol/iOS/Runtime/GetDisplayablePropertiesCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Runtime/GetDisplayablePropertiesCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Runtime
diff --git a/source/ChromeDevTools/Protocol/iOS/Runtime/GetDisplayablePropertiesCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Runtime/GetDisplayablePropertiesCommandResponse.cs
index f99d65a..5ae01af 100644
--- a/source/ChromeDevTools/Protocol/iOS/Runtime/GetDisplayablePropertiesCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Runtime/GetDisplayablePropertiesCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Runtime
diff --git a/source/ChromeDevTools/Protocol/iOS/Runtime/GetPropertiesCommand.cs b/source/ChromeDevTools/Protocol/iOS/Runtime/GetPropertiesCommand.cs
index b8f87fc..7685a67 100644
--- a/source/ChromeDevTools/Protocol/iOS/Runtime/GetPropertiesCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Runtime/GetPropertiesCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Runtime
diff --git a/source/ChromeDevTools/Protocol/iOS/Runtime/GetPropertiesCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Runtime/GetPropertiesCommandResponse.cs
index 2042ae9..cde7cca 100644
--- a/source/ChromeDevTools/Protocol/iOS/Runtime/GetPropertiesCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Runtime/GetPropertiesCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Runtime
diff --git a/source/ChromeDevTools/Protocol/iOS/Runtime/GetRuntimeTypesForVariablesAtOffsetsCommand.cs b/source/ChromeDevTools/Protocol/iOS/Runtime/GetRuntimeTypesForVariablesAtOffsetsCommand.cs
index 18195a4..c9a73ac 100644
--- a/source/ChromeDevTools/Protocol/iOS/Runtime/GetRuntimeTypesForVariablesAtOffsetsCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Runtime/GetRuntimeTypesForVariablesAtOffsetsCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Runtime
diff --git a/source/ChromeDevTools/Protocol/iOS/Runtime/GetRuntimeTypesForVariablesAtOffsetsCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Runtime/GetRuntimeTypesForVariablesAtOffsetsCommandResponse.cs
index 54294e8..f5def25 100644
--- a/source/ChromeDevTools/Protocol/iOS/Runtime/GetRuntimeTypesForVariablesAtOffsetsCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Runtime/GetRuntimeTypesForVariablesAtOffsetsCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Runtime
diff --git a/source/ChromeDevTools/Protocol/iOS/Runtime/ParseCommand.cs b/source/ChromeDevTools/Protocol/iOS/Runtime/ParseCommand.cs
index fadcb33..407f3d1 100644
--- a/source/ChromeDevTools/Protocol/iOS/Runtime/ParseCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Runtime/ParseCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Runtime
diff --git a/source/ChromeDevTools/Protocol/iOS/Runtime/ParseCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Runtime/ParseCommandResponse.cs
index adfe7b4..8eecdfb 100644
--- a/source/ChromeDevTools/Protocol/iOS/Runtime/ParseCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Runtime/ParseCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Runtime
diff --git a/source/ChromeDevTools/Protocol/iOS/Runtime/PropertyPreview.cs b/source/ChromeDevTools/Protocol/iOS/Runtime/PropertyPreview.cs
index 64c86ce..8575f62 100644
--- a/source/ChromeDevTools/Protocol/iOS/Runtime/PropertyPreview.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Runtime/PropertyPreview.cs
@@ -4,9 +4,6 @@ using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Runtime
 {
-	/// <summary>
-	/// 
-	/// </summary>
 	[SupportedBy("iOS")]
 	public class PropertyPreview
 	{
diff --git a/source/ChromeDevTools/Protocol/iOS/Runtime/ReleaseObjectCommand.cs b/source/ChromeDevTools/Protocol/iOS/Runtime/ReleaseObjectCommand.cs
index 2d532f2..b779ee6 100644
--- a/source/ChromeDevTools/Protocol/iOS/Runtime/ReleaseObjectCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Runtime/ReleaseObjectCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Runtime
diff --git a/source/ChromeDevTools/Protocol/iOS/Runtime/ReleaseObjectCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Runtime/ReleaseObjectCommandResponse.cs
index 7e67813..bd25ba6 100644
--- a/source/ChromeDevTools/Protocol/iOS/Runtime/ReleaseObjectCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Runtime/ReleaseObjectCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Runtime
diff --git a/source/ChromeDevTools/Protocol/iOS/Runtime/ReleaseObjectGroupCommand.cs b/source/ChromeDevTools/Protocol/iOS/Runtime/ReleaseObjectGroupCommand.cs
index dbf11db..f24f4e4 100644
--- a/source/ChromeDevTools/Protocol/iOS/Runtime/ReleaseObjectGroupCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Runtime/ReleaseObjectGroupCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Runtime
diff --git a/source/ChromeDevTools/Protocol/iOS/Runtime/ReleaseObjectGroupCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Runtime/ReleaseObjectGroupCommandResponse.cs
index a255519..d3daa35 100644
--- a/source/ChromeDevTools/Protocol/iOS/Runtime/ReleaseObjectGroupCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Runtime/ReleaseObjectGroupCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Runtime
diff --git a/source/ChromeDevTools/Protocol/iOS/Runtime/RunCommand.cs b/source/ChromeDevTools/Protocol/iOS/Runtime/RunCommand.cs
index 4400b0d..b1c23e8 100644
--- a/source/ChromeDevTools/Protocol/iOS/Runtime/RunCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Runtime/RunCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Runtime
diff --git a/source/ChromeDevTools/Protocol/iOS/Runtime/RunCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Runtime/RunCommandResponse.cs
index a9a2883..8c3c694 100644
--- a/source/ChromeDevTools/Protocol/iOS/Runtime/RunCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Runtime/RunCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Runtime
diff --git a/source/ChromeDevTools/Protocol/iOS/Runtime/SaveResultCommand.cs b/source/ChromeDevTools/Protocol/iOS/Runtime/SaveResultCommand.cs
index ae6de86..68ef662 100644
--- a/source/ChromeDevTools/Protocol/iOS/Runtime/SaveResultCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Runtime/SaveResultCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Runtime
diff --git a/source/ChromeDevTools/Protocol/iOS/Runtime/SaveResultCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Runtime/SaveResultCommandResponse.cs
index f50c49c..7ce28f3 100644
--- a/source/ChromeDevTools/Protocol/iOS/Runtime/SaveResultCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Runtime/SaveResultCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Runtime
diff --git a/source/ChromeDevTools/Protocol/iOS/Runtime/StructureDescription.cs b/source/ChromeDevTools/Protocol/iOS/Runtime/StructureDescription.cs
index 97f45c1..8355b50 100644
--- a/source/ChromeDevTools/Protocol/iOS/Runtime/StructureDescription.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Runtime/StructureDescription.cs
@@ -4,9 +4,6 @@ using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Runtime
 {
-	/// <summary>
-	/// 
-	/// </summary>
 	[SupportedBy("iOS")]
 	public class StructureDescription
 	{
diff --git a/source/ChromeDevTools/Protocol/iOS/Runtime/TypeSet.cs b/source/ChromeDevTools/Protocol/iOS/Runtime/TypeSet.cs
index 815411d..94f2787 100644
--- a/source/ChromeDevTools/Protocol/iOS/Runtime/TypeSet.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Runtime/TypeSet.cs
@@ -4,9 +4,6 @@ using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Runtime
 {
-	/// <summary>
-	/// 
-	/// </summary>
 	[SupportedBy("iOS")]
 	public class TypeSet
 	{
diff --git a/source/ChromeDevTools/Protocol/iOS/Timeline/EventRecordedEvent.cs b/source/ChromeDevTools/Protocol/iOS/Timeline/EventRecordedEvent.cs
index 9c1e339..595f654 100644
--- a/source/ChromeDevTools/Protocol/iOS/Timeline/EventRecordedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Timeline/EventRecordedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Timeline
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Timeline/RecordingStartedEvent.cs b/source/ChromeDevTools/Protocol/iOS/Timeline/RecordingStartedEvent.cs
index c78dfaf..68e5ce0 100644
--- a/source/ChromeDevTools/Protocol/iOS/Timeline/RecordingStartedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Timeline/RecordingStartedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Timeline
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Timeline/RecordingStoppedEvent.cs b/source/ChromeDevTools/Protocol/iOS/Timeline/RecordingStoppedEvent.cs
index 055f412..60d7b83 100644
--- a/source/ChromeDevTools/Protocol/iOS/Timeline/RecordingStoppedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Timeline/RecordingStoppedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Timeline
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Timeline/StartCommand.cs b/source/ChromeDevTools/Protocol/iOS/Timeline/StartCommand.cs
index 8f1561b..5ca2c80 100644
--- a/source/ChromeDevTools/Protocol/iOS/Timeline/StartCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Timeline/StartCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Timeline
diff --git a/source/ChromeDevTools/Protocol/iOS/Timeline/StartCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Timeline/StartCommandResponse.cs
index c68f911..a226c1e 100644
--- a/source/ChromeDevTools/Protocol/iOS/Timeline/StartCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Timeline/StartCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Timeline
diff --git a/source/ChromeDevTools/Protocol/iOS/Timeline/StopCommand.cs b/source/ChromeDevTools/Protocol/iOS/Timeline/StopCommand.cs
index c726f3a..1db62de 100644
--- a/source/ChromeDevTools/Protocol/iOS/Timeline/StopCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Timeline/StopCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Timeline
diff --git a/source/ChromeDevTools/Protocol/iOS/Timeline/StopCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Timeline/StopCommandResponse.cs
index 97ec192..d630d45 100644
--- a/source/ChromeDevTools/Protocol/iOS/Timeline/StopCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Timeline/StopCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Timeline
diff --git a/source/ChromeDevTools/Protocol/iOS/Worker/CanInspectWorkersCommand.cs b/source/ChromeDevTools/Protocol/iOS/Worker/CanInspectWorkersCommand.cs
index 5f9d2f1..e00b0da 100644
--- a/source/ChromeDevTools/Protocol/iOS/Worker/CanInspectWorkersCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Worker/CanInspectWorkersCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Worker
diff --git a/source/ChromeDevTools/Protocol/iOS/Worker/CanInspectWorkersCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Worker/CanInspectWorkersCommandResponse.cs
index 247dd22..586a066 100644
--- a/source/ChromeDevTools/Protocol/iOS/Worker/CanInspectWorkersCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Worker/CanInspectWorkersCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Worker
diff --git a/source/ChromeDevTools/Protocol/iOS/Worker/ConnectToWorkerCommand.cs b/source/ChromeDevTools/Protocol/iOS/Worker/ConnectToWorkerCommand.cs
index 8e63493..7386203 100644
--- a/source/ChromeDevTools/Protocol/iOS/Worker/ConnectToWorkerCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Worker/ConnectToWorkerCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Worker
diff --git a/source/ChromeDevTools/Protocol/iOS/Worker/ConnectToWorkerCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Worker/ConnectToWorkerCommandResponse.cs
index fc4bb72..027f66b 100644
--- a/source/ChromeDevTools/Protocol/iOS/Worker/ConnectToWorkerCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Worker/ConnectToWorkerCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Worker
diff --git a/source/ChromeDevTools/Protocol/iOS/Worker/DisableCommand.cs b/source/ChromeDevTools/Protocol/iOS/Worker/DisableCommand.cs
index 28999f9..71dc078 100644
--- a/source/ChromeDevTools/Protocol/iOS/Worker/DisableCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Worker/DisableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Worker
diff --git a/source/ChromeDevTools/Protocol/iOS/Worker/DisableCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Worker/DisableCommandResponse.cs
index eba7e06..3fdcbfe 100644
--- a/source/ChromeDevTools/Protocol/iOS/Worker/DisableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Worker/DisableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Worker
diff --git a/source/ChromeDevTools/Protocol/iOS/Worker/DisconnectFromWorkerCommand.cs b/source/ChromeDevTools/Protocol/iOS/Worker/DisconnectFromWorkerCommand.cs
index d4e9614..75cc0af 100644
--- a/source/ChromeDevTools/Protocol/iOS/Worker/DisconnectFromWorkerCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Worker/DisconnectFromWorkerCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Worker
diff --git a/source/ChromeDevTools/Protocol/iOS/Worker/DisconnectFromWorkerCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Worker/DisconnectFromWorkerCommandResponse.cs
index 35b30dd..ff5064a 100644
--- a/source/ChromeDevTools/Protocol/iOS/Worker/DisconnectFromWorkerCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Worker/DisconnectFromWorkerCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Worker
diff --git a/source/ChromeDevTools/Protocol/iOS/Worker/DisconnectedFromWorkerEvent.cs b/source/ChromeDevTools/Protocol/iOS/Worker/DisconnectedFromWorkerEvent.cs
index 6216036..75d7859 100644
--- a/source/ChromeDevTools/Protocol/iOS/Worker/DisconnectedFromWorkerEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Worker/DisconnectedFromWorkerEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Worker
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Worker/DispatchMessageFromWorkerEvent.cs b/source/ChromeDevTools/Protocol/iOS/Worker/DispatchMessageFromWorkerEvent.cs
index 91e96bb..1fada13 100644
--- a/source/ChromeDevTools/Protocol/iOS/Worker/DispatchMessageFromWorkerEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Worker/DispatchMessageFromWorkerEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Worker
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Worker/EnableCommand.cs b/source/ChromeDevTools/Protocol/iOS/Worker/EnableCommand.cs
index ce54c39..49aa850 100644
--- a/source/ChromeDevTools/Protocol/iOS/Worker/EnableCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Worker/EnableCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Worker
diff --git a/source/ChromeDevTools/Protocol/iOS/Worker/EnableCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Worker/EnableCommandResponse.cs
index e261be3..b34507b 100644
--- a/source/ChromeDevTools/Protocol/iOS/Worker/EnableCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Worker/EnableCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Worker
diff --git a/source/ChromeDevTools/Protocol/iOS/Worker/SendMessageToWorkerCommand.cs b/source/ChromeDevTools/Protocol/iOS/Worker/SendMessageToWorkerCommand.cs
index 791e89f..fb5a769 100644
--- a/source/ChromeDevTools/Protocol/iOS/Worker/SendMessageToWorkerCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Worker/SendMessageToWorkerCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Worker
diff --git a/source/ChromeDevTools/Protocol/iOS/Worker/SendMessageToWorkerCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Worker/SendMessageToWorkerCommandResponse.cs
index f4e59d7..a3792b2 100644
--- a/source/ChromeDevTools/Protocol/iOS/Worker/SendMessageToWorkerCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Worker/SendMessageToWorkerCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Worker
diff --git a/source/ChromeDevTools/Protocol/iOS/Worker/SetAutoconnectToWorkersCommand.cs b/source/ChromeDevTools/Protocol/iOS/Worker/SetAutoconnectToWorkersCommand.cs
index 56f876b..8cf91c0 100644
--- a/source/ChromeDevTools/Protocol/iOS/Worker/SetAutoconnectToWorkersCommand.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Worker/SetAutoconnectToWorkersCommand.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Worker
diff --git a/source/ChromeDevTools/Protocol/iOS/Worker/SetAutoconnectToWorkersCommandResponse.cs b/source/ChromeDevTools/Protocol/iOS/Worker/SetAutoconnectToWorkersCommandResponse.cs
index 65b7b84..13818ab 100644
--- a/source/ChromeDevTools/Protocol/iOS/Worker/SetAutoconnectToWorkersCommandResponse.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Worker/SetAutoconnectToWorkersCommandResponse.cs
@@ -1,5 +1,6 @@
 using MasterDevs.ChromeDevTools;
 using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Worker
diff --git a/source/ChromeDevTools/Protocol/iOS/Worker/WorkerCreatedEvent.cs b/source/ChromeDevTools/Protocol/iOS/Worker/WorkerCreatedEvent.cs
index 77bc969..7166ebd 100644
--- a/source/ChromeDevTools/Protocol/iOS/Worker/WorkerCreatedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Worker/WorkerCreatedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Worker
 {
diff --git a/source/ChromeDevTools/Protocol/iOS/Worker/WorkerTerminatedEvent.cs b/source/ChromeDevTools/Protocol/iOS/Worker/WorkerTerminatedEvent.cs
index 46e7c74..4fe3a4f 100644
--- a/source/ChromeDevTools/Protocol/iOS/Worker/WorkerTerminatedEvent.cs
+++ b/source/ChromeDevTools/Protocol/iOS/Worker/WorkerTerminatedEvent.cs
@@ -1,4 +1,6 @@
-using MasterDevs.ChromeDevTools;using Newtonsoft.Json;
+using MasterDevs.ChromeDevTools;
+using Newtonsoft.Json;
+using System.Collections.Generic;
 
 namespace MasterDevs.ChromeDevTools.Protocol.iOS.Worker
 {
diff --git a/source/ProtocolGenerator/Command.cs b/source/ProtocolGenerator/Command.cs
index 59199f9..1b59e27 100644
--- a/source/ProtocolGenerator/Command.cs
+++ b/source/ProtocolGenerator/Command.cs
@@ -58,6 +58,13 @@ namespace MasterDevs.ChromeDevTools.ProtocolGenerator
         [JsonProperty("experimental")]
         public bool IsExperimental { get; set; }
 
+        [JsonProperty("deprecated")]
+        public bool IsDeprecated
+        {
+            get;
+            set;
+        }
+
         public override bool Equals(object obj)
         {
             var other = obj as Command;
diff --git a/source/ProtocolGenerator/Program.cs b/source/ProtocolGenerator/Program.cs
index 0550241..a947a37 100644
--- a/source/ProtocolGenerator/Program.cs
+++ b/source/ProtocolGenerator/Program.cs
@@ -221,20 +221,14 @@ namespace MasterDevs.ChromeDevTools.ProtocolGenerator
         {
             var className = ToCamelCase(eventName) + EventSubclass;
             var sb = new StringBuilder();
-            sb.AppendFormat("using MasterDevs.ChromeDevTools;");
-            sb.AppendFormat("using Newtonsoft.Json;");
-            sb.AppendLine();
+            sb.AppendLine("using MasterDevs.ChromeDevTools;");
+            sb.AppendLine("using Newtonsoft.Json;");
+            sb.AppendLine("using System.Collections.Generic;");
             sb.AppendLine();
             sb.AppendFormat("namespace {0}.{1}.{2}", RootNamespace, ns, domainDirectoryInfo.Name);
             sb.AppendLine();
             sb.AppendLine("{");
-            if (!String.IsNullOrEmpty(description))
-            {
-                sb.AppendLine("\t/// <summary>");
-                sb.AppendFormat("\t/// {0}", description);
-                sb.AppendLine();
-                sb.AppendLine("\t/// </summary>");
-            }
+            WriteSummary(sb, description);
             sb.AppendFormat("\t[{0}({1}.{2}.{3})]", EventAttribute, ProtocolNameClass, domainDirectoryInfo.Name, ToCamelCase(eventName));
             sb.AppendLine();
             WriteSupportedBy(sb, supportedBy);
@@ -258,28 +252,25 @@ namespace MasterDevs.ChromeDevTools.ProtocolGenerator
             var parameters = command.Parameters;
             var returnObject = command.Returns;
             _DomainCommands[domainDirectoryInfo.Name].Add(commandName);
-            WriteCommand(domainDirectoryInfo, ns, commandName, description, parameters, command.SupportedBy);
-            WriteCommandResponse(domainDirectoryInfo, ns, commandName, description, returnObject, command.SupportedBy);
+            WriteCommand(domainDirectoryInfo, ns, commandName, description, command.IsDeprecated, parameters, command.SupportedBy);
+            WriteCommandResponse(domainDirectoryInfo, ns, commandName, description, command.IsDeprecated, returnObject, command.SupportedBy);
         }
 
-        private static void WriteCommandResponse(DirectoryInfo domainDirectoryInfo, string ns, string commandName, string description, IEnumerable<Property> returnObject, IEnumerable<string> supportedBy)
+        private static void WriteCommandResponse(DirectoryInfo domainDirectoryInfo, string ns, string commandName, string description, bool isDeprecated, IEnumerable<Property> returnObject, IEnumerable<string> supportedBy)
         {
             var className = ToCamelCase(commandName) + CommandResponseSubclass;
             var sb = new StringBuilder();
             sb.AppendLine("using MasterDevs.ChromeDevTools;");
             sb.AppendLine("using Newtonsoft.Json;");
+            sb.AppendLine("using System;");
             sb.AppendLine("using System.Collections.Generic;");
             sb.AppendLine();
             sb.AppendFormat("namespace {0}.{1}.{2}", RootNamespace, ns, domainDirectoryInfo.Name);
             sb.AppendLine();
             sb.AppendLine("{");
-            if (!String.IsNullOrEmpty(description))
-            {
-                sb.AppendLine("\t/// <summary>");
-                sb.AppendFormat("\t/// {0}", description);
-                sb.AppendLine();
-                sb.AppendLine("\t/// </summary>");
-            }
+            WriteSummary(sb, description);
+            if (isDeprecated)
+                WriteObsoleteAttribute(sb, description);
             sb.AppendFormat("\t[{0}({1}.{2}.{3})]", CommandResponseAttribute, ProtocolNameClass, domainDirectoryInfo.Name, ToCamelCase(commandName));
             sb.AppendLine();
             WriteSupportedBy(sb, supportedBy);
@@ -295,26 +286,22 @@ namespace MasterDevs.ChromeDevTools.ProtocolGenerator
             WriteToFile(domainDirectoryInfo, className, sb.ToString());
         }
 
-        private static void WriteCommand(DirectoryInfo domainDirectoryInfo, string ns, string commandName, string description, IEnumerable<Property> parameters, IEnumerable<string> supportedBy)
+        private static void WriteCommand(DirectoryInfo domainDirectoryInfo, string ns, string commandName, string description, bool isDeprecated, IEnumerable<Property> parameters, IEnumerable<string> supportedBy)
         {
             var className = ToCamelCase(commandName) + CommandSubclass;
             var responseClassName = ToCamelCase(commandName) + CommandResponseSubclass;
             var sb = new StringBuilder();
-            sb.AppendFormat("using MasterDevs.ChromeDevTools;");
-            sb.AppendLine();
+            sb.AppendLine("using MasterDevs.ChromeDevTools;");
             sb.AppendLine("using Newtonsoft.Json;");
+            sb.AppendLine("using System;");
             sb.AppendLine("using System.Collections.Generic;");
             sb.AppendLine();
             sb.AppendFormat("namespace {0}.{1}.{2}", RootNamespace, ns, domainDirectoryInfo.Name);
             sb.AppendLine();
             sb.AppendLine("{");
-            if (!String.IsNullOrEmpty(description))
-            {
-                sb.AppendLine("\t/// <summary>");
-                sb.AppendFormat("\t/// {0}", description);
-                sb.AppendLine();
-                sb.AppendLine("\t/// </summary>");
-            }
+            WriteSummary(sb, description);
+            if (isDeprecated)
+                WriteObsoleteAttribute(sb, description);
             sb.AppendFormat("\t[{0}({1}.{2}.{3})]", CommandAttribute, ProtocolNameClass, domainDirectoryInfo.Name, ToCamelCase(commandName));
             sb.AppendLine();
             WriteSupportedBy(sb, supportedBy);
@@ -330,6 +317,28 @@ namespace MasterDevs.ChromeDevTools.ProtocolGenerator
             WriteToFile(domainDirectoryInfo, className, sb.ToString());
         }
 
+        private static void WriteSummary(StringBuilder sb, string description)
+        {
+            if (!String.IsNullOrEmpty(description))
+            {
+                sb.AppendLine("\t/// <summary>");
+                sb.AppendFormat("\t/// {0}", description);
+                sb.AppendLine();
+                sb.AppendLine("\t/// </summary>");
+            }
+        }
+
+        private static void WriteObsoleteAttribute(StringBuilder sb, string description)
+        {
+            if (String.IsNullOrEmpty(description) || !description.StartsWith("Deprecated"))
+                sb.AppendLine("\t[Obsolete]");
+            else
+            {
+                sb.AppendFormat("\t[Obsolete(\"{0}\")]", description);
+                sb.AppendLine();
+            }
+        }
+
         private static void WriteType(DirectoryInfo domainDirectoryInfo, string ns, Type type)
         {
             if (null == type) return;
@@ -357,10 +366,7 @@ namespace MasterDevs.ChromeDevTools.ProtocolGenerator
             sb.AppendFormat("namespace {0}.{1}.{2}", RootNamespace, ns, domainDirectoryInfo.Name);
             sb.AppendLine();
             sb.AppendLine("{");
-            sb.AppendLine("\t/// <summary>");
-            sb.AppendFormat("\t/// {0}", type.Description);
-            sb.AppendLine();
-            sb.AppendLine("\t/// </summary>");
+            WriteSummary(sb, type.Description);
             WriteSupportedBy(sb, type);
             sb.AppendFormat("\tpublic class {0}", className);
             sb.AppendLine();
diff --git a/source/ProtocolGenerator/ProtocolItem.cs b/source/ProtocolGenerator/ProtocolItem.cs
index 3da9daf..b2f7286 100644
--- a/source/ProtocolGenerator/ProtocolItem.cs
+++ b/source/ProtocolGenerator/ProtocolItem.cs
@@ -1,5 +1,4 @@
 using System;
-using System.Collections.Generic;
 using System.Collections.ObjectModel;
 
 namespace MasterDevs.ChromeDevTools.ProtocolGenerator
diff --git a/source/ProtocolGenerator/browser_protocol.json b/source/ProtocolGenerator/browser_protocol.json
index a8edd99..8662f67 100644
--- a/source/ProtocolGenerator/browser_protocol.json
+++ b/source/ProtocolGenerator/browser_protocol.json
@@ -48,6 +48,9 @@
                     { "name": "jsEventListeners", "type": "integer" }
                 ]
             },
+            {
+                "name": "prepareForLeakDetection"
+            },
             {
                 "name": "setPressureNotificationsSuppressed",
                 "description": "Enable/disable suppressing memory pressure notifications in all processes.",
@@ -64,10 +67,52 @@
             }
         ]
     },
+    {
+        "domain": "Performance",
+        "experimental": true,
+        "types": [
+            {
+                "id": "Metric",
+                "type": "object",
+                "properties": [
+                    { "name": "name", "type": "string", "description": "Metric name." },
+                    { "name": "value", "type": "number", "description": "Metric value." }
+                ],
+                "description": "Run-time execution metric."
+            }
+        ],
+        "commands": [
+            {
+                "name": "enable",
+                "description": "Enable collecting and reporting metrics."
+            },
+            {
+                "name": "disable",
+                "description": "Disable collecting and reporting metrics."
+            },
+            {
+                "name": "getMetrics",
+                "returns": [
+                    { "name": "metrics", "type": "array", "items": { "$ref": "Metric" }, "description": "Current values for run-time metrics." }
+                ],
+                "description": "Retrieve current values of run-time metrics."
+            }
+        ],
+        "events": [
+            {
+                "name": "metrics",
+                "description": "Current values of the metrics.",
+                "parameters": [
+                    { "name": "metrics", "type": "array", "items": { "$ref": "Metric" }, "description": "Current values of the metrics." },
+                    { "name": "title", "type": "string", "description": "Timestamp title." }
+                ]
+            }
+        ]
+    },
     {
         "domain": "Page",
         "description": "Actions and events related to the inspected page belong to the page domain.",
-        "dependencies": ["Debugger", "DOM"],
+        "dependencies": ["Debugger", "DOM", "Network"],
         "types": [
             {
                 "id": "ResourceType",
@@ -91,8 +136,9 @@
                     { "name": "name", "type": "string", "optional": true, "description": "Frame's name as specified in the tag." },
                     { "name": "url", "type": "string", "description": "Frame document's URL." },
                     { "name": "securityOrigin", "type": "string", "description": "Frame document's security origin." },
-                    { "name": "mimeType", "type": "string", "description": "Frame document's mimeType as determined by the browser." }
-                ]
+                    { "name": "mimeType", "type": "string", "description": "Frame document's mimeType as determined by the browser." },
+                    { "name": "unreachableUrl", "type": "string", "optional": true, "experimental": true, "description": "If the frame failed to load, this contains the URL that could not be loaded." }
+               ]
             },
             {
                 "id": "FrameResource",
@@ -102,7 +148,7 @@
                     { "name": "url", "type": "string", "description": "Resource URL." },
                     { "name": "type", "$ref": "ResourceType", "description": "Type of this resource." },
                     { "name": "mimeType", "type": "string", "description": "Resource mimeType as determined by the browser." },
-                    { "name": "lastModified", "$ref": "Network.Timestamp", "description": "last-modified timestamp as reported by server.", "optional": true },
+                    { "name": "lastModified", "$ref": "Network.TimeSinceEpoch", "description": "last-modified timestamp as reported by server.", "optional": true },
                     { "name": "contentSize", "type": "number", "description": "Resource content size.", "optional": true },
                     { "name": "failed", "type": "boolean", "optional": true, "description": "True if the resource failed to load." },
                     { "name": "canceled", "type": "boolean", "optional": true, "description": "True if the resource was canceled during loading." }
@@ -157,7 +203,7 @@
                     { "name": "deviceHeight", "type": "number", "experimental": true, "description": "Device screen height in DIP." },
                     { "name": "scrollOffsetX", "type": "number", "experimental": true, "description": "Position of horizontal scroll in CSS pixels." },
                     { "name": "scrollOffsetY", "type": "number", "experimental": true, "description": "Position of vertical scroll in CSS pixels." },
-                    { "name": "timestamp", "type": "number", "optional": true, "experimental": true, "description": "Frame swap timestamp." }
+                    { "name": "timestamp", "$ref": "Network.TimeSinceEpoch", "optional": true, "experimental": true, "description": "Frame swap timestamp." }
                 ],
                 "experimental": true
             },
@@ -213,6 +259,19 @@
                     { "name": "clientHeight", "type": "number", "description": "Height (CSS pixels), excludes scrollbar if present." },
                     { "name": "scale", "type": "number", "description": "Scale relative to the ideal viewport (size at width=device-width)." }
                 ]
+            },
+            {
+                "id": "Viewport",
+                "type": "object",
+                "description": "Viewport for capturing screenshot.",
+                "experimental": true,
+                "properties": [
+                    { "name": "x", "type": "number", "description": "X offset in CSS pixels." },
+                    { "name": "y", "type": "number", "description": "Y offset in CSS pixels" },
+                    { "name": "width", "type": "number", "description": "Rectangle width in CSS pixels" },
+                    { "name": "height", "type": "number", "description": "Rectangle height in CSS pixels" },
+                    { "name": "scale", "type": "number", "description": "Page scale factor." }
+                ]
             }
         ],
         "commands": [
@@ -232,6 +291,8 @@
                 "returns": [
                     { "name": "identifier", "$ref": "ScriptIdentifier", "description": "Identifier of the added script." }
                 ],
+                "deprecated": true,
+                "description": "Deprecated, please use addScriptToEvaluateOnNewDocument instead.",
                 "experimental": true
             },
             {
@@ -239,6 +300,27 @@
                 "parameters": [
                     { "name": "identifier", "$ref": "ScriptIdentifier" }
                 ],
+                "deprecated": true,
+                "description": "Deprecated, please use removeScriptToEvaluateOnNewDocument instead.",
+                "experimental": true
+            },
+            {
+                "name": "addScriptToEvaluateOnNewDocument",
+                "parameters": [
+                    { "name": "source", "type": "string" }
+                ],
+                "returns": [
+                    { "name": "identifier", "$ref": "ScriptIdentifier", "description": "Identifier of the added script." }
+                ],
+                "description": "Evaluates given script in every frame upon creation (before loading frame's scripts).",
+                "experimental": true
+            },
+            {
+                "name": "removeScriptToEvaluateOnNewDocument",
+                "parameters": [
+                    { "name": "identifier", "$ref": "ScriptIdentifier" }
+                ],
+                "description": "Removes given script from the list.",
                 "experimental": true
             },
             {
@@ -257,6 +339,14 @@
                 ],
                 "description": "Reloads given page optionally ignoring the cache."
             },
+	    {
+                "name": "setAdBlockingEnabled",
+                "description": "Enable Chrome's experimental ad filter on all sites.",
+                "parameters": [
+                    { "name": "enabled", "type": "boolean", "description": "Whether to block ads." }
+                ],
+		"experimental": true
+	    },
             {
                 "name": "navigate",
                 "parameters": [
@@ -363,14 +453,12 @@
                     { "name": "height", "type": "integer", "description": "Overriding height value in pixels (minimum 0, maximum 10000000). 0 disables the override." },
                     { "name": "deviceScaleFactor", "type": "number", "description": "Overriding device scale factor value. 0 disables the override." },
                     { "name": "mobile", "type": "boolean", "description": "Whether to emulate mobile device. This includes viewport meta tag, overlay scrollbars, text autosizing and more." },
-                    { "name": "fitWindow", "type": "boolean", "description": "Whether a view that exceeds the available browser window area should be scaled down to fit." },
                     { "name": "scale", "type": "number", "optional": true, "description": "Scale to apply to resulting view image. Ignored in |fitWindow| mode." },
-                    { "name": "offsetX", "type": "number", "optional": true, "description": "X offset to shift resulting view image by. Ignored in |fitWindow| mode." },
-                    { "name": "offsetY", "type": "number", "optional": true, "description": "Y offset to shift resulting view image by. Ignored in |fitWindow| mode." },
                     { "name": "screenWidth", "type": "integer", "optional": true, "description": "Overriding screen width value in pixels (minimum 0, maximum 10000000). Only used for |mobile==true|." },
                     { "name": "screenHeight", "type": "integer", "optional": true, "description": "Overriding screen height value in pixels (minimum 0, maximum 10000000). Only used for |mobile==true|." },
                     { "name": "positionX", "type": "integer", "optional": true, "description": "Overriding view X position on screen in pixels (minimum 0, maximum 10000000). Only used for |mobile==true|." },
                     { "name": "positionY", "type": "integer", "optional": true, "description": "Overriding view Y position on screen in pixels (minimum 0, maximum 10000000). Only used for |mobile==true|." },
+                    { "name": "dontSetVisibleSize", "type": "boolean", "optional": true, "description": "Do not set visible view size, rely upon explicit setVisibleSize call." },
                     { "name": "screenOrientation", "$ref": "Emulation.ScreenOrientation", "optional": true, "description": "Screen orientation override." }
                 ],
                 "redirect": "Emulation",
@@ -430,6 +518,7 @@
                 "parameters": [
                     { "name": "format", "type": "string", "optional": true, "enum": ["jpeg", "png"], "description": "Image compression format (defaults to png)." },
                     { "name": "quality", "type": "integer", "optional": true, "description": "Compression quality from range [0..100] (jpeg only)." },
+                    { "name": "clip", "$ref": "Viewport", "optional": true, "description": "Capture the screenshot of a given region only.", "experimental": true },
                     { "name": "fromSurface", "type": "boolean", "optional": true, "description": "Capture the screenshot from the surface, rather than the view. Defaults to true.", "experimental": true }
                 ],
                 "returns": [
@@ -451,7 +540,8 @@
                     {"name": "marginBottom", "type": "number", "optional": true, "description": "Bottom margin in inches. Defaults to 1cm (~0.4 inches)."},
                     {"name": "marginLeft", "type": "number", "optional": true, "description": "Left margin in inches. Defaults to 1cm (~0.4 inches)."},
                     {"name": "marginRight", "type": "number", "optional": true, "description": "Right margin in inches. Defaults to 1cm (~0.4 inches)."},
-                    {"name": "pageRanges", "type": "string", "optional": true, "description": "Paper ranges to print, e.g., '1-5, 8, 11-13'. Defaults to the empty string, which means print all pages."}
+                    {"name": "pageRanges", "type": "string", "optional": true, "description": "Paper ranges to print, e.g., '1-5, 8, 11-13'. Defaults to the empty string, which means print all pages."},
+                    {"name": "ignoreInvalidPageRanges", "type": "boolean", "optional": true, "description": "Whether to silently ignore invalid but successfully parsed page ranges, such as '3-2'. Defaults to false."}
                 ],
                 "returns": [
                     { "name": "data", "type": "string", "description": "Base64-encoded pdf data." }
@@ -504,23 +594,6 @@
                 "name": "requestAppBanner",
                 "experimental": true
             },
-            {
-                "name": "setControlNavigations",
-                "parameters": [
-                    { "name": "enabled", "type": "boolean" }
-                ],
-                "description": "Toggles navigation throttling which allows programatic control over navigation and redirect response.",
-                "experimental": true
-            },
-            {
-                "name": "processNavigation",
-                "parameters": [
-                    { "name": "response", "$ref": "NavigationResponse" },
-                    { "name": "navigationId", "type": "integer" }
-                ],
-                "description": "Should be sent in response to a navigationRequested or a redirectRequested event, telling the browser how to handle the navigation.",
-                "experimental": true
-            },
             {
                 "name": "getLayoutMetrics",
                 "description": "Returns metrics relating to the layouting of the page, such as viewport bounds/scale.",
@@ -539,6 +612,22 @@
                     { "name": "frameId", "$ref": "FrameId", "description": "Id of the frame in which the isolated world should be created." },
                     { "name": "worldName", "type": "string", "optional": true, "description": "An optional name which is reported in the Execution Context." },
                     { "name": "grantUniveralAccess", "type": "boolean", "optional": true, "description": "Whether or not universal access should be granted to the isolated world. This is a powerful option, use with caution." }
+                ],
+                "returns": [
+                    {  "name": "executionContextId", "$ref": "Runtime.ExecutionContextId", "description": "Execution context of the isolated world." }
+                ]
+            },
+            {
+                "name": "bringToFront",
+                "description": "Brings page to front (activates tab)."
+            },
+            {
+                "name": "setDownloadBehavior",
+                "description": "Set the behavior when downloading a file.",
+                "experimental": true,
+                "parameters": [
+                    { "name": "behavior", "type": "string", "enum": ["deny", "allow", "default"], "description": "Whether to allow all or deny all download requests, or use default Chrome behavior if available (otherwise deny)." },
+                    { "name": "downloadPath", "type": "string", "optional": true, "description": "The default path to save downloaded files to. This is requred if behavior is set to 'allow'" }
                 ]
             }
         ],
@@ -546,15 +635,23 @@
             {
                 "name": "domContentEventFired",
                 "parameters": [
-                    { "name": "timestamp", "type": "number" }
+                    { "name": "timestamp", "$ref": "Network.MonotonicTime" }
                 ]
             },
             {
                 "name": "loadEventFired",
                 "parameters": [
-                    { "name": "timestamp", "type": "number" }
+                    { "name": "timestamp", "$ref": "Network.MonotonicTime" }
                 ]
             },
+            {
+                "name": "lifecycleEvent",
+                "parameters": [
+                    { "name": "name", "type": "string" },
+                    { "name": "timestamp", "$ref": "Network.MonotonicTime" }
+                ],
+                "description": "Fired for top level page lifecycle events such as navigation, load, paint, etc."
+            },
             {
                 "name": "frameAttached",
                 "description": "Fired when frame has been attached to its parent.",
@@ -599,7 +696,9 @@
                 "description": "Fired when frame schedules a potential navigation.",
                 "parameters": [
                     { "name": "frameId", "$ref": "FrameId", "description": "Id of the frame that has scheduled a navigation." },
-                    { "name": "delay", "type": "number", "description": "Delay (in seconds) until the navigation is scheduled to begin. The navigation is not guaranteed to start." }
+                    { "name": "delay", "type": "number", "description": "Delay (in seconds) until the navigation is scheduled to begin. The navigation is not guaranteed to start." },
+                    { "name": "reason", "type": "string", "experimental": true, "enum": ["formSubmission", "httpHeaderRefresh", "scriptInitiated", "metaTagRefresh", "pageBlockInterstitial", "reload"], "description": "The reason for the navigation." },
+                    { "name": "url", "type": "string", "experimental": true, "description": "The destination URL for the scheduled navigation." }
                 ],
                 "experimental": true
             },
@@ -619,15 +718,18 @@
                 "name": "javascriptDialogOpening",
                 "description": "Fired when a JavaScript initiated dialog (alert, confirm, prompt, or onbeforeunload) is about to open.",
                 "parameters": [
+                    { "name": "url", "type": "string", "description": "Frame url." },
                     { "name": "message", "type": "string", "description": "Message that will be displayed by the dialog." },
-                    { "name": "type", "$ref": "DialogType", "description": "Dialog type." }
+                    { "name": "type", "$ref": "DialogType", "description": "Dialog type." },
+                    { "name": "defaultPrompt", "optional": true, "type": "string", "description": "Default dialog prompt." }
                 ]
             },
             {
                 "name": "javascriptDialogClosed",
                 "description": "Fired when a JavaScript initiated dialog (alert, confirm, prompt, or onbeforeunload) has been closed.",
                 "parameters": [
-                    { "name": "result", "type": "boolean", "description": "Whether dialog was confirmed." }
+                    { "name": "result", "type": "boolean", "description": "Whether dialog was confirmed." },
+                    { "name": "userInput", "type": "string", "description": "User input in case of prompt." }
                 ]
             },
             {
@@ -655,16 +757,6 @@
             {
                 "name": "interstitialHidden",
                 "description": "Fired when interstitial page was hidden"
-            },
-            {
-                "name": "navigationRequested",
-                "description": "Fired when a navigation is started if navigation throttles are enabled.  The navigation will be deferred until processNavigation is called.",
-                "parameters": [
-                    { "name": "isInMainFrame", "type": "boolean", "description": "Whether the navigation is taking place in the main frame or in a subframe." },
-                    { "name": "isRedirect", "type": "boolean", "description": "Whether the navigation has encountered a server redirect or not." },
-                    { "name": "navigationId", "type": "integer" },
-                    { "name": "url", "type": "string", "description": "URL of requested navigation." }
-                ]
             }
         ]
     },
@@ -689,7 +781,8 @@
                     { "name": "eventTargetColor", "$ref": "DOM.RGBA", "optional": true, "description": "The event target element highlight fill color (default: transparent)." },
                     { "name": "shapeColor", "$ref": "DOM.RGBA", "optional": true, "description": "The shape outside fill color (default: transparent)." },
                     { "name": "shapeMarginColor", "$ref": "DOM.RGBA", "optional": true, "description": "The shape margin fill color (default: transparent)." },
-                    { "name": "selectorList", "type": "string", "optional": true, "description": "Selectors to highlight relevant nodes."}
+                    { "name": "selectorList", "type": "string", "optional": true, "description": "Selectors to highlight relevant nodes."},
+                    { "name": "cssGridColor", "$ref": "DOM.RGBA", "optional": true, "description": "The grid layout color (default: transparent)." }
                 ],
                 "description": "Configuration data for the highlighting of page elements."
             },
@@ -836,6 +929,13 @@
                 "parameters": [
                     { "name": "backendNodeId", "$ref": "DOM.BackendNodeId", "description": "Id of the node to inspect." }
                 ]
+            },
+            {
+                "name": "screenshotRequested",
+                "description": "Fired when user asks to capture screenshot of some area on the page.",
+                "parameters": [
+                    { "name": "viewport", "$ref": "Page.Viewport", "description": "Viewport to capture, in CSS." }
+                ]
             }
         ]
     },
@@ -874,14 +974,12 @@
                     { "name": "height", "type": "integer", "description": "Overriding height value in pixels (minimum 0, maximum 10000000). 0 disables the override." },
                     { "name": "deviceScaleFactor", "type": "number", "description": "Overriding device scale factor value. 0 disables the override." },
                     { "name": "mobile", "type": "boolean", "description": "Whether to emulate mobile device. This includes viewport meta tag, overlay scrollbars, text autosizing and more." },
-                    { "name": "fitWindow", "type": "boolean", "description": "Whether a view that exceeds the available browser window area should be scaled down to fit." },
-                    { "name": "scale", "type": "number", "optional": true, "experimental": true, "description": "Scale to apply to resulting view image. Ignored in |fitWindow| mode." },
-                    { "name": "offsetX", "type": "number", "optional": true, "deprecated": true, "experimental": true, "description": "Not used." },
-                    { "name": "offsetY", "type": "number", "optional": true, "deprecated": true, "experimental": true, "description": "Not used." },
+                    { "name": "scale", "type": "number", "optional": true, "description": "Scale to apply to resulting view image. Ignored in |fitWindow| mode." },
                     { "name": "screenWidth", "type": "integer", "optional": true, "experimental": true, "description": "Overriding screen width value in pixels (minimum 0, maximum 10000000). Only used for |mobile==true|." },
                     { "name": "screenHeight", "type": "integer", "optional": true, "experimental": true, "description": "Overriding screen height value in pixels (minimum 0, maximum 10000000). Only used for |mobile==true|." },
                     { "name": "positionX", "type": "integer", "optional": true, "experimental": true, "description": "Overriding view X position on screen in pixels (minimum 0, maximum 10000000). Only used for |mobile==true|." },
                     { "name": "positionY", "type": "integer", "optional": true, "experimental": true, "description": "Overriding view Y position on screen in pixels (minimum 0, maximum 10000000). Only used for |mobile==true|." },
+                    { "name": "dontSetVisibleSize", "type": "boolean", "optional": true, "experimental": true, "description": "Do not set visible view size, rely upon explicit setVisibleSize call." },
                     { "name": "screenOrientation", "$ref": "ScreenOrientation", "optional": true, "description": "Screen orientation override." }
                 ]
             },
@@ -889,21 +987,6 @@
                 "name": "clearDeviceMetricsOverride",
                 "description": "Clears the overriden device metrics."
             },
-            {
-                "name": "forceViewport",
-                "description": "Overrides the visible area of the page. The change is hidden from the page, i.e. the observable scroll position and page scale does not change. In effect, the command moves the specified area of the page into the top-left corner of the frame.",
-                "experimental": true,
-                "parameters": [
-                    { "name": "x", "type": "number", "description": "X coordinate of top-left corner of the area (CSS pixels)." },
-                    { "name": "y", "type": "number", "description": "Y coordinate of top-left corner of the area (CSS pixels)." },
-                    { "name": "scale", "type": "number", "description": "Scale to apply to the area (relative to a page scale of 1.0)." }
-                ]
-            },
-            {
-                "name": "resetViewport",
-                "description": "Resets the visible area of the page to the original viewport, undoing any effects of the <code>forceViewport</code> command.",
-                "experimental": true
-            },
             {
                 "name": "resetPageScaleFactor",
                 "experimental": true,
@@ -921,6 +1004,7 @@
                 "name": "setVisibleSize",
                 "description": "Resizes the frame/viewport of the page. Note that this does not affect the frame's container (e.g. browser window). Can be used to produce screenshots of the specified size. Not supported on Android.",
                 "experimental": true,
+                "deprecated": true,
                 "parameters": [
                     { "name": "width", "type": "integer", "description": "Frame width (DIP)." },
                     { "name": "height", "type": "integer", "description": "Frame height (DIP)." }
@@ -953,9 +1037,17 @@
                 "name": "setTouchEmulationEnabled",
                 "parameters": [
                     { "name": "enabled", "type": "boolean", "description": "Whether the touch event emulation should be enabled." },
+                    { "name": "maxTouchPoints", "type": "integer", "optional": true, "description": "Maximum touch points supported. Defaults to one." }
+                ],
+                "description": "Enables touch on platforms which do not support them."
+            },
+            {
+                "name": "setEmitTouchEventsForMouse",
+                "parameters": [
+                    { "name": "enabled", "type": "boolean", "description": "Whether touch emulation based on mouse input should be enabled." },
                     { "name": "configuration", "type": "string", "enum": ["mobile", "desktop"], "optional": true, "description": "Touch/gesture events configuration. Default: current platform." }
                 ],
-                "description": "Toggles mouse event-based touch event emulation."
+                "experimental": true
             },
             {
                 "name": "setEmulatedMedia",
@@ -1002,7 +1094,15 @@
             {
                 "name": "virtualTimeBudgetExpired",
                 "experimental": true,
-                "description": "Notification sent after the virual time budget for the current VirtualTimePolicy has run out."
+                "description": "Notification sent after the virtual time budget for the current VirtualTimePolicy has run out."
+            },
+            {
+                "name": "virtualTimePaused",
+                "experimental": true,
+                "parameters": [
+                    { "name": "virtualTimeElapsed", "type": "integer", "description": "The amount of virtual time that has elapsed in milliseconds since virtual time was first enabled." }
+                ],
+                "description": "Notification sent after the virtual time has paused."
             }
         ]
     },
@@ -1016,10 +1116,16 @@
                 "type": "integer",
                 "description": "An internal certificate ID value."
             },
+            {
+                "id": "MixedContentType",
+                "type": "string",
+                "enum": ["blockable", "optionally-blockable", "none"],
+                "description": "A description of mixed content (HTTP resources on HTTPS pages), as defined by https://www.w3.org/TR/mixed-content/#categories"
+            },
             {
                 "id": "SecurityState",
                 "type": "string",
-                "enum": ["unknown", "neutral", "insecure", "warning", "secure", "info"],
+                "enum": ["unknown", "neutral", "insecure", "secure", "info"],
                 "description": "The security level of a page or resource."
             },
             {
@@ -1029,7 +1135,8 @@
                     { "name": "securityState", "$ref": "SecurityState", "description": "Security state representing the severity of the factor being explained." },
                     { "name": "summary", "type": "string", "description": "Short phrase describing the type of factor." },
                     { "name": "description", "type": "string", "description": "Full text explanation of the factor." },
-                    { "name": "hasCertificate", "type": "boolean", "description": "True if the page has a certificate." }
+                    { "name": "mixedContentType", "$ref": "MixedContentType", "description": "The type of mixed content described by the explanation." },
+                    { "name": "certificate", "type": "array", "items": { "type": "string" }, "description": "Page certificate." }
                 ],
                 "description": "An explanation of an factor contributing to the security state."
             },
@@ -1063,10 +1170,6 @@
                 "name": "disable",
                 "description": "Disables tracking security state changes."
             },
-            {
-                "name": "showCertificateViewer",
-                "description": "Displays native dialog with the certificate details."
-            },
             {
                 "name": "handleCertificateError",
                 "description": "Handles a certificate error that fired a certificateError event.",
@@ -1106,6 +1209,29 @@
             }
         ]
     },
+    {
+        "domain": "Audits",
+        "description": "Audits domain allows investigation of page violations and possible improvements.",
+        "dependencies": ["Network"],
+        "experimental": true,
+        "commands": [
+            {
+                "name": "getEncodedResponse",
+                "description": "Returns the response body and size if it were re-encoded with the specified settings. Only applies to images.",
+                "parameters": [
+                    { "name": "requestId", "$ref": "Network.RequestId", "description": "Identifier of the network request to get content for." },
+                    { "name": "encoding", "type": "string", "enum": ["webp", "jpeg", "png"], "description": "The encoding to use." },
+                    { "name": "quality", "type": "number", "optional": true, "description": "The quality of the encoding (0-1). (defaults to 1)" },
+                    { "name": "sizeOnly", "type": "boolean", "optional": true, "description": "Whether to only return the size information (defaults to false)." }
+                ],
+                "returns": [
+                    { "name": "body", "type": "string", "optional": true, "description": "The encoded body as a base64 string. Omitted if sizeOnly is true." },
+                    { "name": "originalSize", "type": "integer", "description": "Size before re-encoding." },
+                    { "name": "encodedSize", "type": "integer", "description": "Size after re-encoding." }
+                ]
+            }
+        ]
+    },
     {
         "domain": "Network",
         "description": "Network domain allows tracking network activities of the page. It exposes information about http, file, data and other requests and responses, their headers, bodies, timing, etc.",
@@ -1122,9 +1248,25 @@
                 "description": "Unique request identifier."
             },
             {
-                "id": "Timestamp",
+                "id": "InterceptionId",
+                "type": "string",
+                "description": "Unique intercepted request identifier."
+            },
+            {
+                "id": "ErrorReason",
+                "type": "string",
+                "enum": ["Failed", "Aborted", "TimedOut", "AccessDenied", "ConnectionClosed", "ConnectionReset", "ConnectionRefused", "ConnectionAborted", "ConnectionFailed", "NameNotResolved", "InternetDisconnected", "AddressUnreachable"],
+                "description": "Network level fetch failure reason."
+            },
+            {
+                "id": "TimeSinceEpoch",
                 "type": "number",
-                "description": "Number of seconds since epoch."
+                "description": "UTC time in seconds, counted from January 1, 1970."
+            },
+            {
+                "id": "MonotonicTime",
+                "type": "number",
+                "description": "Monotonically increasing time in seconds since an arbitrary point in the past."
             },
             {
                 "id": "Headers",
@@ -1181,9 +1323,9 @@
                     { "name": "method", "type": "string", "description": "HTTP request method." },
                     { "name": "headers", "$ref": "Headers", "description": "HTTP request headers." },
                     { "name": "postData", "type": "string", "optional": true, "description": "HTTP POST request data." },
-                    { "name": "mixedContentType", "optional": true, "type": "string", "enum": ["blockable", "optionally-blockable", "none"], "description": "The mixed content status of the request, as defined in http://www.w3.org/TR/mixed-content/" },
+                    { "name": "mixedContentType", "$ref": "Security.MixedContentType", "optional": true, "description": "The mixed content type of the request." },
                     { "name": "initialPriority", "$ref": "ResourcePriority", "description": "Priority of the resource request at the time request is sent."},
-                    { "name": "referrerPolicy", "type": "string", "enum": [ "unsafe-url", "no-referrer-when-downgrade", "no-referrer", "origin", "origin-when-cross-origin", "no-referrer-when-downgrade-origin-when-cross-origin" ], "description": "The referrer policy of the request, as defined in https://www.w3.org/TR/referrer-policy/" },
+                    { "name": "referrerPolicy", "type": "string", "enum": [ "unsafe-url", "no-referrer-when-downgrade", "no-referrer", "origin", "origin-when-cross-origin", "same-origin", "strict-origin", "strict-origin-when-cross-origin" ], "description": "The referrer policy of the request, as defined in https://www.w3.org/TR/referrer-policy/" },
                     { "name": "isLinkPreload", "type": "boolean", "optional": true, "description": "Whether is loaded via link preload." }
                 ]
             },
@@ -1196,7 +1338,7 @@
                     { "name": "origin", "type": "string", "description": "Origin." },
                     { "name": "logDescription", "type": "string", "description": "Log name / description." },
                     { "name": "logId", "type": "string", "description": "Log ID." },
-                    { "name": "timestamp", "$ref": "Timestamp", "description": "Issuance date." },
+                    { "name": "timestamp", "$ref": "TimeSinceEpoch", "description": "Issuance date." },
                     { "name": "hashAlgorithm", "type": "string", "description": "Hash algorithm." },
                     { "name": "signatureAlgorithm", "type": "string", "description": "Signature algorithm." },
                     { "name": "signatureData", "type": "string", "description": "Signature data." }
@@ -1216,8 +1358,8 @@
                     { "name": "subjectName", "type": "string", "description": "Certificate subject name." },
                     { "name": "sanList", "type": "array", "items": { "type": "string" }, "description": "Subject Alternative Name (SAN) DNS names and IP addresses." },
                     { "name": "issuer", "type": "string", "description": "Name of the issuing CA." },
-                    { "name": "validFrom", "$ref": "Timestamp", "description": "Certificate valid from date." },
-                    { "name": "validTo", "$ref": "Timestamp", "description": "Certificate valid to (expiration) date" },
+                    { "name": "validFrom", "$ref": "TimeSinceEpoch", "description": "Certificate valid from date." },
+                    { "name": "validTo", "$ref": "TimeSinceEpoch", "description": "Certificate valid to (expiration) date" },
                     { "name": "signedCertificateTimestampList", "type": "array", "items": { "$ref": "SignedCertificateTimestamp" }, "description": "List of signed certificate timestamps (SCTs)." }
                 ]
             },
@@ -1306,8 +1448,8 @@
                 "properties": [
                     { "name": "type", "type": "string", "enum": ["parser", "script", "preload", "other"], "description": "Type of this initiator." },
                     { "name": "stack", "$ref": "Runtime.StackTrace", "optional": true, "description": "Initiator JavaScript stack trace, set for Script only." },
-                    { "name": "url", "type": "string", "optional": true, "description": "Initiator URL, set for Parser type only." },
-                    { "name": "lineNumber", "type": "number", "optional": true, "description": "Initiator line number, set for Parser type only (0-based)." }
+                    { "name": "url", "type": "string", "optional": true, "description": "Initiator URL, set for Parser type or for Script type (when script is importing module)." },
+                    { "name": "lineNumber", "type": "number", "optional": true, "description": "Initiator line number, set for Parser type or for Script type (when script is importing module) (0-based)." }
                 ]
             },
             {
@@ -1327,6 +1469,46 @@
                     { "name": "sameSite", "$ref": "CookieSameSite", "optional": true, "description": "Cookie SameSite type." }
                 ],
                 "experimental": true
+            },
+            {
+                "id": "CookieParam",
+                "type": "object",
+                "description": "Cookie parameter object",
+                "properties": [
+                    { "name": "name", "type": "string", "description": "Cookie name." },
+                    { "name": "value", "type": "string", "description": "Cookie value." },
+                    { "name": "url", "type": "string", "optional": true, "description": "The request-URI to associate with the setting of the cookie. This value can affect the default domain and path values of the created cookie." },
+                    { "name": "domain", "type": "string", "optional": true, "description": "Cookie domain." },
+                    { "name": "path", "type": "string", "optional": true, "description": "Cookie path." },
+                    { "name": "secure", "type": "boolean", "optional": true, "description": "True if cookie is secure." },
+                    { "name": "httpOnly", "type": "boolean", "optional": true, "description": "True if cookie is http-only." },
+                    { "name": "sameSite", "$ref": "CookieSameSite", "optional": true, "description": "Cookie SameSite type." },
+                    { "name": "expires", "$ref": "TimeSinceEpoch", "optional": true, "description": "Cookie expiration date, session cookie if not set" }
+                ],
+                "experimental": true
+            },
+            {
+                "id": "AuthChallenge",
+                "type": "object",
+                "description": "Authorization challenge for HTTP status code 401 or 407.",
+                "properties": [
+                    { "name": "source", "type": "string", "optional": true, "enum": ["Server", "Proxy"], "description": "Source of the authentication challenge." },
+                    { "name": "origin", "type": "string", "description": "Origin of the challenger." },
+                    { "name": "scheme", "type": "string", "description": "The authentication scheme used, such as basic or digest" },
+                    { "name": "realm", "type": "string", "description": "The realm of the challenge. May be empty." }
+                ],
+                "experimental": true
+            },
+            {
+                "id": "AuthChallengeResponse",
+                "type": "object",
+                "description": "Response to an AuthChallenge.",
+                "properties": [
+                    { "name": "response", "type": "string", "enum": ["Default", "CancelAuth", "ProvideCredentials"], "description": "The decision on what to do in response to the authorization challenge.  Default means deferring to the default behavior of the net stack, which will likely either the Cancel authentication or display a popup dialog box." },
+                    { "name": "username", "type": "string", "optional": true, "description": "The username to provide, possibly empty. Should only be set if response is ProvideCredentials." },
+                    { "name": "password", "type": "string", "optional": true, "description": "The password to provide, possibly empty. Should only be set if response is ProvideCredentials." }
+                ],
+                "experimental": true
             }
         ],
         "commands": [
@@ -1425,26 +1607,28 @@
                 "experimental": true
             },
             {
-                "name": "deleteCookie",
+                "name": "deleteCookies",
                 "parameters": [
-                    { "name": "cookieName", "type": "string", "description": "Name of the cookie to remove." },
-                    { "name": "url", "type": "string", "description": "URL to match cooke domain and path." }
+                    { "name": "name", "type": "string", "description": "Name of the cookies to remove." },
+                    { "name": "url", "type": "string", "optional": true, "description": "If specified, deletes all the cookies with the given name where domain and path match provided URL." },
+                    { "name": "domain", "type": "string", "optional": true, "description": "If specified, deletes only cookies with the exact domain." },
+                    { "name": "path", "type": "string", "optional": true, "description": "If specified, deletes only cookies with the exact path." }
                 ],
-                "description": "Deletes browser cookie with given name, domain and path.",
+                "description": "Deletes browser cookies with matching name and url or domain/path pair.",
                 "experimental": true
             },
             {
                 "name": "setCookie",
                 "parameters": [
-                    { "name": "url", "type": "string", "description": "The request-URI to associate with the setting of the cookie. This value can affect the default domain and path values of the created cookie." },
-                    { "name": "name", "type": "string", "description": "The name of the cookie." },
-                    { "name": "value", "type": "string", "description": "The value of the cookie." },
-                    { "name": "domain", "type": "string", "optional": true, "description": "If omitted, the cookie becomes a host-only cookie." },
-                    { "name": "path", "type": "string", "optional": true, "description": "Defaults to the path portion of the url parameter." },
-                    { "name": "secure", "type": "boolean", "optional": true, "description": "Defaults ot false." },
-                    { "name": "httpOnly", "type": "boolean", "optional": true, "description": "Defaults to false." },
-                    { "name": "sameSite", "$ref": "CookieSameSite", "optional": true, "description": "Defaults to browser default behavior." },
-                    { "name": "expirationDate", "$ref": "Timestamp", "optional": true, "description": "If omitted, the cookie becomes a session cookie." }
+                    { "name": "name", "type": "string", "description": "Cookie name." },
+                    { "name": "value", "type": "string", "description": "Cookie value." },
+                    { "name": "url", "type": "string", "optional": true, "description": "The request-URI to associate with the setting of the cookie. This value can affect the default domain and path values of the created cookie." },
+                    { "name": "domain", "type": "string", "optional": true, "description": "Cookie domain." },
+                    { "name": "path", "type": "string", "optional": true, "description": "Cookie path." },
+                    { "name": "secure", "type": "boolean", "optional": true, "description": "True if cookie is secure." },
+                    { "name": "httpOnly", "type": "boolean", "optional": true, "description": "True if cookie is http-only." },
+                    { "name": "sameSite", "$ref": "CookieSameSite", "optional": true, "description": "Cookie SameSite type." },
+                    { "name": "expires", "$ref": "TimeSinceEpoch", "optional": true, "description": "Cookie expiration date, session cookie if not set" }
                 ],
                 "returns": [
                     { "name": "success", "type": "boolean", "description": "True if successfully set cookie." }
@@ -1452,6 +1636,14 @@
                 "description": "Sets a cookie with the given cookie data; may overwrite equivalent cookies if they exist.",
                 "experimental": true
             },
+            {
+                "name": "setCookies",
+                "parameters": [
+                    { "name": "cookies", "type": "array", "items": { "$ref": "CookieParam" }, "description": "Cookies to be set." }
+                ],
+                "description": "Sets given cookies.",
+                "experimental": true
+            },
             {
                 "name": "canEmulateNetworkConditions",
                 "description": "Tells whether emulation of network conditions is supported.",
@@ -1505,6 +1697,30 @@
                     { "name": "tableNames", "type": "array", "items": { "type": "string" } }
                 ],
                 "experimental": true
+            },
+            {
+                "name": "setRequestInterceptionEnabled",
+                "description": "Sets the requests to intercept that match a the provided patterns.",
+                "parameters": [
+                    { "name": "enabled", "type": "boolean", "description": "Whether requests should be intercepted. If patterns is not set, matches all and resets any previously set patterns. Other parameters are ignored if false." },
+                    { "name": "patterns", "type": "array", "optional": true, "items": { "type": "string" }, "description": "URLs matching any of these patterns will be forwarded and wait for the corresponding continueInterceptedRequest call. Wildcards ('*' -> zero or more, '?' -> exactly one) are allowed. Escape character is backslash. If omitted equivalent to ['*'] (intercept all)." }
+                ],
+                "experimental": true
+            },
+            {
+                "name": "continueInterceptedRequest",
+                "description": "Response to Network.requestIntercepted which either modifies the request to continue with any modifications, or blocks it, or completes it with the provided response bytes. If a network fetch occurs as a result which encounters a redirect an additional Network.requestIntercepted event will be sent with the same InterceptionId.",
+                "parameters": [
+                    { "name": "interceptionId", "$ref": "InterceptionId" },
+                    { "name": "errorReason", "$ref": "ErrorReason", "optional": true, "description": "If set this causes the request to fail with the given reason. Passing <code>Aborted</code> for requests marked with <code>isNavigationRequest</code> also cancels the navigation. Must not be set in response to an authChallenge." },
+                    { "name": "rawResponse", "type": "string", "optional": true, "description": "If set the requests completes using with the provided base64 encoded raw response, including HTTP status line and headers etc... Must not be set in response to an authChallenge." },
+                    { "name": "url", "type": "string", "optional": true, "description": "If set the request url will be modified in a way that's not observable by page. Must not be set in response to an authChallenge." },
+                    { "name": "method", "type": "string", "optional": true, "description": "If set this allows the request method to be overridden. Must not be set in response to an authChallenge."},
+                    { "name": "postData", "type": "string", "optional": true, "description": "If set this allows postData to be set. Must not be set in response to an authChallenge."},
+                    { "name": "headers", "$ref": "Headers", "optional": true, "description": "If set this allows the request headers to be changed. Must not be set in response to an authChallenge."},
+                    { "name": "authChallengeResponse", "$ref": "AuthChallengeResponse", "optional": true, "description": "Response to a requestIntercepted with an authChallenge. Must not be set otherwise." }
+                ],
+                "experimental": true
             }
         ],
         "events": [
@@ -1514,7 +1730,7 @@
                 "parameters": [
                     { "name": "requestId", "$ref": "RequestId", "description": "Request identifier." },
                     { "name": "newPriority", "$ref": "ResourcePriority", "description": "New priority" },
-                    { "name": "timestamp", "$ref": "Timestamp", "description": "Timestamp." }
+                    { "name": "timestamp", "$ref": "MonotonicTime", "description": "Timestamp." }
                 ],
                 "experimental": true
             },
@@ -1523,15 +1739,15 @@
                 "description": "Fired when page is about to send HTTP request.",
                 "parameters": [
                     { "name": "requestId", "$ref": "RequestId", "description": "Request identifier." },
-                    { "name": "frameId", "$ref": "Page.FrameId", "description": "Frame identifier.", "experimental": true },
-                    { "name": "loaderId", "$ref": "LoaderId", "description": "Loader identifier." },
+                    { "name": "loaderId", "$ref": "LoaderId", "description": "Loader identifier. Empty string if the request is fetched form worker." },
                     { "name": "documentURL", "type": "string", "description": "URL of the document this request is loaded for." },
                     { "name": "request", "$ref": "Request", "description": "Request data." },
-                    { "name": "timestamp", "$ref": "Timestamp", "description": "Timestamp." },
-                    { "name": "wallTime", "$ref": "Timestamp", "experimental": true, "description": "UTC Timestamp." },
+                    { "name": "timestamp", "$ref": "MonotonicTime", "description": "Timestamp." },
+                    { "name": "wallTime", "$ref": "TimeSinceEpoch", "experimental": true, "description": "Timestamp." },
                     { "name": "initiator", "$ref": "Initiator", "description": "Request initiator." },
                     { "name": "redirectResponse", "optional": true, "$ref": "Response", "description": "Redirect response data." },
-                    { "name": "type", "$ref": "Page.ResourceType", "optional": true, "experimental": true, "description": "Type of this resource." }
+                    { "name": "type", "$ref": "Page.ResourceType", "optional": true, "experimental": true, "description": "Type of this resource." },
+                    { "name": "frameId", "optional": true, "$ref": "Page.FrameId", "description": "Frame identifier.", "experimental": true }
                 ]
             },
             {
@@ -1546,11 +1762,11 @@
                 "description": "Fired when HTTP response is available.",
                 "parameters": [
                     { "name": "requestId", "$ref": "RequestId", "description": "Request identifier." },
-                    { "name": "frameId", "$ref": "Page.FrameId", "description": "Frame identifier.", "experimental": true },
-                    { "name": "loaderId", "$ref": "LoaderId", "description": "Loader identifier." },
-                    { "name": "timestamp", "$ref": "Timestamp", "description": "Timestamp." },
+                    { "name": "loaderId", "$ref": "LoaderId", "description": "Loader identifier. Empty string if the request is fetched form worker." },
+                    { "name": "timestamp", "$ref": "MonotonicTime", "description": "Timestamp." },
                     { "name": "type", "$ref": "Page.ResourceType", "description": "Resource type." },
-                    { "name": "response", "$ref": "Response", "description": "Response data." }
+                    { "name": "response", "$ref": "Response", "description": "Response data." },
+                    { "name": "frameId", "optional": true, "$ref": "Page.FrameId", "description": "Frame identifier.", "experimental": true }
                 ]
             },
             {
@@ -1558,7 +1774,7 @@
                 "description": "Fired when data chunk was received over the network.",
                 "parameters": [
                     { "name": "requestId", "$ref": "RequestId", "description": "Request identifier." },
-                    { "name": "timestamp", "$ref": "Timestamp", "description": "Timestamp." },
+                    { "name": "timestamp", "$ref": "MonotonicTime", "description": "Timestamp." },
                     { "name": "dataLength", "type": "integer", "description": "Data chunk length." },
                     { "name": "encodedDataLength", "type": "integer", "description": "Actual bytes received (might be less than dataLength for compressed encodings)." }
                 ]
@@ -1568,7 +1784,7 @@
                 "description": "Fired when HTTP request has finished loading.",
                 "parameters": [
                     { "name": "requestId", "$ref": "RequestId", "description": "Request identifier." },
-                    { "name": "timestamp", "$ref": "Timestamp", "description": "Timestamp." },
+                    { "name": "timestamp", "$ref": "MonotonicTime", "description": "Timestamp." },
                     { "name": "encodedDataLength", "type": "number", "description": "Total number of bytes received for this request." }
                 ]
             },
@@ -1577,7 +1793,7 @@
                 "description": "Fired when HTTP request has failed to load.",
                 "parameters": [
                     { "name": "requestId", "$ref": "RequestId", "description": "Request identifier." },
-                    { "name": "timestamp", "$ref": "Timestamp", "description": "Timestamp." },
+                    { "name": "timestamp", "$ref": "MonotonicTime", "description": "Timestamp." },
                     { "name": "type", "$ref": "Page.ResourceType", "description": "Resource type." },
                     { "name": "errorText", "type": "string", "description": "User friendly error message." },
                     { "name": "canceled", "type": "boolean", "optional": true, "description": "True if loading was canceled." },
@@ -1589,8 +1805,8 @@
                 "description": "Fired when WebSocket is about to initiate handshake.",
                 "parameters": [
                     { "name": "requestId", "$ref": "RequestId", "description": "Request identifier." },
-                    { "name": "timestamp", "$ref": "Timestamp", "description": "Timestamp." },
-                    { "name": "wallTime", "$ref": "Timestamp", "experimental": true, "description": "UTC Timestamp." },
+                    { "name": "timestamp", "$ref": "MonotonicTime", "description": "Timestamp." },
+                    { "name": "wallTime", "$ref": "TimeSinceEpoch", "experimental": true, "description": "UTC Timestamp." },
                     { "name": "request", "$ref": "WebSocketRequest", "description": "WebSocket request data." }
                 ],
                 "experimental": true
@@ -1600,7 +1816,7 @@
                 "description": "Fired when WebSocket handshake response becomes available.",
                 "parameters": [
                     { "name": "requestId", "$ref": "RequestId", "description": "Request identifier." },
-                    { "name": "timestamp", "$ref": "Timestamp", "description": "Timestamp." },
+                    { "name": "timestamp", "$ref": "MonotonicTime", "description": "Timestamp." },
                     { "name": "response", "$ref": "WebSocketResponse", "description": "WebSocket response data." }
                 ],
                 "experimental": true
@@ -1620,7 +1836,7 @@
                 "description": "Fired when WebSocket is closed.",
                 "parameters": [
                     { "name": "requestId", "$ref": "RequestId", "description": "Request identifier." },
-                    { "name": "timestamp", "$ref": "Timestamp", "description": "Timestamp." }
+                    { "name": "timestamp", "$ref": "MonotonicTime", "description": "Timestamp." }
                 ],
                 "experimental": true
             },
@@ -1629,7 +1845,7 @@
                 "description": "Fired when WebSocket frame is received.",
                 "parameters": [
                     { "name": "requestId", "$ref": "RequestId", "description": "Request identifier." },
-                    { "name": "timestamp", "$ref": "Timestamp", "description": "Timestamp." },
+                    { "name": "timestamp", "$ref": "MonotonicTime", "description": "Timestamp." },
                     { "name": "response", "$ref": "WebSocketFrame", "description": "WebSocket response data." }
                 ],
                 "experimental": true
@@ -1639,7 +1855,7 @@
                 "description": "Fired when WebSocket frame error occurs.",
                 "parameters": [
                     { "name": "requestId", "$ref": "RequestId", "description": "Request identifier." },
-                    { "name": "timestamp", "$ref": "Timestamp", "description": "Timestamp." },
+                    { "name": "timestamp", "$ref": "MonotonicTime", "description": "Timestamp." },
                     { "name": "errorMessage", "type": "string", "description": "WebSocket frame error message." }
                 ],
                 "experimental": true
@@ -1649,7 +1865,7 @@
                 "description": "Fired when WebSocket frame is sent.",
                 "parameters": [
                     { "name": "requestId", "$ref": "RequestId", "description": "Request identifier." },
-                    { "name": "timestamp", "$ref": "Timestamp", "description": "Timestamp." },
+                    { "name": "timestamp", "$ref": "MonotonicTime", "description": "Timestamp." },
                     { "name": "response", "$ref": "WebSocketFrame", "description": "WebSocket response data." }
                 ],
                 "experimental": true
@@ -1659,12 +1875,27 @@
                 "description": "Fired when EventSource message is received.",
                 "parameters": [
                     { "name": "requestId", "$ref": "RequestId", "description": "Request identifier." },
-                    { "name": "timestamp", "$ref": "Timestamp", "description": "Timestamp." },
+                    { "name": "timestamp", "$ref": "MonotonicTime", "description": "Timestamp." },
                     { "name": "eventName", "type": "string", "description": "Message type." },
                     { "name": "eventId", "type": "string", "description": "Message identifier." },
                     { "name": "data", "type": "string", "description": "Message content." }
                 ],
                 "experimental": true
+            },
+            {
+                "name": "requestIntercepted",
+                "description": "Details of an intercepted HTTP request, which must be either allowed, blocked, modified or mocked.",
+                "parameters": [
+                    { "name": "interceptionId", "$ref": "InterceptionId", "description": "Each request the page makes will have a unique id, however if any redirects are encountered while processing that fetch, they will be reported with the same id as the original fetch. Likewise if HTTP authentication is needed then the same fetch id will be used." },
+                    { "name": "request", "$ref": "Request" },
+                    { "name": "resourceType", "$ref": "Page.ResourceType", "description": "How the requested resource will be used." },
+                    { "name": "isNavigationRequest", "type": "boolean", "description": "Whether this is a navigation request, which can abort the navigation completely." },
+                    { "name": "redirectHeaders", "$ref": "Headers", "optional": true, "description": "HTTP response headers, only sent if a redirect was intercepted." },
+                    { "name": "redirectStatusCode", "type": "integer", "optional": true, "description": "HTTP response code, only sent if a redirect was intercepted." },
+                    { "name": "redirectUrl", "optional": true, "type": "string", "description": "Redirect location, only sent if a redirect was intercepted."},
+                    { "name": "authChallenge", "$ref": "AuthChallenge", "optional": true, "description": "Details of the Authorization Challenge encountered. If this is set then continueInterceptedRequest must contain an authChallengeResponse." }
+                ],
+                "experimental": true
             }
         ]
     },
@@ -1905,8 +2136,13 @@
                 "type": "object",
                 "description": "Data entry.",
                 "properties": [
-                    { "name": "request", "type": "string", "description": "Request url spec." },
-                    { "name": "response", "type": "string", "description": "Response stataus text." }
+                    { "name": "requestURL", "type": "string", "description": "Request URL." },
+                    { "name": "requestMethod", "type": "string", "description": "Request method." },
+                    { "name": "requestHeaders", "type": "array", "items": { "$ref": "Header" }, "description": "Request headers" },
+                    { "name": "responseTime", "type": "number", "description": "Number of seconds since epoch." },
+                    { "name": "responseStatus", "type": "integer", "description": "HTTP response status code." },
+                    { "name": "responseStatusText", "type": "string", "description": "HTTP response status text." },
+                    { "name": "responseHeaders", "type": "array", "items": { "$ref": "Header" }, "description": "Response headers" }
                 ]
             },
             {
@@ -1918,6 +2154,22 @@
                     { "name": "securityOrigin", "type": "string", "description": "Security origin of the cache." },
                     { "name": "cacheName", "type": "string", "description": "The name of the cache." }
                 ]
+            },
+            {
+                "id": "Header",
+                "type": "object",
+                "properties": [
+                    { "name": "name", "type": "string" },
+                    { "name": "value", "type": "string" }
+                ]
+            },
+            {
+                "id": "CachedResponse",
+                "type": "object",
+                "description": "Cached response",
+                "properties": [
+                    { "name": "body", "type": "string", "description": "Entry content, base64-encoded." }
+                ]
             }
         ],
         "commands": [
@@ -1958,6 +2210,17 @@
                     { "name": "request", "type": "string", "description": "URL spec of the request." }
                 ],
                 "description": "Deletes a cache entry."
+            },
+            {
+                "name": "requestCachedResponse",
+                "parameters": [
+                    { "name": "cacheId", "$ref": "CacheId", "description": "Id of cache that contains the enty." },
+                    { "name": "requestURL", "type": "string", "description": "URL spec of the request." }
+                ],
+                "returns": [
+                    { "name": "response", "$ref": "CachedResponse", "description": "Response read from the cache."}
+                ],
+                "description": "Fetches cache entry."
             }
         ]
     },
@@ -2421,7 +2684,9 @@
             {
                 "name": "getOuterHTML",
                 "parameters": [
-                    { "name": "nodeId", "$ref": "NodeId", "description": "Id of the node to get markup for." }
+                    { "name": "nodeId", "$ref": "NodeId", "optional": true, "description": "Identifier of the node." },
+                    { "name": "backendNodeId", "$ref": "BackendNodeId", "optional": true, "description": "Identifier of the backend node." },
+                    { "name": "objectId", "$ref": "Runtime.RemoteObjectId", "optional": true, "description": "JavaScript object id of the node wrapper." }
                 ],
                 "returns": [
                     { "name": "outerHTML", "type": "string", "description": "Outer HTML markup." }
@@ -2528,13 +2793,14 @@
             {
                 "name": "resolveNode",
                 "parameters": [
-                    { "name": "nodeId", "$ref": "NodeId", "description": "Id of the node to resolve." },
+                    { "name": "nodeId", "$ref": "NodeId", "optional": true, "description": "Id of the node to resolve." },
+                    { "name": "backendNodeId", "$ref": "DOM.BackendNodeId", "optional": true, "description": "Backend identifier of the node to resolve." },
                     { "name": "objectGroup", "type": "string", "optional": true, "description": "Symbolic group name that can be used to release multiple objects." }
                 ],
                 "returns": [
                     { "name": "object", "$ref": "Runtime.RemoteObject", "description": "JavaScript object wrapper for given node." }
                 ],
-                "description": "Resolves JavaScript node object for given node id."
+                "description": "Resolves the JavaScript node object for a given NodeId or BackendNodeId."
             },
             {
                 "name": "getAttributes",
@@ -2589,7 +2855,9 @@
             {
                 "name": "focus",
                 "parameters": [
-                    { "name": "nodeId", "$ref": "NodeId", "description": "Id of the node to focus." }
+                    { "name": "nodeId", "$ref": "NodeId", "optional": true, "description": "Identifier of the node." },
+                    { "name": "backendNodeId", "$ref": "BackendNodeId", "optional": true, "description": "Identifier of the backend node." },
+                    { "name": "objectId", "$ref": "Runtime.RemoteObjectId", "optional": true, "description": "JavaScript object id of the node wrapper." }
                 ],
                 "description": "Focuses the given element.",
                 "experimental": true
@@ -2597,8 +2865,10 @@
             {
                 "name": "setFileInputFiles",
                 "parameters": [
-                    { "name": "nodeId", "$ref": "NodeId", "description": "Id of the file input node to set files for." },
-                    { "name": "files", "type": "array", "items": { "type": "string" }, "description": "Array of file paths to set." }
+                    { "name": "files", "type": "array", "items": { "type": "string" }, "description": "Array of file paths to set." },
+                    { "name": "nodeId", "$ref": "NodeId", "optional": true, "description": "Identifier of the node." },
+                    { "name": "backendNodeId", "$ref": "BackendNodeId", "optional": true, "description": "Identifier of the backend node." },
+                    { "name": "objectId", "$ref": "Runtime.RemoteObjectId", "optional": true, "description": "JavaScript object id of the node wrapper." }
                 ],
                 "description": "Sets files for the given file input element.",
                 "experimental": true
@@ -2606,7 +2876,9 @@
             {
                 "name": "getBoxModel",
                 "parameters": [
-                    { "name": "nodeId", "$ref": "NodeId", "description": "Id of the node to get box model for." }
+                    { "name": "nodeId", "$ref": "NodeId", "optional": true, "description": "Identifier of the node." },
+                    { "name": "backendNodeId", "$ref": "BackendNodeId", "optional": true, "description": "Identifier of the backend node." },
+                    { "name": "objectId", "$ref": "Runtime.RemoteObjectId", "optional": true, "description": "JavaScript object id of the node wrapper." }
                 ],
                 "returns": [
                     { "name": "model", "$ref": "BoxModel", "description": "Box model for the node." }
@@ -2637,6 +2909,20 @@
                 ],
                 "description": "Returns the id of the nearest ancestor that is a relayout boundary.",
                 "experimental": true
+            },
+            {
+                "name": "describeNode",
+                "parameters": [
+                    { "name": "nodeId", "$ref": "NodeId", "optional": true, "description": "Identifier of the node." },
+                    { "name": "backendNodeId", "$ref": "BackendNodeId", "optional": true, "description": "Identifier of the backend node." },
+                    { "name": "objectId", "$ref": "Runtime.RemoteObjectId", "optional": true, "description": "JavaScript object id of the node wrapper." },
+                    { "name": "depth", "type": "integer", "optional": true, "description": "The maximum depth at which children should be retrieved, defaults to 1. Use -1 for the entire subtree or provide an integer larger than 0.", "experimental": true },
+                    { "name": "pierce", "type": "boolean", "optional": true, "description": "Whether or not iframes and shadow roots should be traversed when returning the subtree (default is false).", "experimental": true }
+                ],
+                "returns": [
+                    { "name": "node", "$ref": "Node", "description": "Node description." }
+                ],
+                "description": "Describes node given its id, does not require domain to be enabled. Does not start tracking any objects, can be used for automation."
             }
         ],
         "events": [
@@ -2760,7 +3046,7 @@
     {
         "domain": "CSS",
         "experimental": true,
-        "description": "This domain exposes CSS read/write operations. All CSS objects (stylesheets, rules, and styles) have an associated <code>id</code> used in subsequent operations on the related object. Each object type has a specific <code>id</code> structure, and those are not interchangeable between objects of different kinds. CSS objects can be loaded using the <code>get*ForNode()</code> calls (which accept a DOM node id). A client can also discover all the existing stylesheets with the <code>getAllStyleSheets()</code> method (or keeping track of the <code>styleSheetAdded</code>/<code>styleSheetRemoved</code> events) and subsequently load the required stylesheet contents using the <code>getStyleSheet[Text]()</code> methods.",
+        "description": "This domain exposes CSS read/write operations. All CSS objects (stylesheets, rules, and styles) have an associated <code>id</code> used in subsequent operations on the related object. Each object type has a specific <code>id</code> structure, and those are not interchangeable between objects of different kinds. CSS objects can be loaded using the <code>get*ForNode()</code> calls (which accept a DOM node id). A client can also keep track of stylesheets via the <code>styleSheetAdded</code>/<code>styleSheetRemoved</code> events and subsequently load the required stylesheet contents using the <code>getStyleSheet[Text]()</code> methods.",
         "dependencies": ["DOM"],
         "types": [
             {
@@ -3004,28 +3290,6 @@
                 ],
                 "description": "Details of post layout rendered text positions. The exact layout should not be regarded as stable and may change between versions.",
                 "experimental": true
-            },
-            {
-                "id": "LayoutTreeNode",
-                "type": "object",
-                "properties": [
-                    { "name": "nodeId", "$ref": "DOM.NodeId", "description": "The id of the related DOM node matching one from DOM.GetDocument." },
-                    { "name": "boundingBox", "$ref": "DOM.Rect", "description": "The absolute position bounding box." },
-                    { "name": "layoutText", "type": "string", "optional": true, "description": "Contents of the LayoutText if any" },
-                    { "name": "inlineTextNodes", "type": "array", "optional": true, "items": { "$ref": "InlineTextBox" }, "description": "The post layout inline text nodes, if any." },
-                    { "name": "styleIndex", "type": "integer", "optional": true, "description": "Index into the computedStyles array returned by getLayoutTreeAndStyles." }
-                ],
-                "description": "Details of an element in the DOM tree with a LayoutObject.",
-                "experimental": true
-            },
-            {
-                "id": "ComputedStyle",
-                "type": "object",
-                "properties": [
-                    { "name": "properties", "type": "array", "items": { "$ref": "CSSComputedStyleProperty" } }
-                ],
-                "description": "A subset of the full ComputedStyle as defined by the request whitelist.",
-                "experimental": true
             }
         ],
         "commands": [
@@ -3216,22 +3480,14 @@
                     { "name": "nodeId", "$ref": "DOM.NodeId", "description": "Id of the node to get background colors for." }
                 ],
                 "returns": [
-                    { "name": "backgroundColors", "type": "array", "items": { "type": "string" }, "description": "The range of background colors behind this element, if it contains any visible text. If no visible text is present, this will be undefined. In the case of a flat background color, this will consist of simply that color. In the case of a gradient, this will consist of each of the color stops. For anything more complicated, this will be an empty array. Images will be ignored (as if the image had failed to load).", "optional": true }
+                    { "name": "backgroundColors", "type": "array", "items": { "type": "string" }, "description": "The range of background colors behind this element, if it contains any visible text. If no visible text is present, this will be undefined. In the case of a flat background color, this will consist of simply that color. In the case of a gradient, this will consist of each of the color stops. For anything more complicated, this will be an empty array. Images will be ignored (as if the image had failed to load).", "optional": true },
+                    { "name": "computedFontSize", "type": "string", "description": "The computed font size for this node, as a CSS computed value string (e.g. '12px').", "optional": true },
+                    { "name": "computedFontWeight", "type": "string", "description": "The computed font weight for this node, as a CSS computed value string (e.g. 'normal' or '100').", "optional": true },
+
+                    { "name": "computedBodyFontSize", "type": "string", "description": "The computed font size for the document body, as a computed CSS value string (e.g. '16px').", "optional": true }
                 ],
                 "experimental": true
             },
-            {
-                "name": "getLayoutTreeAndStyles",
-                "parameters": [
-                    { "name": "computedStyleWhitelist", "type": "array", "items": { "type": "string" }, "description": "Whitelist of computed styles to return." }
-                ],
-                "returns": [
-                    { "name": "layoutTreeNodes", "type": "array", "items": { "$ref": "LayoutTreeNode" } },
-                    { "name": "computedStyles", "type": "array", "items": { "$ref": "ComputedStyle" } }
-                ],
-                "description": "For the main document and any content documents, return the LayoutTreeNodes and a whitelisted subset of the computed style. It only returns pushed nodes, on way to pull all nodes is to call DOM.getDocument with a depth of -1.",
-                "experimental": true
-            },
             {
                 "name": "startRuleUsageTracking",
                 "description": "Enables the selector recording.",
@@ -3286,6 +3542,88 @@
             }
         ]
     },
+    {
+        "domain": "DOMSnapshot",
+        "experimental": true,
+        "description": "This domain facilitates obtaining document snapshots with DOM, layout, and style information.",
+        "dependencies": ["CSS", "DOM", "Page"],
+        "types": [
+            {
+                "id": "DOMNode",
+                "type": "object",
+                "properties": [
+                    { "name": "nodeType", "type": "integer", "description": "<code>Node</code>'s nodeType." },
+                    { "name": "nodeName", "type": "string", "description": "<code>Node</code>'s nodeName." },
+                    { "name": "nodeValue", "type": "string", "description": "<code>Node</code>'s nodeValue." },
+                    { "name": "textValue", "type": "string", "optional": true, "description": "Only set for textarea elements, contains the text value." },
+                    { "name": "inputValue", "type": "string", "optional": true, "description": "Only set for input elements, contains the input's associated text value." },
+                    { "name": "inputChecked", "type": "boolean", "optional": true, "description": "Only set for radio and checkbox input elements, indicates if the element has been checked" },
+                    { "name": "optionSelected", "type": "boolean", "optional": true, "description": "Only set for option elements, indicates if the element has been selected" },
+                    { "name": "backendNodeId", "$ref": "DOM.BackendNodeId", "description": "<code>Node</code>'s id, corresponds to DOM.Node.backendNodeId." },
+                    { "name": "childNodeIndexes", "type": "array", "items": { "type": "integer" }, "optional": true, "description": "The indexes of the node's child nodes in the <code>domNodes</code> array returned by <code>getSnapshot</code>, if any." },
+                    { "name": "attributes", "type": "array", "items": { "$ref": "NameValue" }, "optional": true, "description": "Attributes of an <code>Element</code> node." },
+                    { "name": "pseudoElementIndexes", "type": "array", "items": { "type": "integer" }, "optional": true, "description": "Indexes of pseudo elements associated with this node in the <code>domNodes</code> array returned by <code>getSnapshot</code>, if any." },
+                    { "name": "layoutNodeIndex", "type": "integer", "optional": true, "description": "The index of the node's related layout tree node in the <code>layoutTreeNodes</code> array returned by <code>getSnapshot</code>, if any." },
+                    { "name": "documentURL", "type": "string", "optional": true, "description": "Document URL that <code>Document</code> or <code>FrameOwner</code> node points to." },
+                    { "name": "baseURL", "type": "string", "optional": true, "description": "Base URL that <code>Document</code> or <code>FrameOwner</code> node uses for URL completion." },
+                    { "name": "contentLanguage", "type": "string", "optional": true, "description": "Only set for documents, contains the document's content language." },
+                    { "name": "documentEncoding", "type": "string", "optional": true, "description": "Only set for documents, contains the document's character set encoding." },
+                    { "name": "publicId", "type": "string", "optional": true, "description": "<code>DocumentType</code> node's publicId." },
+                    { "name": "systemId", "type": "string", "optional": true, "description": "<code>DocumentType</code> node's systemId." },
+                    { "name": "frameId", "$ref": "Page.FrameId", "optional": true, "description": "Frame ID for frame owner elements and also for the document node." },
+                    { "name": "contentDocumentIndex", "type": "integer", "optional": true, "description": "The index of a frame owner element's content document in the <code>domNodes</code> array returned by <code>getSnapshot</code>, if any." },
+                    { "name": "importedDocumentIndex", "type": "integer", "optional": true, "description": "Index of the imported document's node of a link element in the <code>domNodes</code> array returned by <code>getSnapshot</code>, if any." },
+                    { "name": "templateContentIndex", "type": "integer", "optional": true, "description": "Index of the content node of a template element in the <code>domNodes</code> array returned by <code>getSnapshot</code>." },
+                    { "name": "pseudoType", "$ref": "DOM.PseudoType", "optional": true, "description": "Type of a pseudo element node." },
+                    { "name": "isClickable", "type": "boolean", "optional": true, "description": "Whether this DOM node responds to mouse clicks. This includes nodes that have had click event listeners attached via JavaScript as well as anchor tags that naturally navigate when clicked." }
+                ],
+                "description": "A Node in the DOM tree."
+            },
+            {
+                "id": "LayoutTreeNode",
+                "type": "object",
+                "properties": [
+                    { "name": "domNodeIndex", "type": "integer", "description": "The index of the related DOM node in the <code>domNodes</code> array returned by <code>getSnapshot</code>." },
+                    { "name": "boundingBox", "$ref": "DOM.Rect", "description": "The absolute position bounding box." },
+                    { "name": "layoutText", "type": "string", "optional": true, "description": "Contents of the LayoutText, if any." },
+                    { "name": "inlineTextNodes", "type": "array", "optional": true, "items": { "$ref": "CSS.InlineTextBox" }, "description": "The post-layout inline text nodes, if any." },
+                    { "name": "styleIndex", "type": "integer", "optional": true, "description": "Index into the <code>computedStyles</code> array returned by <code>getSnapshot</code>." }
+                ],
+                "description": "Details of an element in the DOM tree with a LayoutObject."
+            },
+            {
+                "id": "ComputedStyle",
+                "type": "object",
+                "properties": [
+                    { "name": "properties", "type": "array", "items": { "$ref": "NameValue" }, "description": "Name/value pairs of computed style properties." }
+                ],
+                "description": "A subset of the full ComputedStyle as defined by the request whitelist."
+            },
+            {
+                "id": "NameValue",
+                "type": "object",
+                "properties": [
+                    { "name": "name", "type": "string", "description": "Attribute/property name." },
+                    { "name": "value", "type": "string", "description": "Attribute/property value." }
+                ],
+                "description": "A name/value pair."
+            }
+        ],
+        "commands": [
+            {
+                "name": "getSnapshot",
+                "parameters": [
+                    { "name": "computedStyleWhitelist", "type": "array", "items": { "type": "string" }, "description": "Whitelist of computed styles to return." }
+                ],
+                "returns": [
+                    { "name": "domNodes", "type": "array", "items": { "$ref": "DOMNode" }, "description": "The nodes in the DOM tree. The DOMNode at index 0 corresponds to the root document." },
+                    { "name": "layoutTreeNodes", "type": "array", "items": { "$ref": "LayoutTreeNode" }, "description": "The nodes in the layout tree." },
+                    { "name": "computedStyles", "type": "array", "items": { "$ref": "ComputedStyle" }, "description": "Whitelisted ComputedStyle properties for each node in the layout tree." }
+                ],
+                "description": "Returns a document snapshot, including the full DOM tree of the root node (including iframes, template contents, and imported documents) in a flattened array, as well as layout and white-listed computed style information for the nodes. Shadow DOM in the returned DOM tree is flattened. "
+            }
+        ]
+    },
     {
         "domain": "IO",
         "description": "Input/Output operations for streams produced by DevTools.",
@@ -3293,7 +3631,8 @@
         "types": [
             {
                 "id": "StreamHandle",
-                "type": "string"
+                "type": "string",
+                "description": "This is either obtained from another method or specifed as <code>blob:&lt;uuid&gt;</code> where <code>&lt;uuid&gt</code> is an UUID of a Blob."
             }
         ],
         "commands": [
@@ -3306,6 +3645,7 @@
                     { "name": "size", "type": "integer", "optional": true,  "description": "Maximum number of bytes to read (left upon the agent discretion if not specified)." }
                 ],
                 "returns": [
+                    { "name": "base64Encoded", "type": "boolean", "optional": true, "description": "Set if the data is base64-encoded"},
                     { "name": "data", "type": "string", "description": "Data that were read." },
                     { "name": "eof", "type": "boolean", "description": "Set if the end-of-file condition occured while reading." }
                 ]
@@ -3316,6 +3656,16 @@
                 "parameters": [
                     { "name": "handle", "$ref": "StreamHandle", "description": "Handle of the stream to close." }
                 ]
+            },
+            {
+                "name": "resolveBlob",
+                "parameters": [
+                    { "name": "objectId", "$ref": "Runtime.RemoteObjectId", "description": "Object id of a Blob object wrapper." }
+                ],
+                "returns": [
+                    { "name": "uuid", "type": "string", "description": "UUID of the specified Blob." }
+                ],
+                "description": "Return UUID of Blob object specified by a remote object id."
             }
         ]
     },
@@ -3436,6 +3786,11 @@
                 "id": "TargetID",
                 "type": "string"
             },
+            {
+                "id": "SessionID",
+                "type": "string",
+                "description": "Unique identifier of attached debugging session."
+            },
             {
                 "id": "BrowserContextID",
                 "type": "string"
@@ -3447,7 +3802,8 @@
                     { "name": "targetId", "$ref": "TargetID" },
                     { "name": "type", "type": "string" },
                     { "name": "title", "type": "string" },
-                    { "name": "url", "type": "string" }
+                    { "name": "url", "type": "string" },
+                    { "name": "attached", "type": "boolean", "description": "Whether the target has an attached client." }
                 ]
             },
             {
@@ -3462,7 +3818,7 @@
         "commands": [
             {
                 "name": "setDiscoverTargets",
-                "description": "Controls whether to discover available targets and notify via <code>targetCreated/targetDestroyed</code> events.",
+                "description": "Controls whether to discover available targets and notify via <code>targetCreated/targetInfoChanged/targetDestroyed</code> events.",
                 "parameters": [
                     { "name": "discover", "type": "boolean", "description": "Whether to discover available targets." }
                 ]
@@ -3490,10 +3846,11 @@
             },
             {
                 "name": "sendMessageToTarget",
-                "description": "Sends protocol message to the target with given id.",
+                "description": "Sends protocol message over session with given id.",
                 "parameters": [
-                    { "name": "targetId", "$ref": "TargetID" },
-                    { "name": "message", "type": "string" }
+                    { "name": "message", "type": "string" },
+                    { "name": "sessionId", "$ref": "SessionID", "optional": true, "description": "Identifier of the session." },
+                    { "name": "targetId", "$ref": "TargetID", "optional": true, "deprecated": true, "description": "Deprecated." }
                 ]
             },
             {
@@ -3530,14 +3887,15 @@
                     { "name": "targetId", "$ref": "TargetID" }
                 ],
                 "returns": [
-                    { "name": "success", "type": "boolean", "description": "Whether attach succeeded." }
+                    { "name": "sessionId", "$ref": "SessionID", "description": "Id assigned to the session." }
                 ]
             },
             {
                 "name": "detachFromTarget",
-                "description": "Detaches from the target with given id.",
+                "description": "Detaches session with given id.",
                 "parameters": [
-                    { "name": "targetId", "$ref": "TargetID" }
+                    { "name": "sessionId", "$ref": "SessionID", "optional": true, "description": "Session to detach." },
+                    { "name": "targetId", "$ref": "TargetID", "optional": true, "deprecated": true, "description": "Deprecated." }
                 ]
             },
             {
@@ -3586,6 +3944,13 @@
                     { "name": "targetInfo", "$ref": "TargetInfo" }
                 ]
             },
+            {
+                "name": "targetInfoChanged",
+                "description": "Issued when some information about a target has changed. This only happens between <code>targetCreated</code> and <code>targetDestroyed</code>.",
+                "parameters": [
+                    { "name": "targetInfo", "$ref": "TargetInfo" }
+                ]
+            },
             {
                 "name": "targetDestroyed",
                 "description": "Issued when a target is destroyed.",
@@ -3597,23 +3962,26 @@
                 "name": "attachedToTarget",
                 "description": "Issued when attached to target because of auto-attach or <code>attachToTarget</code> command.",
                 "parameters": [
+                    { "name": "sessionId", "$ref": "SessionID", "description": "Identifier assigned to the session used to send/receive messages." },
                     { "name": "targetInfo", "$ref": "TargetInfo" },
                     { "name": "waitingForDebugger", "type": "boolean" }
                 ]
             },
             {
                 "name": "detachedFromTarget",
-                "description": "Issued when detached from target for any reason (including <code>detachFromTarget</code> command).",
+                "description": "Issued when detached from target for any reason (including <code>detachFromTarget</code> command). Can be issued multiple times per target if multiple sessions have been attached to it.",
                 "parameters": [
-                    { "name": "targetId", "$ref": "TargetID" }
+                    { "name": "sessionId", "$ref": "SessionID", "description": "Detached session identifier." },
+                    { "name": "targetId", "$ref": "TargetID", "optional": true, "deprecated": true, "description": "Deprecated." }
                 ]
             },
             {
                 "name": "receivedMessageFromTarget",
-                "description": "Notifies about new protocol message from attached target.",
+                "description": "Notifies about a new protocol message received from the session (as reported in <code>attachedToTarget</code> event).",
                 "parameters": [
-                    { "name": "targetId", "$ref": "TargetID" },
-                    { "name": "message", "type": "string" }
+                    { "name": "sessionId", "$ref": "SessionID", "description": "Identifier of a session which sends a message." },
+                    { "name": "message", "type": "string" },
+                    { "name": "targetId", "$ref": "TargetID", "optional": true, "deprecated": true, "description": "Deprecated." }
                 ]
             }
         ]
@@ -3768,9 +4136,8 @@
                 "type": "object",
                 "experimental": true,
                 "properties": [
-                    { "name": "state", "type": "string", "enum": ["touchPressed", "touchReleased", "touchMoved", "touchStationary", "touchCancelled"], "description": "State of the touch point." },
-                    { "name": "x", "type": "integer", "description": "X coordinate of the event relative to the main frame's viewport."},
-                    { "name": "y", "type": "integer", "description": "Y coordinate of the event relative to the main frame's viewport. 0 refers to the top of the viewport and Y increases as it proceeds towards the bottom of the viewport."},
+                    { "name": "x", "type": "integer", "description": "X coordinate of the event relative to the main frame's viewport in CSS pixels."},
+                    { "name": "y", "type": "integer", "description": "Y coordinate of the event relative to the main frame's viewport in CSS pixels. 0 refers to the top of the viewport and Y increases as it proceeds towards the bottom of the viewport."},
                     { "name": "radiusX", "type": "integer", "optional": true, "description": "X radius of the touch area (default: 1)."},
                     { "name": "radiusY", "type": "integer", "optional": true, "description": "Y radius of the touch area (default: 1)."},
                     { "name": "rotationAngle", "type": "number", "optional": true, "description": "Rotation angle (default: 0.0)."},
@@ -3783,6 +4150,11 @@
                 "type": "string",
                 "experimental": true,
                 "enum": ["default", "touch", "mouse"]
+            },
+            {
+                "id": "TimeSinceEpoch",
+                "type": "number",
+                "description": "UTC time in seconds, counted from January 1, 1970."
             }
         ],
         "commands": [
@@ -3798,7 +4170,7 @@
                 "parameters": [
                     { "name": "type", "type": "string", "enum": ["keyDown", "keyUp", "rawKeyDown", "char"], "description": "Type of the key event." },
                     { "name": "modifiers", "type": "integer", "optional": true, "description": "Bit field representing pressed modifier keys. Alt=1, Ctrl=2, Meta/Command=4, Shift=8 (default: 0)." },
-                    { "name": "timestamp", "type": "number", "optional": true, "description": "Time at which the event occurred. Measured in UTC time in seconds since January 1, 1970 (default: current time)." },
+                    { "name": "timestamp", "$ref": "TimeSinceEpoch", "optional": true, "description": "Time at which the event occurred." },
                     { "name": "text", "type": "string", "optional": true, "description": "Text as generated by processing a virtual key code with a keyboard layout. Not needed for for <code>keyUp</code> and <code>rawKeyDown</code> events (default: \"\")" },
                     { "name": "unmodifiedText", "type": "string", "optional": true, "description": "Text that would have been generated by the keyboard if no modifiers were pressed (except for shift). Useful for shortcut (accelerator) key handling (default: \"\")." },
                     { "name": "keyIdentifier", "type": "string", "optional": true, "description": "Unique key identifier (e.g., 'U+0041') (default: \"\")." },
@@ -3815,13 +4187,15 @@
             {
                 "name": "dispatchMouseEvent",
                 "parameters": [
-                    { "name": "type", "type": "string", "enum": ["mousePressed", "mouseReleased", "mouseMoved"], "description": "Type of the mouse event." },
-                    { "name": "x", "type": "integer", "description": "X coordinate of the event relative to the main frame's viewport."},
-                    { "name": "y", "type": "integer", "description": "Y coordinate of the event relative to the main frame's viewport. 0 refers to the top of the viewport and Y increases as it proceeds towards the bottom of the viewport."},
+                    { "name": "type", "type": "string", "enum": ["mousePressed", "mouseReleased", "mouseMoved", "mouseWheel"], "description": "Type of the mouse event." },
+                    { "name": "x", "type": "number", "description": "X coordinate of the event relative to the main frame's viewport in CSS pixels."},
+                    { "name": "y", "type": "number", "description": "Y coordinate of the event relative to the main frame's viewport in CSS pixels. 0 refers to the top of the viewport and Y increases as it proceeds towards the bottom of the viewport."},
                     { "name": "modifiers", "type": "integer", "optional": true, "description": "Bit field representing pressed modifier keys. Alt=1, Ctrl=2, Meta/Command=4, Shift=8 (default: 0)." },
-                    { "name": "timestamp", "type": "number", "optional": true, "description": "Time at which the event occurred. Measured in UTC time in seconds since January 1, 1970 (default: current time)." },
+                    { "name": "timestamp", "$ref": "TimeSinceEpoch", "optional": true, "description": "Time at which the event occurred." },
                     { "name": "button", "type": "string", "enum": ["none", "left", "middle", "right"], "optional": true, "description": "Mouse button (default: \"none\")." },
-                    { "name": "clickCount", "type": "integer", "optional": true, "description": "Number of times the mouse button was clicked (default: 0)." }
+                    { "name": "clickCount", "type": "integer", "optional": true, "description": "Number of times the mouse button was clicked (default: 0)." },
+                    { "name": "deltaX", "type": "number", "optional": true, "description": "X delta in CSS pixels for mouse wheel event (default: 0)."},
+                    { "name": "deltaY", "type": "number", "optional": true, "description": "Y delta in CSS pixels for mouse wheel event (default: 0)."}
                 ],
                 "description": "Dispatches a mouse event to the page."
             },
@@ -3829,10 +4203,10 @@
                 "name": "dispatchTouchEvent",
                 "experimental": true,
                 "parameters": [
-                    { "name": "type", "type": "string", "enum": ["touchStart", "touchEnd", "touchMove"], "description": "Type of the touch event." },
-                    { "name": "touchPoints", "type": "array", "items": { "$ref": "TouchPoint" }, "description": "Touch points." },
+                    { "name": "type", "type": "string", "enum": ["touchStart", "touchEnd", "touchMove", "touchCancel"], "description": "Type of the touch event. TouchEnd and TouchCancel must not contain any touch points, while TouchStart and TouchMove must contains at least one." },
+                    { "name": "touchPoints", "type": "array", "items": { "$ref": "TouchPoint" }, "description": "Active touch points on the touch device. One event per any changed point (compared to previous touch event in a sequence) is generated, emulating pressing/moving/releasing points one by one." },
                     { "name": "modifiers", "type": "integer", "optional": true, "description": "Bit field representing pressed modifier keys. Alt=1, Ctrl=2, Meta/Command=4, Shift=8 (default: 0)." },
-                    { "name": "timestamp", "type": "number", "optional": true, "description": "Time at which the event occurred. Measured in UTC time in seconds since January 1, 1970 (default: current time)." }
+                    { "name": "timestamp", "$ref": "TimeSinceEpoch", "optional": true, "description": "Time at which the event occurred." }
                 ],
                 "description": "Dispatches a touch event to the page."
             },
@@ -3843,7 +4217,7 @@
                     { "name": "type", "type": "string", "enum": ["mousePressed", "mouseReleased", "mouseMoved", "mouseWheel"], "description": "Type of the mouse event." },
                     { "name": "x", "type": "integer", "description": "X coordinate of the mouse pointer in DIP."},
                     { "name": "y", "type": "integer", "description": "Y coordinate of the mouse pointer in DIP."},
-                    { "name": "timestamp", "type": "number", "description": "Time at which the event occurred. Measured in UTC time in seconds since January 1, 1970." },
+                    { "name": "timestamp", "$ref": "TimeSinceEpoch", "description": "Time at which the event occurred." },
                     { "name": "button", "type": "string", "enum": ["none", "left", "middle", "right"], "description": "Mouse button." },
                     { "name": "deltaX", "type": "number", "optional": true, "description": "X delta in DIP for mouse wheel event (default: 0)."},
                     { "name": "deltaY", "type": "number", "optional": true, "description": "Y delta in DIP for mouse wheel event (default: 0)."},
@@ -3855,8 +4229,8 @@
             {
                 "name": "synthesizePinchGesture",
                 "parameters": [
-                    { "name": "x", "type": "integer", "description": "X coordinate of the start of the gesture in CSS pixels." },
-                    { "name": "y", "type": "integer", "description": "Y coordinate of the start of the gesture in CSS pixels." },
+                    { "name": "x", "type": "number", "description": "X coordinate of the start of the gesture in CSS pixels." },
+                    { "name": "y", "type": "number", "description": "Y coordinate of the start of the gesture in CSS pixels." },
                     { "name": "scaleFactor", "type": "number", "description": "Relative scale factor after zooming (>1.0 zooms in, <1.0 zooms out)." },
                     { "name": "relativeSpeed", "type": "integer", "optional": true, "description": "Relative pointer speed in pixels per second (default: 800)." },
                     { "name": "gestureSourceType", "$ref": "GestureSourceType", "optional": true, "description": "Which type of input events to be generated (default: 'default', which queries the platform for the preferred input type)." }
@@ -3867,12 +4241,12 @@
             {
                 "name": "synthesizeScrollGesture",
                 "parameters": [
-                    { "name": "x", "type": "integer", "description": "X coordinate of the start of the gesture in CSS pixels." },
-                    { "name": "y", "type": "integer", "description": "Y coordinate of the start of the gesture in CSS pixels." },
-                    { "name": "xDistance", "type": "integer", "optional": true, "description": "The distance to scroll along the X axis (positive to scroll left)." },
-                    { "name": "yDistance", "type": "integer", "optional": true, "description": "The distance to scroll along the Y axis (positive to scroll up)." },
-                    { "name": "xOverscroll", "type": "integer", "optional": true, "description": "The number of additional pixels to scroll back along the X axis, in addition to the given distance." },
-                    { "name": "yOverscroll", "type": "integer", "optional": true, "description": "The number of additional pixels to scroll back along the Y axis, in addition to the given distance." },
+                    { "name": "x", "type": "number", "description": "X coordinate of the start of the gesture in CSS pixels." },
+                    { "name": "y", "type": "number", "description": "Y coordinate of the start of the gesture in CSS pixels." },
+                    { "name": "xDistance", "type": "number", "optional": true, "description": "The distance to scroll along the X axis (positive to scroll left)." },
+                    { "name": "yDistance", "type": "number", "optional": true, "description": "The distance to scroll along the Y axis (positive to scroll up)." },
+                    { "name": "xOverscroll", "type": "number", "optional": true, "description": "The number of additional pixels to scroll back along the X axis, in addition to the given distance." },
+                    { "name": "yOverscroll", "type": "number", "optional": true, "description": "The number of additional pixels to scroll back along the Y axis, in addition to the given distance." },
                     { "name": "preventFling", "type": "boolean", "optional": true, "description": "Prevent fling (default: true)." },
                     { "name": "speed", "type": "integer", "optional": true, "description": "Swipe speed in pixels per second (default: 800)." },
                     { "name": "gestureSourceType", "$ref": "GestureSourceType", "optional": true, "description": "Which type of input events to be generated (default: 'default', which queries the platform for the preferred input type)." },
@@ -3886,8 +4260,8 @@
             {
                 "name": "synthesizeTapGesture",
                 "parameters": [
-                    { "name": "x", "type": "integer", "description": "X coordinate of the start of the gesture in CSS pixels." },
-                    { "name": "y", "type": "integer", "description": "Y coordinate of the start of the gesture in CSS pixels." },
+                    { "name": "x", "type": "number", "description": "X coordinate of the start of the gesture in CSS pixels." },
+                    { "name": "y", "type": "number", "description": "Y coordinate of the start of the gesture in CSS pixels." },
                     { "name": "duration", "type": "integer", "optional": true, "description": "Duration between touchdown and touchup events in ms (default: 50)." },
                     { "name": "tapCount", "type": "integer", "optional": true, "description": "Number of times to perform the tap (e.g. 2 for double tap, default: 1)." },
                     { "name": "gestureSourceType", "$ref": "GestureSourceType", "optional": true, "description": "Which type of input events to be generated (default: 'default', which queries the platform for the preferred input type)." }
@@ -3922,6 +4296,17 @@
                     { "name": "type", "type": "string", "enum": ["RepaintsOnScroll", "TouchEventHandler", "WheelEventHandler"], "description": "Reason for rectangle to force scrolling on the main thread" }
                 ]
             },
+            {
+                "id": "StickyPositionConstraint",
+                "type": "object",
+                "description": "Sticky position constraints.",
+                "properties": [
+                    { "name": "stickyBoxRect", "$ref": "DOM.Rect", "description": "Layout rectangle of the sticky element before being shifted" },
+                    { "name": "containingBlockRect", "$ref": "DOM.Rect", "description": "Layout rectangle of the containing block of the sticky element" },
+                    { "name": "nearestLayerShiftingStickyBox", "$ref": "LayerId", "optional": true, "description": "The nearest sticky layer that shifts the sticky box" },
+                    { "name": "nearestLayerShiftingContainingBlock", "$ref": "LayerId", "optional": true, "description": "The nearest sticky layer that shifts the containing block" }
+                ]
+            },
             {
                 "id": "PictureTile",
                 "type": "object",
@@ -3951,7 +4336,8 @@
                     { "name": "paintCount", "type": "integer", "description": "Indicates how many time this layer has painted." },
                     { "name": "drawsContent", "type": "boolean", "description": "Indicates whether this layer hosts any content, rather than being used for transform/scrolling purposes only." },
                     { "name": "invisible", "type": "boolean", "optional": true, "description": "Set if layer is not visible." },
-                    { "name": "scrollRects", "type": "array", "items": { "$ref": "ScrollRect"}, "optional": true, "description": "Rectangles scrolling on main thread only."}
+                    { "name": "scrollRects", "type": "array", "items": { "$ref": "ScrollRect"}, "optional": true, "description": "Rectangles scrolling on main thread only."},
+                    { "name": "stickyPositionConstraint", "$ref": "StickyPositionConstraint", "optional": true, "description": "Sticky position constraint information" }
                 ]
             },
             {
@@ -4146,13 +4532,17 @@
             }
         ],
         "events": [
-            {
-                "name": "dataCollected",
-                "parameters": [
-                    { "name": "value", "type": "array", "items": { "type": "object" } }
-                ],
-                "description": "Contains an bucket of collected trace events. When tracing is stopped collected events will be send as a sequence of dataCollected events followed by tracingComplete event."
-            },
+          {
+            "name": "dataCollected",
+            "parameters": [
+              {
+                "name": "value",
+                "type": "array",
+                "items": { "type": "object" }
+              }
+            ],
+            "description": "Contains an bucket of collected trace events. When tracing is stopped collected events will be send as a sequence of dataCollected events followed by tracingComplete event."
+          },
             {
                 "name": "tracingComplete",
                 "description": "Signals that tracing is stopped and there is no trace buffers pending flush, all data were delivered via dataCollected events.",
@@ -4404,13 +4794,13 @@
             {
                 "id": "AXGlobalStates",
                 "type": "string",
-                "enum": [ "disabled", "hidden", "hiddenRoot", "invalid", "keyshortcuts", "roledescription" ],
+                "enum": [ "busy", "disabled", "hidden", "hiddenRoot", "invalid", "keyshortcuts", "roledescription" ],
                 "description": "States which apply to every AX node."
             },
             {
                 "id": "AXLiveRegionAttributes",
                 "type": "string",
-                "enum": [ "live", "atomic", "relevant", "busy", "root" ],
+                "enum": [ "live", "atomic", "relevant", "root" ],
                 "description": "Attributes which apply to nodes in live regions."
             },
             {
@@ -4481,9 +4871,19 @@
                     "websql",
                     "service_workers",
                     "cache_storage",
-                    "all"
+                    "all",
+                    "other"
                 ],
                 "description": "Enum of possible storage types."
+            },
+            {
+                "id": "UsageForType",
+                "type": "object",
+                "description": "Usage for a storage type.",
+                "properties": [
+                    { "name": "storageType", "$ref": "StorageType", "description": "Name of storage type." },
+                    { "name": "usage", "type": "number", "description": "Storage usage (bytes)." }
+                ]
             }
         ],
         "commands": [
@@ -4494,6 +4894,49 @@
                     { "name": "storageTypes", "type": "string", "description": "Comma separated origin names." }
                 ],
                 "description": "Clears storage for origin."
+            },
+            {
+                "name": "getUsageAndQuota",
+                "parameters": [
+                    { "name": "origin", "type": "string", "description": "Security origin." }
+                ],
+                "returns": [
+                    { "name": "usage", "type": "number", "description": "Storage usage (bytes)." },
+                    { "name": "quota", "type": "number", "description": "Storage quota (bytes)." },
+                    { "name": "usageBreakdown", "type": "array", "items": { "$ref": "UsageForType" }, "description": "Storage usage per type (bytes)." }
+                ],
+                "description": "Returns usage and quota in bytes."
+            },
+            {
+                "name": "trackCacheStorageForOrigin",
+                "parameters": [
+                    { "name": "origin", "type": "string", "description": "Security origin." }
+                ],
+                "description": "Registers origin to be notified when an update occurs to its cache storage list."
+            },
+            {
+                "name": "untrackCacheStorageForOrigin",
+                "parameters": [
+                    { "name": "origin", "type": "string", "description": "Security origin." }
+                ],
+                "description": "Unregisters origin from receiving notifications for cache storage."
+            }
+        ],
+        "events": [
+            {
+                "name": "cacheStorageListUpdated",
+                "parameters": [
+                    { "name": "origin", "type": "string", "description": "Origin to update." }
+                ],
+                "description": "A cache has been added/deleted."
+            },
+            {
+                "name": "cacheStorageContentUpdated",
+                "parameters": [
+                    { "name": "origin", "type": "string", "description": "Origin to update." },
+                    { "name": "cacheName", "type": "string", "description": "Name of cache in origin." }
+                ],
+                "description": "A cache's contents have been modified."
             }
         ]
     },
@@ -4676,6 +5119,17 @@
                     { "name": "bounds", "$ref": "Bounds", "description": "Bounds information of the window. When window state is 'minimized', the restored window position and size are returned." }
                 ]
             },
+            {
+                "name": "getVersion",
+                "description": "Returns version information.",
+                "returns": [
+                    { "name": "protocolVersion", "type": "string", "description": "Protocol version." },
+                    { "name": "product", "type": "string", "description": "Product name." },
+                    { "name": "revision", "type": "string", "description": "Product revision." },
+                    { "name": "userAgent", "type": "string", "description": "User-Agent." },
+                    { "name": "jsVersion", "type": "string", "description": "V8 version." }
+                ]
+            },
             {
                 "name": "setWindowBounds",
                 "description": "Set position and/or size of the browser window.",
diff --git a/source/ProtocolGenerator/js_protocol.json b/source/ProtocolGenerator/js_protocol.json
index 62545cd..3aa9492 100644
--- a/source/ProtocolGenerator/js_protocol.json
+++ b/source/ProtocolGenerator/js_protocol.json
@@ -140,7 +140,7 @@
                 "type": "object",
                 "description": "Represents function call argument. Either remote object id <code>objectId</code>, primitive <code>value</code>, unserializable primitive value or neither of (for undefined) them should be specified.",
                 "properties": [
-                    { "name": "value", "type": "any", "optional": true, "description": "Primitive value." },
+                    { "name": "value", "type": "any", "optional": true, "description": "Primitive value or serializable javascript object." },
                     { "name": "unserializableValue", "$ref": "UnserializableValue", "optional": true, "description": "Primitive value which can not be JSON-stringified." },
                     { "name": "objectId", "$ref": "RemoteObjectId", "optional": true, "description": "Remote object handle." }
                 ]
@@ -218,7 +218,7 @@
                     { "name": "returnByValue", "type": "boolean", "optional": true, "description": "Whether the result is expected to be a JSON object that should be sent by value." },
                     { "name": "generatePreview", "type": "boolean", "optional": true, "experimental": true, "description": "Whether preview should be generated for the result." },
                     { "name": "userGesture", "type": "boolean", "optional": true, "experimental": true, "description": "Whether execution should be treated as initiated by user in the UI." },
-                    { "name": "awaitPromise", "type": "boolean", "optional":true, "description": "Whether execution should wait for promise to be resolved. If the result of evaluation is not a Promise, it's considered to be an error." }
+                    { "name": "awaitPromise", "type": "boolean", "optional":true, "description": "Whether execution should <code>await</code> for resulting value and return once awaited promise is resolved." }
                 ],
                 "returns": [
                     { "name": "result", "$ref": "RemoteObject", "description": "Evaluation result." },
@@ -249,7 +249,7 @@
                     { "name": "returnByValue", "type": "boolean", "optional": true, "description": "Whether the result is expected to be a JSON object which should be sent by value." },
                     { "name": "generatePreview", "type": "boolean", "optional": true, "experimental": true, "description": "Whether preview should be generated for the result." },
                     { "name": "userGesture", "type": "boolean", "optional": true, "experimental": true, "description": "Whether execution should be treated as initiated by user in the UI." },
-                    { "name": "awaitPromise", "type": "boolean", "optional":true, "description": "Whether execution should wait for promise to be resolved. If the result of evaluation is not a Promise, it's considered to be an error." }
+                    { "name": "awaitPromise", "type": "boolean", "optional":true, "description": "Whether execution should <code>await</code> for resulting value and return once awaited promise is resolved." }
                 ],
                 "returns": [
                     { "name": "result", "$ref": "RemoteObject", "description": "Call result." },
@@ -336,13 +336,23 @@
                     { "name": "includeCommandLineAPI", "type": "boolean", "optional": true, "description": "Determines whether Command Line API should be available during the evaluation." },
                     { "name": "returnByValue", "type": "boolean", "optional": true, "description": "Whether the result is expected to be a JSON object which should be sent by value." },
                     { "name": "generatePreview", "type": "boolean", "optional": true, "description": "Whether preview should be generated for the result." },
-                    { "name": "awaitPromise", "type": "boolean", "optional": true, "description": "Whether execution should wait for promise to be resolved. If the result of evaluation is not a Promise, it's considered to be an error." }
+                    { "name": "awaitPromise", "type": "boolean", "optional": true, "description": "Whether execution should <code>await</code> for resulting value and return once awaited promise is resolved." }
                 ],
                 "returns": [
                     { "name": "result", "$ref": "RemoteObject", "description": "Run result." },
                     { "name": "exceptionDetails", "$ref": "ExceptionDetails", "optional": true, "description": "Exception details."}
                 ],
                 "description": "Runs script with given id in a given context."
+            },
+            {
+                "name": "queryObjects",
+                "parameters": [
+                    { "name": "prototypeObjectId", "$ref": "RemoteObjectId", "description": "Identifier of the prototype to return objects for." }
+                ],
+                "returns": [
+                    { "name": "objects", "$ref": "RemoteObject", "description": "Array with objects." }
+                ],
+                "experimental": true
             }
         ],
         "events": [
@@ -388,7 +398,8 @@
                     { "name": "args", "type": "array", "items": { "$ref": "RemoteObject" }, "description": "Call arguments." },
                     { "name": "executionContextId", "$ref": "ExecutionContextId", "description": "Identifier of the context where the call was made." },
                     { "name": "timestamp", "$ref": "Timestamp", "description": "Call timestamp." },
-                    { "name": "stackTrace", "$ref": "StackTrace", "optional": true, "description": "Stack trace captured when the call was made." }
+                    { "name": "stackTrace", "$ref": "StackTrace", "optional": true, "description": "Stack trace captured when the call was made." },
+                    { "name": "context", "type": "string", "optional": true, "experimental": true, "description": "Console context descriptor for calls on non-default console context (not console.*): 'anonymous#unique-logger-id' for call on unnamed context, 'name#unique-logger-id' for call on named context." }
                 ]
             },
             {
@@ -862,7 +873,8 @@
                 "description": "Coverage data for a JavaScript function.",
                 "properties": [
                     { "name": "functionName", "type": "string", "description": "JavaScript function name." },
-                    { "name": "ranges", "type": "array", "items": { "$ref": "CoverageRange" }, "description": "Source ranges inside the function with coverage data." }
+                    { "name": "ranges", "type": "array", "items": { "$ref": "CoverageRange" }, "description": "Source ranges inside the function with coverage data." },
+                    { "name": "isBlockCoverage", "type": "boolean", "description": "Whether coverage data for this function has block granularity." }
                 ],
                 "experimental": true
             },
@@ -904,7 +916,8 @@
             {
                 "name": "startPreciseCoverage",
                 "parameters": [
-                    { "name": "callCount", "type": "boolean", "optional": true, "description": "Collect accurate call counts beyond simple 'covered' or 'not covered'." }
+                    { "name": "callCount", "type": "boolean", "optional": true, "description": "Collect accurate call counts beyond simple 'covered' or 'not covered'." },
+                    { "name": "detailed", "type": "boolean", "optional": true, "description": "Collect block-based coverage." }
                 ],
                 "description": "Enable precise code coverage. Coverage data for JavaScript executed before enabling precise code coverage may be incomplete. Enabling prevents running optimized code and resets execution counters.",
                 "experimental": true
@@ -1066,14 +1079,20 @@
                     { "name": "finished", "type": "boolean", "optional": true }
                 ]
             },
-            {
+          {
+            "name": "lastSeenObjectId",
+            "description": "If heap objects tracking has been started then backend regularly sends a current value for last seen object id and corresponding timestamp. If the were changes in the heap since last event then one or more heapStatsUpdate events will be sent before a new lastSeenObjectId event.",
+            "parameters": [
+              {
                 "name": "lastSeenObjectId",
-                "description": "If heap objects tracking has been started then backend regularly sends a current value for last seen object id and corresponding timestamp. If the were changes in the heap since last event then one or more heapStatsUpdate events will be sent before a new lastSeenObjectId event.",
-                "parameters": [
-                    { "name": "lastSeenObjectId", "type": "integer" },
-                    { "name": "timestamp", "type": "number" }
-                ]
-            },
+                "type": "integer"
+              },
+              {
+                "name": "timestamp",
+                "type": "number"
+              }
+            ]
+          },
             {
                 "name": "heapStatsUpdate",
                 "description": "If heap objects tracking has been started then backend may send update for one or more fragments",
diff --git a/source/Sample/Program.cs b/source/Sample/Program.cs
index 7b3761d..fcb1eea 100644
--- a/source/Sample/Program.cs
+++ b/source/Sample/Program.cs
@@ -4,7 +4,6 @@ using System.IO;
 using System.Linq;
 using System.Threading;
 using MasterDevs.ChromeDevTools.Protocol.Chrome.DOM;
-using MasterDevs.ChromeDevTools.Protocol.Chrome.Emulation;
 using Task = System.Threading.Tasks.Task;
 
 namespace MasterDevs.ChromeDevTools.Sample
@@ -33,10 +32,11 @@ namespace MasterDevs.ChromeDevTools.Sample
                     //
                     // Here we are sending a commands to tell chrome to set the viewport size 
                     // and navigate to the specified URL
-                    await chromeSession.SendAsync(new SetVisibleSizeCommand
+                    await chromeSession.SendAsync(new SetDeviceMetricsOverrideCommand
                     {
                         Width = ViewPortWidth,
-                        Height = ViewPortHeight
+                        Height = ViewPortHeight,
+                        Scale = 1
                     });
 
                     var navigateResponse = await chromeSession.SendAsync(new NavigateCommand
@@ -67,7 +67,12 @@ namespace MasterDevs.ChromeDevTools.Sample
                                 })).Result.NodeId;
                             var height = (await chromeSession.SendAsync(new GetBoxModelCommand {NodeId = bodyNodeId})).Result.Model.Height;
 
-                            await chromeSession.SendAsync(new SetVisibleSizeCommand {Width = ViewPortWidth, Height = height});
+                            await chromeSession.SendAsync(new SetDeviceMetricsOverrideCommand
+                            {
+                                Width = ViewPortWidth,
+                                Height = height,
+                                Scale = 1
+                            });
 
                             Console.WriteLine("Taking screenshot");
                             var screenshot = await chromeSession.SendAsync(new CaptureScreenshotCommand {Format = "png"});
-- 
GitLab