'Merges the non-referential state of the provided AppInclude.
That is, builtins and includes directives are not preserved, but
any static objects are copied into an aggregate AppInclude object that
preserves the directives of both provided AppInclude objects.
Note that appinclude_one is mutated to be the merged result in this process.
Args:
appinclude_one: object one to merge
appinclude_two: object two to merge
Returns:
AppInclude object that is the result of merging the static directives of
appinclude_one and appinclude_two. I.e., <appinclude_one> after the
mutations are complete.'

@classmethod
def MergeAppIncludes(cls, appinclude_one, appinclude_two):

    if ((not appinclude_one) or (not appinclude_two)):
        return (appinclude_one or appinclude_two)
    if appinclude_one.handlers:
        if appinclude_two.handlers:
            appinclude_one.handlers.extend(appinclude_two.handlers)
    else:
        appinclude_one.handlers = appinclude_two.handlers
    return cls._CommonMergeOps(appinclude_one, appinclude_two)
