Because lots of code are similar or same in them, we need a base class to handle all the same code.
Created attachment 174129 [details] Patch
Created attachment 174132 [details] Patch
Comment on attachment 174132 [details] Patch hold on , remove review tags.
This has already been done as part of r150434, see https://bugs.webkit.org/show_bug.cgi?id=116448