'Construct a PurePath from one or several strings and or existing
PurePath objects.  The strings and path objects are combined so as
to yield a canonicalized path, which is incorporated into the
new PurePath object.'

def __new__(cls, *args):

    if (cls is PurePath):
        cls = (PureWindowsPath if (os.name == 'nt') else PurePosixPath)
    return cls._from_parts(args)
